*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--font-scale: 1;--bg: #ffffff;--text: #1a1a1a;--text-secondary: #444444;--accent: #0055aa;--accent-hover: #003d80;--accent-text: #ffffff;--surface: #f5f5f5;--surface-hover: #e8f0fe;--border: #767676;--border-strong: #333333;--focus-ring: #0055aa;--input-bg: #ffffff;--input-border: #333333;--instruction-bg: #f5f5f5;--instruction-border: #0055aa;--success: #006600;--error: #aa0000;--progress-bg: #e0e0e0;--progress-fill: #0055aa;--progress-text: #ffffff;--progress-text-outline: #000000;--warning: #b45309;--warning-text: #92400e;--cad-viewport-bg: #1a1a2e;--font-family: -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;font-size:calc(16px * var(--font-scale, 1));--font-xs: .75rem;--font-sm: .875rem;--font-md: 1rem;--font-lg: 1.125rem;--font-xl: 1.25rem;--font-2xl: 1.5rem;--font-3xl: 2rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 2.5rem;--space-8: 3rem;--space-10: 4rem;--space-12: 5rem;--space-16: 6rem;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .08);--shadow-md: 0 2px 8px rgba(0, 0, 0, .12);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .16);--shadow-xl: 0 8px 32px rgba(0, 0, 0, .24);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--z-tooltip: 600;--radius-none: 0;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--border-width: 1px;--border-width-strong: 2px;--depth-strength: .3;--depth-shadow: rgba(0, 0, 0, .12);--depth-shadow-soft: rgba(0, 0, 0, .06);--depth-highlight: rgba(255, 255, 255, .08);--depth-face-light: rgba(255, 255, 255, .05);--depth-face-dark: rgba(0, 0, 0, .04);--depth-ledge: rgba(0, 0, 0, .1);--depth-rim-light: rgba(255, 255, 255, .06);--glow-strength: 0;--gradient-strength: 0;--glass-strength: 0;--text-muted: var(--text-secondary);--text-body: var(--font-lg);--text-heading-1: var(--font-2xl);--text-heading-2: var(--font-xl);--text-heading-3: var(--font-lg);--padding-btn: var(--space-3) var(--space-5);--padding-input: var(--space-2) var(--space-3);--padding-card: var(--space-5);--margin-section: var(--space-5);--margin-element: var(--space-3);--table-padding: var(--space-3)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}button,input,select,textarea{font-family:inherit;color:var(--text);background:var(--input-bg);border:var(--border-width) solid var(--input-border);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);font-size:inherit}button{background:var(--surface);border-color:var(--border);cursor:pointer}input[type=color]{background:transparent;border:none;padding:0}input[type=checkbox],input[type=radio]{background:revert;border:revert;border-radius:revert;padding:revert}input[type=range]{background:revert;border:revert;padding:revert}input[type=hidden]{display:none}body{font-family:var(--font-family);font-size:var(--text-body);line-height:1.6;letter-spacing:.12em;word-spacing:.16em;color:var(--text);background:linear-gradient(175deg,var(--bg) 0%,var(--mix-bg-accent-4) 50%,var(--mix-bg-surface-8) 100%);min-height:100vh;padding:0 var(--space-6) var(--space-6) var(--space-6);max-width:60rem;margin:0 auto}body.dashboard-full-width,body.tool-full-width{max-width:100%;padding:0 var(--space-4) var(--space-6) var(--space-4)}h1{font-size:var(--text-heading-1);margin:var(--space-4) 0 var(--space-3);color:var(--text);letter-spacing:normal}h2{font-size:var(--text-heading-2);margin:var(--space-3) 0 var(--space-2);color:var(--text);letter-spacing:normal}h3{font-size:var(--text-heading-3);margin:var(--space-2) 0 var(--space-2);color:var(--text);letter-spacing:normal}p{margin-bottom:2em}p:last-child{margin-bottom:0}@keyframes focus-glow{0%,to{box-shadow:0 0 0 2px var(--focus-ring),0 0 8px var(--focus-ring)}50%{box-shadow:0 0 0 2px var(--focus-ring),0 0 14px var(--focus-ring)}}a:focus,a:focus-visible,button:focus,button:focus-visible,input:focus,input:focus-visible,select:focus,select:focus-visible,textarea:focus,textarea:focus-visible,[tabindex]:focus,[tabindex]:focus-visible,summary:focus,summary:focus-visible,details:focus-within>summary{outline:3px solid var(--focus-ring);outline-offset:2px}*:focus-visible{animation:focus-glow 2s ease-in-out infinite}[hidden]{display:none!important}[aria-invalid=true]{border-color:var(--error)!important;box-shadow:0 0 0 1px var(--error)}fieldset{border:var(--border-width-strong) solid var(--border-strong);border-radius:var(--radius-md);padding:var(--padding-card);margin-bottom:var(--space-5)}legend{font-weight:600;font-size:var(--font-lg);padding:0 var(--space-2);color:var(--text)}.braille-mode{font-size:1.875rem;line-height:1.4;word-break:break-word;overflow-wrap:break-word}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}@media(forced-colors:active){:root{--focus-ring: Highlight;--accent: LinkText;--accent-text: Canvas;--border: ButtonBorder;--border-strong: CanvasText;--text: CanvasText;--text-secondary: CanvasText;--bg: Canvas;--surface: Canvas;--surface-hover: Highlight;--input-bg: Field;--input-border: FieldText;--success: CanvasText;--error: CanvasText}button,[role=button],a,input,select,textarea{border:1px solid ButtonText!important}:focus-visible{outline:2px solid Highlight!important;outline-offset:2px!important}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:1!important;border-style:dashed!important;color:GrayText!important}svg text{fill:CanvasText!important}svg line,svg path,svg rect,svg circle,svg ellipse,svg polygon{stroke:CanvasText!important}}@media(-ms-high-contrast:active){:root{--focus-ring: windowText;--accent: highlight;--text: windowText;--bg: window;--border: windowText}}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.\!block{display:block!important}.block{display:block}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.inline-grid{display:inline-grid}.contents{display:contents}.hidden{display:none}.size-1{width:.25rem;height:.25rem}.w-full{width:100%}.flex-1{flex:1 1 0%}.flex-shrink,.shrink{flex-shrink:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.border{border-width:1px}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.\!outline{outline-style:solid!important}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);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)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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)}.grayscale{--tw-grayscale: grayscale(100%);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)}.invert{--tw-invert: invert(100%);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)}.sepia{--tw-sepia: sepia(100%);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)}.\!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)!important}.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,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[out\:json\]{out:json}.\[timeout\:25\]{timeout:25}.\[timeout\:30\]{timeout:30}.ui-btn,.ui-btn-primary,.ui-btn-danger,.ui-btn-danger-fill,.ui-btn-ghost,.ui-btn-muted{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:inherit;font-weight:600;border-radius:var(--radius-md);cursor:pointer;text-decoration:none;white-space:nowrap;border:var(--border-width-strong) solid transparent;transition:background .12s,border-color .12s,color .12s,box-shadow .12s}.ui-btn:focus-visible,.ui-btn-primary:focus-visible,.ui-btn-danger:focus-visible,.ui-btn-danger-fill:focus-visible,.ui-btn-ghost:focus-visible,.ui-btn-muted:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-btn:disabled,.ui-btn[aria-disabled=true],.ui-btn-primary:disabled,.ui-btn-primary[aria-disabled=true],.ui-btn-danger:disabled,.ui-btn-danger[aria-disabled=true],.ui-btn-danger-fill:disabled,.ui-btn-ghost:disabled,.ui-btn-muted:disabled{opacity:.45;cursor:not-allowed}.ui-btn{padding:var(--space-2) var(--space-4);font-size:var(--font-sm);color:var(--accent);background:var(--bg);border-color:var(--accent);min-height:36px}.ui-btn:hover:not(:disabled){background:var(--surface-hover);box-shadow:var(--shadow-xs)}.ui-btn[aria-pressed=true],.ui-btn.ui-btn-active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.ui-btn[aria-pressed=true]:hover:not(:disabled),.ui-btn.ui-btn-active:hover:not(:disabled){background:var(--accent-hover);color:var(--accent-text);border-color:var(--accent-hover)}.ui-btn-primary{padding:var(--space-2) var(--space-4);font-size:var(--font-sm);color:var(--accent-text);background:var(--accent);border-color:var(--accent);min-height:36px}.ui-btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:var(--shadow-sm)}.ui-btn-danger{padding:var(--space-2) var(--space-4);font-size:var(--font-sm);color:var(--error);background:var(--bg);border-color:var(--error);min-height:36px}.ui-btn-danger:hover:not(:disabled){background:var(--mix-error-bg-8)}.ui-btn-danger-fill{padding:var(--space-2) var(--space-4);font-size:var(--font-sm);color:var(--accent-text);background:var(--error);border-color:var(--error);min-height:36px}.ui-btn-danger-fill:hover:not(:disabled){filter:brightness(.88)}.ui-btn-ghost{padding:var(--space-2) var(--space-3);font-size:var(--font-sm);color:var(--accent);background:transparent;border-color:transparent;min-height:36px}.ui-btn-ghost:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border)}.ui-btn-muted{padding:var(--space-2) var(--space-3);font-size:var(--font-sm);color:var(--text-secondary);background:var(--surface);border-color:var(--border);min-height:36px}.ui-btn-muted:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent);color:var(--accent)}.ui-btn-fw,.ui-btn.ui-btn-fw,.ui-btn-primary.ui-btn-fw{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-btn-flex{flex:1}.ui-btn-icon{padding:var(--space-2);min-width:36px;min-height:36px;aspect-ratio:1}.ui-btn-sm,.ui-btn.ui-btn-sm,.ui-btn-primary.ui-btn-sm,.ui-btn-danger.ui-btn-sm,.ui-btn-ghost.ui-btn-sm,.ui-btn-muted.ui-btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--font-sm);min-height:36px;font-weight:500}.ui-btn-xs,.ui-btn.ui-btn-xs{padding:2px var(--space-2);font-size:var(--font-xs);min-height:28px;font-weight:500}.ui-card-btn .ui-badge{white-space:normal;word-break:break-word;text-align:center;line-height:1.3}.ui-card-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-family:inherit;font-size:var(--font-xs);font-weight:500;color:var(--text);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);cursor:pointer;text-align:center;white-space:normal;word-break:break-word;overflow:hidden;transition:background .12s,border-color .12s,box-shadow .12s}.ui-card-btn .ui-text-xs{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-card-btn .ui-badge{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.6rem;letter-spacing:-.02em}.ui-card-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent);box-shadow:var(--shadow-xs)}.ui-card-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-card-btn:disabled{opacity:.45;cursor:not-allowed}.ui-card-btn[data-selected=true]{background:var(--mix-accent-bg-10);border-color:var(--accent);color:var(--accent);box-shadow:var(--sm-card-shadow, var(--shadow-sm))}.ui-card-btn .ui-display-value-sm{color:var(--sm-c, inherit)}.ui-btn-compact{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2);font-size:var(--font-sm);font-family:inherit;font-weight:500;color:var(--text);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);cursor:pointer;min-height:40px;min-width:40px;transition:background .1s,border-color .1s,box-shadow .1s}.ui-btn-compact:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent);box-shadow:var(--shadow-xs)}.ui-btn-compact:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-btn-compact:disabled{opacity:.45;cursor:not-allowed}.ui-btn-compact[aria-pressed=true],.ui-btn-compact.active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.ui-btn-compact-accent{background:var(--mix-accent-bg-10);border-color:var(--alpha-accent-40);color:var(--accent);font-weight:600}.ui-btn-compact-accent:hover:not(:disabled){background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.ui-btn-compact-danger{background:var(--mix-error-bg-10);border-color:var(--alpha-error-40);color:var(--error);font-weight:700}.ui-btn-compact-danger:hover:not(:disabled){background:var(--error);color:var(--accent-text);border-color:var(--error)}.ui-input{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--font-sm);font-family:inherit;color:var(--text);background:var(--input-bg);border:var(--border-width-strong) solid var(--input-border);border-radius:var(--radius-md);min-height:36px;transition:border-color .12s,box-shadow .12s}.ui-input:focus{outline:3px solid var(--focus-ring);outline-offset:2px;border-color:var(--accent);box-shadow:0 0 0 3px var(--alpha-accent-15)}.ui-input:hover:not(:focus){border-color:var(--border-strong)}.ui-input-sm{padding:var(--space-1) var(--space-2);font-size:var(--font-xs);min-height:28px}.ui-input-narrow{width:auto;min-width:6rem}.ui-input-mono{font-family:monospace}.ui-input-number{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--font-sm);font-family:inherit;color:var(--text);background:var(--input-bg);border:var(--border-width-strong) solid var(--input-border);border-radius:var(--radius-md);min-height:36px;text-align:right}.ui-input-number:focus{outline:3px solid var(--focus-ring);outline-offset:2px;border-color:var(--accent)}.ui-select,.ui-select-sm{width:100%;padding:var(--space-2) var(--space-5) var(--space-2) var(--space-3);font-size:var(--font-sm);font-family:inherit;color:var(--text);background:var(--input-bg);border:var(--border-width-strong) solid var(--input-border);border-radius:var(--radius-md);min-height:36px;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:var(--select-arrow);background-repeat:no-repeat;background-position:right var(--space-3) center;transition:border-color .12s}.ui-select:focus,.ui-select-sm:focus{outline:3px solid var(--focus-ring);outline-offset:2px;border-color:var(--accent)}.ui-select:hover:not(:focus),.ui-select-sm:hover:not(:focus){border-color:var(--border-strong)}.ui-select option,.ui-select-sm option{background:var(--input-bg);color:var(--text)}.ui-select-sm{padding:var(--space-1) var(--space-5) var(--space-1) var(--space-2);font-size:var(--font-xs);min-height:44px;width:auto}.ui-select-auto{width:auto;min-width:7rem}.ui-textarea{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--font-sm);font-family:inherit;color:var(--text);background:var(--input-bg);border:var(--border-width-strong) solid var(--input-border);border-radius:var(--radius-md);min-height:100px;resize:vertical;line-height:1.5;transition:border-color .12s}.ui-textarea:focus{outline:3px solid var(--focus-ring);outline-offset:2px;border-color:var(--accent)}.ui-textarea-sm{min-height:64px;font-size:var(--font-xs)}.ui-textarea-mono{font-family:monospace;font-size:var(--font-sm)}.ui-textarea-lg{min-height:180px}.ui-range{width:100%;accent-color:var(--accent);cursor:pointer;display:block}.ui-range-full{width:100%;accent-color:var(--accent);display:block}.ui-range-group{display:flex;flex-direction:column;gap:var(--space-1)}.ui-range-row{display:flex;align-items:center;gap:var(--space-2)}.ui-range-row .ui-range{flex:1;min-width:0}.ui-label{display:block;font-size:var(--font-sm);font-weight:600;color:var(--text);margin-bottom:var(--space-1)}.ui-label-sm{font-size:var(--font-xs);font-weight:600;color:var(--text-secondary)}.ui-label-inline{font-size:var(--font-sm);font-weight:500;color:var(--text);white-space:nowrap}.ui-label-group{display:flex;flex-direction:column;gap:var(--space-1)}.ui-caption{font-size:var(--font-xs);color:var(--text-secondary);line-height:1.4}.ui-caption-mono{font-size:var(--font-xs);color:var(--text-secondary);font-family:monospace}.ui-badge{display:inline-flex;align-items:center;padding:2px var(--space-2);font-size:var(--font-xs);font-weight:600;border-radius:var(--radius-full);white-space:nowrap;background:var(--surface);color:var(--text-secondary);border:var(--border-width) solid var(--border)}.ui-badge-accent{background:var(--mix-accent-bg-12);color:var(--accent);border-color:var(--alpha-accent-30)}.ui-badge-success{background:var(--mix-success-bg-12);color:var(--success);border-color:var(--alpha-success-30)}.ui-badge-error{background:var(--mix-error-bg-12);color:var(--error);border-color:var(--alpha-error-30)}.ui-badge-warning{background:var(--mix-warning-bg-12);color:var(--warning-text);border-color:var(--alpha-warning-30)}.ui-badge-muted{background:var(--surface);color:var(--text-secondary);border-color:var(--border)}.ui-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--border);margin-bottom:var(--space-3)}.ui-toolbar-pinned{position:sticky;top:0;z-index:var(--z-sticky);background:var(--bg)}.ui-toolbar .ui-btn,.ui-toolbar .ui-btn-primary,.ui-toolbar .ui-btn-muted{padding:var(--space-1) var(--space-2);font-size:var(--font-sm);min-height:44px;min-width:44px;white-space:nowrap}.ui-toolbar .ui-select,.ui-toolbar .ui-select-auto{font-size:var(--font-sm);padding:var(--space-1) var(--space-5) var(--space-1) var(--space-2);min-height:44px}.ui-toolbar-sm{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap;padding:var(--space-1) 0;margin-bottom:var(--space-2)}.ui-toolbar-flush{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-2)}.ui-separator{height:var(--border-width);background:var(--border);border:none;margin:var(--space-3) 0}.ui-separator-v{width:var(--border-width);background:var(--border);align-self:stretch;margin:0 var(--space-1)}.ui-panel{background:var(--bg);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.ui-detail-panel{flex:1;display:flex;flex-direction:column;gap:var(--space-4);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:var(--space-4);min-height:0}.ui-panel-inset{background:linear-gradient(180deg,var(--surface) 0%,var(--mix-surface-bg-97) 100%);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);transition:transform .15s ease,box-shadow .15s ease}.ui-panel-accent{background:var(--bg);border:var(--border-width-strong) solid var(--accent);border-radius:var(--radius-lg);padding:var(--space-4)}.ui-panel-success{background:var(--mix-success-bg-6);border:var(--border-width) solid var(--alpha-success-35);border-radius:var(--radius-md);padding:var(--space-3)}.ui-panel-error{background:var(--mix-error-bg-6);border:var(--border-width) solid var(--alpha-error-35);border-radius:var(--radius-md);padding:var(--space-3)}.ui-card{background:var(--bg);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);transition:box-shadow .15s,border-color .15s}.ui-card:hover{box-shadow:var(--shadow-md);border-color:var(--mix-accent-border-50)}.ui-stat-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.ui-stat-label{font-size:var(--font-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.ui-stat-value{font-size:var(--font-xl);font-weight:700;color:var(--accent);line-height:1.2}.ui-stat-sub{font-size:var(--font-xs);color:var(--text-secondary)}.ui-display-box{background:var(--surface);border:var(--border-width-strong) solid var(--border-strong);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-2);text-align:right;font-family:monospace}.ui-display-expr{font-size:var(--font-xs);color:var(--text-secondary);min-height:1.2em;font-family:monospace}.ui-display-value{font-size:var(--font-2xl);font-weight:700;color:var(--text);font-family:monospace;word-break:break-all}.ui-display-value-sm{font-size:var(--font-xl)}.ui-display-value-lg{font-size:3rem}.ui-info-box{padding:var(--space-3) var(--space-4);background:var(--instruction-bg);border-left:3px solid var(--instruction-border);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:var(--font-sm);color:var(--text-secondary);line-height:1.5}.ui-info-box-accent{padding:var(--space-3) var(--space-4);background:var(--mix-accent-bg-6);border-left:3px solid var(--accent);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:var(--font-sm);color:var(--text)}.ui-sidebar{display:flex;flex-direction:column;gap:var(--space-3);width:220px;min-width:180px;flex-shrink:0;background:var(--surface);border-right:var(--border-width) solid var(--border);padding:var(--space-3);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;transition:width .2s,min-width .2s,padding .2s}.ui-sidebar[data-collapsed=true]{width:36px;min-width:36px;padding:var(--space-1);overflow:hidden}.ui-sidebar-toggle{align-self:flex-end;flex-shrink:0}.ui-sidebar-lg{display:flex;flex-direction:column;gap:var(--space-3);width:280px;min-width:240px;flex-shrink:0;background:var(--surface);border-right:var(--border-width) solid var(--border);padding:var(--space-3);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;transition:width .2s,min-width .2s,padding .2s}.ui-sidebar-lg[data-collapsed=true]{width:36px;min-width:36px;padding:var(--space-1);overflow:hidden}.ui-sidebar-section{display:flex;flex-direction:column;gap:var(--space-2)}.ui-sidebar-h3{font-size:var(--font-xs);font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-1)}.ui-sidebar-label{font-size:var(--font-xs);color:var(--text-secondary);font-weight:500}.ui-empty{text-align:center;padding:var(--space-6) var(--space-4);color:var(--text-secondary);font-size:var(--font-sm)}.ui-empty-icon{font-size:2.5rem;margin-bottom:var(--space-2);opacity:.6}.ui-scroll-area{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;min-height:0}.ui-scroll-area-sm{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;max-height:280px;min-height:0}.ui-scroll-x{overflow-x:auto;overscroll-behavior-x:contain}.ui-section-h2{font-size:var(--font-lg);font-weight:700;color:var(--text);margin:var(--space-4) 0 var(--space-2)}.ui-section-h3{font-size:var(--font-md);font-weight:600;color:var(--text);margin:var(--space-3) 0 var(--space-2)}.ui-section-h4{font-size:var(--font-sm);font-weight:600;color:var(--text);margin:var(--space-2) 0 var(--space-1)}.ui-text-muted{color:var(--text-secondary);font-size:var(--font-sm)}.ui-text-accent{color:var(--accent);font-weight:600}.ui-text-success{color:var(--success);font-weight:600}.ui-text-error{color:var(--error);font-weight:600}.ui-text-secondary{color:var(--text-secondary)}.ui-text-mono{font-family:monospace}.ui-text-sm{font-size:var(--font-sm)}.ui-text-xs{font-size:var(--font-xs)}.ui-text-lg{font-size:var(--font-lg);font-weight:600}.ui-text-center{text-align:center}.ui-text-right{text-align:right}.ui-text-bold{font-weight:700}.ui-text-nowrap{white-space:nowrap}.ui-p-2{padding:var(--space-2)}.viz-embed-container{min-height:200px}.text-pill-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:2px;min-height:2rem;padding:4px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);line-height:1.6}.text-pill-input{border:none;background:transparent;outline:none;padding:2px 4px;font-size:inherit;min-width:0;flex-shrink:1}.text-pill-input:focus-visible{box-shadow:0 0 0 2px var(--accent);border-radius:var(--radius)}.text-pill-var-wrap{position:relative;display:inline-flex}.text-pill-var{display:inline-flex;align-items:center;gap:3px;padding:1px 8px;border-radius:10px;cursor:pointer;background:var(--accent);color:#fff;font-family:monospace;font-size:var(--font-sm);font-weight:700;border:1px solid transparent;outline:none;white-space:nowrap}.text-pill-var:focus{box-shadow:0 0 0 2px var(--accent)}.text-pill-var--active{border:2px solid var(--warning)}.text-pill-eq{opacity:.6}.text-pill-popup{position:absolute;top:100%;left:0;z-index:99;display:flex;gap:4px;align-items:center;padding:6px 8px;font-size:var(--font-xs);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 12px #00000026;white-space:nowrap;margin-top:2px}.text-pill-remove{color:var(--error);font-size:10px}.loop-preview{display:inline-flex;align-items:stretch;vertical-align:middle}.loop-preview-inner{border-left:2px solid var(--warning);padding-left:6px;display:inline-flex;flex-direction:column;gap:2px}.loop-preview-row{display:flex;gap:6px;font-size:var(--font-xs);line-height:1.3}.loop-preview-label{font-weight:700;color:var(--warning)}.loop-preview-body{padding-left:8px}.loop-preview-iter{font-family:monospace;font-weight:700}.loop-preview-range{opacity:.5}.loop-preview-max{opacity:.3;margin-left:4px;font-size:9px}.loop-sigma{display:inline-flex;align-items:center;gap:2px;vertical-align:middle}.loop-sigma-bounds{display:inline-flex;flex-direction:column;align-items:center;line-height:1}.loop-sigma-symbol{font-size:1.8em;line-height:.8}.loop-sigma-top,.loop-sigma-bottom{font-size:var(--font-xs);opacity:.7}.loop-sigma-body{font-family:monospace;font-size:var(--font-sm);margin-left:2px}.unit-select{width:4rem;font-size:10px;padding:1px 2px;flex-shrink:0;opacity:.6}.ui-cursor-pointer{cursor:pointer;display:flex;gap:2px;align-items:center}.ui-py-sm{padding-top:var(--space-2);padding-bottom:var(--space-2)}.ui-py-md{padding-top:var(--space-3);padding-bottom:var(--space-3)}.ui-py-lg{padding-top:var(--space-4);padding-bottom:var(--space-4)}.ui-py-xl{padding-top:var(--space-6);padding-bottom:var(--space-6)}.ui-items-center{align-items:center}.ui-items-start{align-items:flex-start}.ui-self-center{align-self:center}.ui-flex-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.ui-flex-row>.ui-select,.ui-flex-row>.ui-select-sm{flex:1}.ui-flex-row-nb{display:flex;align-items:center;gap:var(--space-2)}.ui-flex-col{display:flex;flex-direction:column;gap:var(--space-2)}.ui-flex-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.ui-flex-1{flex:1;min-width:0;min-height:0}.ui-flex-2{flex:2;min-width:0}.ui-flex-spacer{flex:1}.ui-shrink-0{flex-shrink:0}.ui-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.ui-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.ui-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.ui-grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-2)}.ui-grid-auto{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-3)}.ui-grid-auto-sm{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-2)}.ui-fill-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ui-fill-row>.ui-chip{flex:1 0 auto;white-space:nowrap;text-align:center;justify-content:center}.ui-fill-row>.ui-btn,.ui-fill-row>.ui-btn-primary,.ui-fill-row>.ui-btn-ghost,.ui-fill-row>.ui-btn-muted{flex:1;min-width:110px;white-space:normal;overflow-wrap:break-word;text-align:center;justify-content:center}.ui-grid-auto-xs{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--space-1)}.ui-grid-sidebar{display:grid;grid-template-columns:220px 1fr;gap:var(--space-4)}@media(max-width:640px){.ui-grid-2,.ui-grid-3,.ui-grid-sidebar,.catalog-tool-grid,.nav-grid{grid-template-columns:1fr}.ui-sidebar,.ui-sidebar-lg{width:100%;min-width:100%;border-right:none;border-bottom:var(--border-width) solid var(--border)}.ui-widget-grid{overflow-x:auto}.tools-panel{width:100%!important;max-width:100%!important}body,body.dashboard-full-width,body.tool-full-width{padding:0 var(--space-2) var(--space-4) var(--space-2)}.modal-box{max-width:100%;margin:var(--space-2)}.ui-form-row{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.ui-form-row label{font-size:var(--font-sm)}.ui-form-row input[type=range]{width:100%}}@media(max-width:1024px)and (min-width:641px){.ui-grid-3{grid-template-columns:repeat(2,1fr)}.catalog-tool-grid{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}.ui-sidebar-lg{width:220px;min-width:180px}}.ui-form-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.ui-form-row-stack{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3)}.ui-form-grid{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:var(--space-2) var(--space-3)}.ui-form-grid>*{min-width:0}.ui-form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-2)}.ui-check-row{display:flex;align-items:center;gap:var(--space-2);padding:2px 0}.ui-check-label{font-size:var(--font-sm);color:var(--text);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ui-check-label-sm{font-size:var(--font-xs);color:var(--text-secondary);cursor:pointer}.ui-btn-row{display:flex;align-items:stretch;gap:var(--space-2);flex-wrap:wrap}.ui-btn-row>.ui-btn,.ui-btn-row>.ui-btn-primary,.ui-btn-row>.ui-btn-ghost,.ui-btn-row>.ui-btn-muted{flex:1;min-width:120px;white-space:normal;overflow-wrap:break-word;text-align:center;justify-content:center;align-items:center}.ui-btn-row-wrap{display:flex;align-items:flex-start;gap:var(--space-2);flex-wrap:wrap}.ui-btn-row-wrap>*{flex:1 1 auto;min-width:-moz-fit-content;min-width:fit-content}.ui-btn-grid{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ui-btn-grid>.ui-btn,.ui-btn-grid>.ui-btn-primary,.ui-btn-grid>.ui-btn-ghost,.ui-btn-grid>.ui-btn-muted{flex:1;min-width:100px;white-space:normal;overflow-wrap:break-word;text-align:center;justify-content:center;align-items:center}.ui-btn-row-mt{margin-top:var(--space-3)}.ui-btn-row-center{justify-content:center}.ui-mt-xs{margin-top:var(--space-1)}.ui-mt-sm{margin-top:var(--space-2)}.ui-mt-md{margin-top:var(--space-3)}.ui-mt-lg{margin-top:var(--space-4)}.ui-mt-xl{margin-top:var(--space-5)}.ui-mb-xs{margin-bottom:var(--space-1)}.ui-mb-sm{margin-bottom:var(--space-2)}.ui-mb-md{margin-bottom:var(--space-3)}.ui-mb-lg{margin-bottom:var(--space-4)}.ui-mb-xl{margin-bottom:var(--space-5)}.ui-p0{padding:0}.ui-ml-xs{margin-left:var(--space-1)}.ui-ml-sm{margin-left:var(--space-2)}.ui-ml-md{margin-left:var(--space-3)}.ui-mr-xs{margin-right:var(--space-1)}.ui-mr-sm{margin-right:var(--space-2)}.ui-gap-xs{gap:var(--space-1)}.ui-gap-sm{gap:var(--space-2)}.ui-gap-md{gap:var(--space-3)}.ui-gap-lg{gap:var(--space-4)}.ui-flex-wrap{flex-wrap:wrap}.ui-list{display:flex;flex-direction:column;gap:var(--space-1);list-style:none;margin:0;padding:0}.ui-list-item{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-2) var(--space-3);width:100%;background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);font-size:var(--font-sm);text-align:left;transition:background .1s}.ui-list-item:hover{background:var(--surface-hover)}.ui-list-item[aria-selected=true]{background:var(--mix-accent-surface-10);border-color:var(--accent)}.ui-list-item-plain{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-1) 0;font-size:var(--font-sm);border-bottom:var(--border-width) solid var(--border)}.ui-list-item-plain>:first-child{flex-shrink:0;color:var(--text-secondary)}.ui-list-item-plain>:last-child{flex:1;min-width:0;word-break:break-word;overflow-wrap:break-word;font-weight:600}.ui-braille-cell{display:flex;flex-direction:column;align-items:center;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1);background:var(--bg)}.ui-hierarchy-children{padding-left:var(--space-4);border-left:2px solid var(--border);margin-left:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-1)}.ui-hierarchy-branch{font-size:var(--font-sm);font-weight:600}.ui-hierarchy-leaf{font-size:var(--font-sm);color:var(--text-secondary)}.ui-status{font-size:var(--font-sm);color:var(--text-secondary);min-height:1.4em}.ui-status-success{color:var(--success);font-weight:600}.ui-status-error{color:var(--error);font-weight:600}.ui-status-bar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface);border-top:var(--border-width) solid var(--border);font-size:var(--font-xs);color:var(--text-secondary)}.ui-tool-wrap{display:flex;flex-direction:column;gap:var(--space-2);flex:1;min-height:0;overscroll-behavior:contain;padding:var(--space-3);overflow:auto}.ui-tool-main{display:flex;gap:var(--space-3);flex:1;min-height:0;overflow:hidden}.ui-tool-col{display:flex;flex-direction:column;gap:var(--space-2);flex:1;min-width:0;min-height:0}.ui-canvas-wrap{position:relative;border:var(--border-width) solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface);min-height:0}.ui-canvas-fill{display:block;width:100%;height:100%;max-width:100%;max-height:100%}.ui-code{font-family:monospace;font-size:var(--font-xs);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);color:var(--text)}.ui-code-block{font-family:monospace;font-size:var(--font-sm);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--text);white-space:pre-wrap;word-break:break-word;line-height:1.5}.ui-output{font-family:monospace;font-size:var(--btl-fs, var(--font-base));letter-spacing:var(--btl-ls, .05em);line-height:var(--btl-lh, 1.8);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);color:var(--text);white-space:pre-wrap;overflow-x:auto;min-height:3.5em}.ui-article-body{padding:var(--space-4) var(--space-5);max-width:72ch;width:100%}.ui-progress{height:8px;background:var(--progress-bg);border-radius:var(--radius-full);overflow:hidden}.ui-progress>.ui-progress-fill{height:100%}.ui-progress-track{height:8px;background:var(--progress-bg);border-radius:var(--radius-full);overflow:hidden}.ui-progress-fill{width:var(--progress-w, 0%);height:100%;background:var(--progress-fill);border-radius:var(--radius-full);transition:width .3s}.ui-tab-row{display:flex;flex-wrap:wrap;gap:2px;border-bottom:var(--border-width) solid var(--border);margin-bottom:var(--space-3)}.ui-tab-btn{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-3);font-size:var(--font-sm);font-family:inherit;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .12s,border-color .12s;margin-bottom:-1px;white-space:nowrap}.ui-tab-btn:hover{color:var(--text)}.ui-tab-btn[aria-selected=true],.ui-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.ui-tab-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-tab-panel{display:flex;flex-direction:column;flex:1;min-height:0}.ui-tab-panel[hidden]{display:none}.ui-chip-row{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-2)}.ui-chip-row>.ui-chip{flex:1}.ui-sidebar .ui-chip-row,.ui-sidebar-lg .ui-chip-row{margin-bottom:0}.ui-sidebar .ui-chip-row .ui-chip,.ui-sidebar-lg .ui-chip-row .ui-chip{justify-content:center;text-align:center}.ui-chip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--space-1)}.ui-chip-grid .ui-chip{justify-content:center;white-space:normal;text-align:center;width:100%}.ui-chip{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-3);font-size:var(--font-xs);font-family:inherit;font-weight:500;color:var(--text);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;min-height:44px;transition:background .1s,border-color .1s,color .1s}.ui-chip:hover{background:var(--surface-hover);border-color:var(--accent)}.ui-chip:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-chip[aria-pressed=true],.ui-chip.active,.ui-chip--active{background:var(--accent);color:var(--accent-text);border-color:var(--accent);font-weight:600}.ui-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);background:var(--surface);border:2px dashed var(--border);border-radius:var(--radius-lg);cursor:pointer;text-align:center;transition:border-color .15s,background .15s;font-size:var(--font-sm);color:var(--text-secondary)}.ui-dropzone:hover,.ui-dropzone.drag-over{border-color:var(--accent);background:var(--mix-accent-surface-5)}.ui-resize-handle{background:var(--border);cursor:col-resize;width:4px;flex-shrink:0;border-radius:var(--radius-full);transition:background .12s}.ui-resize-handle:hover{background:var(--accent)}.ui-resize-handle-h{background:var(--border);cursor:row-resize;height:4px;flex-shrink:0;border-radius:var(--radius-full)}.ui-drag-handle{cursor:grab;color:var(--border);padding:var(--space-1);display:flex;align-items:center}.ui-calc-grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-1)}.ui-circle-wrap{position:relative;width:200px;height:200px;margin:0 auto}.ui-circle-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1)}nav.breadcrumb,.ui-breadcrumb{display:flex;gap:var(--space-2);align-items:center;font-size:var(--font-sm);color:var(--text-secondary);padding:var(--space-2) 0;margin-bottom:var(--space-2);flex-wrap:wrap}nav.breadcrumb a,.ui-breadcrumb a{color:var(--accent);text-decoration:none}nav.breadcrumb a:hover,.ui-breadcrumb a:hover{text-decoration:underline}nav.breadcrumb .current,.ui-breadcrumb .current{color:var(--text);font-weight:600}.ui-heading{font-size:var(--font-xl);font-weight:700;color:var(--text);margin:0 0 var(--space-1)}.ui-heading-lg{font-size:var(--font-2xl);font-weight:700;color:var(--text);margin:0 0 var(--space-2)}.ui-subtitle{font-size:var(--font-sm);color:var(--text-secondary);margin:0 0 var(--space-3);line-height:1.5}.ui-panel-header{padding:var(--space-3) var(--space-3) 0;border-bottom:var(--border-width) solid var(--border);flex-shrink:0}.ui-title{font-size:var(--font-md);font-weight:600;color:var(--text);margin-bottom:var(--space-2)}.ui-section-title{font-size:var(--font-sm);font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:var(--space-3) 0 var(--space-2)}.ui-section-title-md{font-size:var(--font-md);font-weight:700;color:var(--text);margin:var(--space-3) 0 var(--space-2)}.ui-text-meta{font-size:var(--font-xs);color:var(--text-secondary);font-weight:500}.ui-hint{font-size:var(--font-xs);color:var(--text-secondary);font-style:italic;margin-top:var(--space-1)}.ui-status-row{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-xs);color:var(--text-secondary);padding:var(--space-1) 0}.ui-history-list{display:flex;flex-direction:column;gap:var(--space-1);list-style:none;margin:0;padding:0}.ui-history-item{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface);border-radius:var(--radius-md);border:var(--border-width) solid var(--border);font-size:var(--font-sm)}.ui-history-item:hover{background:var(--surface-hover);border-color:var(--accent)}.ui-history-item:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-error-msg{font-size:var(--font-sm);color:var(--error);margin-top:var(--space-1)}.ui-input-group{display:flex;flex-direction:column;gap:var(--space-1);width:100%}.ui-details{border:var(--border-width) solid var(--border);border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--space-2)}.ui-details-summary{padding:var(--space-2) var(--space-3);font-size:var(--font-sm);font-weight:600;cursor:pointer;background:var(--surface);color:var(--text);list-style:none;display:flex;align-items:center;gap:var(--space-2)}.ui-details-summary:hover{background:var(--surface-hover)}.ui-details[open]>.ui-details-summary{border-bottom:var(--border-width) solid var(--border)}.dashboard-toolbar,.tools-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3);padding:var(--space-2) 0}.tools-count-label{font-size:var(--font-sm);color:var(--text-secondary);margin-left:auto}.dashboard-hint,.tools-empty-desc{color:var(--text-secondary);font-size:var(--font-md);margin-bottom:var(--space-4)}.nav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:var(--space-3);margin-bottom:var(--space-4)}.nav-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);background:var(--bg);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;font-family:inherit;color:var(--text);transition:box-shadow .15s,border-color .15s}.nav-card:hover{box-shadow:var(--shadow-md);border-color:var(--accent)}.nav-card:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.nav-card-title{font-size:var(--font-md);font-weight:600;margin:0;color:var(--accent)}.nav-card-desc{font-size:var(--font-sm);color:var(--text-secondary);margin:0}.tools-cat-section,.catalog-cat-section{margin-bottom:var(--space-5)}.tools-cat-heading,.catalog-cat-heading{font-size:var(--font-sm);font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2);margin-top:var(--space-4);padding:0}.catalog-cat-toolbar-heading{font-size:var(--font-sm);font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:var(--space-2) 0 var(--space-1)}.catalog-tool-chips,.catalog-cat-tools-section{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.catalog-tool-chip{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);font-size:var(--font-sm);font-family:inherit;font-weight:500;color:var(--text);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;transition:background .1s,border-color .1s}.catalog-tool-chip:hover{background:var(--surface-hover);border-color:var(--accent)}.catalog-tool-chip:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.catalog-tool-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:var(--space-2);margin-bottom:var(--space-3)}.catalog-tool-card{display:flex;flex-direction:column;align-items:flex-start;padding:var(--space-2) var(--space-3);font-family:inherit;text-align:left;color:var(--text);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background .1s,border-color .1s}.catalog-tool-card:hover{background:var(--surface-hover);border-color:var(--accent)}.catalog-tool-card:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.catalog-tool-card-name{font-size:var(--font-sm);font-weight:600;margin-bottom:.125rem}.catalog-tool-card:hover .catalog-tool-card-name{color:var(--text)}.catalog-tool-card-desc{font-size:.75rem;color:var(--text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tools-panel{background:var(--bg);border:var(--border-width) solid var(--border);border-radius:var(--radius-xl);padding:var(--space-4);box-shadow:var(--shadow-lg);margin-bottom:var(--space-4)}.tools-catalog-overflow{max-height:60vh;overflow-y:auto;overscroll-behavior:contain}.tools-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:var(--border-width) solid var(--border)}.template-list{display:flex;flex-direction:column;gap:var(--space-2)}.template-list-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.template-item-name{flex:1;font-size:var(--font-md);font-weight:500}.template-item-count{font-size:var(--font-sm);color:var(--text-secondary)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--alpha-text-50);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.modal-box{background:var(--bg);color:var(--text);border:var(--border-width) solid var(--border);border-radius:var(--radius-xl);padding:var(--space-5);max-width:640px;width:100%;max-height:88vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.modal-title{font-size:var(--font-xl);font-weight:700;margin:0 0 var(--space-3);padding-bottom:var(--space-2);border-bottom:var(--border-width) solid var(--border)}.modal-overflow{overflow-y:auto;max-height:50vh;overscroll-behavior:contain}.modal-section{margin:var(--space-3) 0}.catalog-tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:var(--space-2)}.catalog-item-btn{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);background:var(--surface);color:var(--text);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);cursor:pointer;text-align:left;font-family:inherit;transition:background .1s,border-color .1s;min-height:44px}.catalog-item-btn:hover{background:var(--surface-hover);border-color:var(--accent)}.catalog-item-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.catalog-item-name{font-size:var(--font-sm);font-weight:600}.catalog-item-desc{font-size:var(--font-xs);color:var(--text-secondary)}.layout-textarea{width:100%;min-height:120px;max-height:200px;padding:var(--space-2) var(--space-3);font-family:monospace;font-size:var(--font-sm);border:var(--border-width-strong) solid var(--input-border);border-radius:var(--radius-md);background:var(--input-bg);color:var(--text);resize:vertical}.layout-textarea:focus{outline:3px solid var(--focus-ring);outline-offset:2px}.file-input-hidden{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.inline-block{display:inline-block}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.flex-spacer{flex:1}.gap-2{gap:var(--space-2)}.flex-1{flex:1;min-width:0}.m-0{margin:0}.mb-sm{margin-bottom:var(--space-2)}.mt-md{margin-top:var(--space-4)}.mt-2{margin-top:var(--space-2)}.text-md{font-size:var(--font-md)}.text-sm{font-size:var(--font-sm)}.text-secondary{color:var(--text-secondary)}.widget-range-full{flex:1;min-width:4rem;accent-color:var(--accent)}nav.breadcrumb{display:flex;gap:var(--space-2);align-items:center;font-size:var(--font-sm);color:var(--text-secondary);padding:var(--space-2) 0;margin-bottom:var(--space-2);flex-wrap:wrap}nav.breadcrumb a{color:var(--accent);text-decoration:none}nav.breadcrumb a:hover{text-decoration:underline}nav.breadcrumb .current{color:var(--text);font-weight:600}.ui-fill{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.ui-center{display:flex;align-items:center;justify-content:center}.ui-relative{position:relative}.ui-block{display:block}.ui-w-full{width:100%}.ui-p-sm{padding:var(--space-2)}.ui-p-md{padding:var(--space-3)}.ui-btn-block{width:100%;justify-content:space-between;white-space:normal;text-align:left}.ui-overflow-hidden{overflow:hidden}.ui-overflow-x{overflow-x:auto}.ui-overflow-y{overflow-y:auto}.ui-m0{margin:0}.ui-justify-end{justify-content:flex-end}.ui-text-italic{font-style:italic}.ui-pointer-none{pointer-events:none}.ui-pointer-stroke{pointer-events:stroke}.ui-cursor-pointer{cursor:pointer}.ui-section{margin-bottom:var(--space-6);display:flex;flex-direction:column;flex:1 1 0;min-height:0}.ui-section-flush{margin-bottom:var(--space-3)}.ui-section-heading{font-size:var(--text-heading-2);color:var(--accent);margin-bottom:var(--space-3);padding-bottom:var(--space-1);border-bottom:var(--border-width-strong) solid var(--border)}.ui-sidebar-left{background:var(--surface);border-right:var(--border-width) solid var(--border);padding:var(--space-2);overflow-y:auto}.ui-sidebar-right{background:var(--surface);border-left:var(--border-width) solid var(--border);padding:var(--space-2);overflow-y:auto;display:flex;flex-direction:column}.ui-toolbar-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);background:var(--surface);border-top:var(--border-width) solid var(--border);padding:var(--space-1) var(--space-2);font-size:var(--font-xs)}.ui-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.ui-skip-link{position:absolute;left:-9999px;top:var(--space-2);z-index:var(--z-toast);padding:var(--space-2) var(--space-4);background:var(--accent);color:var(--accent-text);border-radius:var(--radius-md);font-weight:600;text-decoration:none}.ui-skip-link:focus{left:var(--space-2)}.ui-skip-nav{position:absolute;left:-9999px;top:var(--space-2);z-index:var(--z-toast);padding:var(--space-2) var(--space-4);background:var(--accent);color:var(--accent-text);border-radius:var(--radius-md);font-weight:600;text-decoration:none}.ui-skip-nav:focus{left:var(--space-2)}.ui-offline-banner{position:fixed;top:0;left:0;right:0;z-index:10000;text-align:center;padding:var(--space-2) var(--space-4);background:var(--surface);border-bottom:2px solid var(--accent);color:var(--text);font-size:var(--font-sm, .875rem)}.ui-checkbox,.ui-radio{width:1rem;height:1rem;min-width:1rem;accent-color:var(--accent);cursor:pointer}.ui-input-error{border-color:var(--error)!important;box-shadow:0 0 0 1px var(--error)}.ui-field-error{color:var(--error);font-size:var(--font-sm);font-weight:600;margin-top:var(--space-1);margin-bottom:0}.ui-feedback{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-weight:600;margin:var(--space-2) 0;background:var(--surface);border:var(--border-width-strong) solid var(--border);color:var(--text)}.ui-feedback-correct{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-weight:600;margin:var(--space-2) 0;background:var(--alpha-success-10);border:var(--border-width-strong) solid var(--success);color:var(--success)}.ui-feedback-correct:before{content:"✓ "}.ui-feedback-incorrect{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-weight:600;margin:var(--space-2) 0;background:var(--alpha-error-10);border:var(--border-width-strong) solid var(--error);color:var(--error)}.ui-feedback-incorrect:before{content:"✗ "}.ui-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);text-align:center;color:var(--text-secondary)}.theme-swatch-dot{width:14px;height:14px;border-radius:50%;background:var(--ts-bg, var(--border));border:1px solid var(--border);flex-shrink:0;display:inline-block}.ui-validation{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:500;background:var(--surface);border:var(--border-width-strong) solid var(--border);color:var(--text)}.ui-validation[data-valid=false]{background:var(--alpha-error-8);border-color:var(--error);color:var(--error)}.ui-validation[data-valid=true]{background:var(--alpha-success-8);border-color:var(--success);color:var(--success)}.ui-progress-thin{height:var(--space-1);background:var(--progress-bg);border-radius:var(--radius-full);overflow:hidden}.ui-progress-thin-fill{height:100%;background:var(--accent);border-radius:var(--radius-full);transition:width .3s}.ui-progress-thin-fill[data-complete=true]{background:var(--success)}.ui-canvas-svg{display:block;background-color:var(--input-bg)}.ui-canvas-invert{background-color:#fff}.ui-svg{background:transparent}.ui-svg-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.ui-drag-handle{cursor:grab;color:var(--text-secondary);padding:var(--space-1);flex-shrink:0;font-size:var(--font-lg);line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ui-drag-handle:active{cursor:grabbing}.ui-dropzone{border:2px dashed var(--border);border-radius:var(--radius-md);padding:var(--space-5);text-align:center;cursor:pointer;transition:border-color .15s,background .15s;color:var(--text-secondary)}.ui-dropzone:hover,.ui-dropzone[data-drag-over=true]{border-color:var(--accent);background:var(--surface-hover);color:var(--accent)}.ui-swatch{display:inline-block;width:1.5rem;height:1.5rem;border-radius:var(--radius-sm);border:var(--border-width-strong) solid var(--border);cursor:pointer;flex-shrink:0}.ui-swatch:hover{border-color:var(--accent)}.ui-swatch[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.ui-swatch:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-img-thumb{width:2.5rem;height:2.5rem;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);flex-shrink:0}.ui-highlight-token{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;border:1px solid transparent;transition:background .1s,border-color .1s;font-size:inherit;line-height:inherit}.ui-highlight-token:hover:not([data-locked=true]){background:var(--surface-hover);border-color:var(--border)}.ui-highlight-token[aria-pressed=true]{background:var(--alpha-accent-25);border-color:var(--accent)}.ui-highlight-token:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px}.ui-selectable{cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);width:100%;text-align:left;background:transparent;color:var(--text);border:none;transition:background .1s}.ui-selectable[data-selected=true]{background:var(--accent);color:var(--accent-text)}.ui-selectable:hover:not([data-selected=true]){background:var(--surface-hover)}.ui-detail-inset{border-top:var(--border-width) solid var(--border);padding:var(--space-2)}.ui-definition-popup{position:fixed;z-index:var(--z-tooltip);min-width:180px;max-width:280px}.ui-caption-bar{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-toast, 1600)}body:has(.ui-caption-bar){padding-bottom:3.5rem}.ui-caption-bar .ui-card{max-height:50vh;overflow-y:auto;overscroll-behavior:contain}.ui-col-header{font-size:var(--font-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:var(--space-2)}.ui-footer{margin-top:var(--space-6);padding-top:var(--space-4);border-top:var(--border-width) solid var(--border);color:var(--text-secondary);font-size:var(--font-sm)}.ui-instructions{padding:var(--space-3);background:var(--instruction-bg);border-left:4px solid var(--instruction-border);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--text-secondary);margin-bottom:var(--space-3);font-size:var(--font-md)}.ui-deco{display:block;margin:var(--space-2) auto;max-width:100%;height:auto;pointer-events:none}.ui-dot{display:inline-block;width:var(--space-2);height:var(--space-2);border-radius:var(--radius-full);flex-shrink:0}.ui-rank{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:700;background:var(--accent);color:var(--accent-text);flex-shrink:0}.ui-bin{padding:var(--space-3);border:var(--border-width-strong) dashed var(--border);border-radius:var(--radius-md);background:var(--surface);min-height:4rem;transition:border-color .15s,background .15s}.ui-bin[data-drag-over=true]{border-color:var(--accent);background:var(--surface-hover)}.ui-logo{display:block;margin:0 auto var(--space-2) auto;max-width:200px}.ui-link{color:var(--accent);text-decoration:none;font-size:inherit}.ui-link:hover{text-decoration:underline}.ui-summary-pointer{cursor:pointer}.ui-breadcrumb{display:flex;align-items:center;gap:var(--space-1);font-size:var(--font-sm);color:var(--text-secondary);flex-wrap:wrap}.ui-breadcrumb-item{color:var(--text-secondary)}.ui-breadcrumb-item a{color:var(--accent);text-decoration:none}.ui-breadcrumb-item a:hover{text-decoration:underline}.ui-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);background:#00000080;display:flex;align-items:center;justify-content:center}.ui-dialog{background:var(--bg);color:var(--text);border:var(--border-width-strong) solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);max-width:500px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.ui-dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);font-size:var(--font-lg);font-weight:700}.ui-table{width:100%;border-collapse:collapse;border:var(--border-width) solid var(--border);font-size:var(--font-sm)}.ui-table th{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:var(--border-width-strong) solid var(--border);font-weight:600;background:var(--surface);white-space:nowrap}.ui-table td{padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--border)}.ui-table-compact th,.ui-table-compact td{padding:var(--space-1) var(--space-2);font-size:var(--font-xs)}.ui-table-striped tr:nth-child(2n) td{background:var(--surface)}.ui-td{padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--border)}.ui-td-right{padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--border);text-align:right;font-variant-numeric:tabular-nums}.ui-td-center{padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--border);text-align:center}.ui-th-sort{padding:0;text-align:left;border-bottom:var(--border-width-strong) solid var(--border);font-weight:600;white-space:nowrap}.ui-th-right{padding:var(--space-2) var(--space-3);text-align:right;border-bottom:var(--border-width-strong) solid var(--border);font-weight:600;white-space:nowrap}.ui-th-right-sort{padding:0;text-align:right;border-bottom:var(--border-width-strong) solid var(--border);font-weight:600;white-space:nowrap}.ui-th-sort-btn{all:unset;display:block;width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;font:inherit;font-weight:600;white-space:nowrap;text-align:inherit}.ui-th-sort-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ui-fieldset-bare{border:none;padding:0;margin:0}.cb-secondary-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1) var(--space-2);font-size:var(--font-xs);font-family:inherit;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s;white-space:nowrap}.cb-secondary-btn:hover:not(:disabled){background:var(--surface-hover)}.cb-secondary-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.cb-secondary-btn:disabled{opacity:.5;cursor:default}.cb-secondary-btn[aria-pressed=true]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.choice-group-col{display:flex;flex-direction:column;gap:var(--space-2)}.choice-group-col-sm{display:flex;flex-direction:column;gap:var(--space-1)}.ui-option-card{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);border:var(--border-width-strong) solid var(--border);border-radius:var(--radius-md);background:var(--bg);cursor:pointer;transition:border-color .15s,background .15s;text-align:left;width:100%;font-family:inherit;font-size:var(--font-sm);color:var(--text)}.ui-option-card:hover:not(:disabled){border-color:var(--accent);background:var(--surface-hover)}.ui-option-card[aria-pressed=true],.ui-option-card[data-selected=true]{border-color:var(--accent);background:var(--alpha-accent-10);color:var(--accent)}.ui-option-card:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-match-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border-width-strong) solid var(--border);border-radius:var(--radius-md);background:var(--bg);cursor:pointer;font-size:var(--font-sm);min-height:2.75rem;transition:border-color .15s,background .15s;font-family:inherit;color:var(--text);text-align:left;width:100%}.ui-match-item:hover:not(:disabled){background:var(--surface-hover)}.ui-match-item[data-selected=true]{border-color:var(--accent);background:var(--alpha-accent-10);color:var(--accent);font-weight:600}.ui-match-item[data-connected=true]{border-color:var(--success);background:var(--alpha-success-8);color:var(--success)}.ui-match-item:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-nav-btn-answered{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 var(--space-2);font-size:var(--font-sm);font-weight:600;border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;opacity:.8;transition:background .15s}.ui-nav-btn-answered:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ui-nav-btn-correct{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 var(--space-2);font-size:var(--font-sm);font-weight:600;border-radius:var(--radius-sm);border:var(--border-width) solid var(--success);background:var(--mix-success-surface-15);color:var(--success);cursor:pointer;transition:background .15s}.ui-nav-btn-correct:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ui-nav-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 var(--space-2);font-size:var(--font-sm);font-weight:500;border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:background .15s}.ui-nav-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent)}.ui-nav-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ui-nav-btn:disabled{opacity:.45;cursor:not-allowed}.ui-nav-btn-active{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 var(--space-2);font-size:var(--font-sm);font-weight:700;border-radius:var(--radius-sm);border:var(--border-width-strong) solid var(--accent);background:var(--mix-accent-surface-15);color:var(--accent);cursor:pointer;transition:background .15s}.ui-nav-btn-active:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ui-question-form{display:flex;flex-direction:column;gap:var(--space-2);flex:1 1 0;min-height:0}.ui-matrix-check{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background-color:var(--success);color:var(--accent-text);font-size:.6rem;font-weight:700;flex-shrink:0}.ui-matrix-radio-cell{display:flex;align-items:center;justify-content:center;padding:.6rem;outline:none;cursor:pointer}.ui-matrix-radio-cell:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);border-radius:var(--radius)}.ui-matrix-radio-cell[data-locked=true]{cursor:default}.ui-matrix-radio{display:inline-block;width:20px;height:20px;border-radius:50%;border:2px solid var(--border);background-color:transparent;position:relative;transition:all .15s}.ui-matrix-radio[aria-pressed=true]{border-color:var(--accent);background-color:var(--accent);box-shadow:0 0 0 3px var(--alpha-accent-25)}.ui-matrix-radio-dot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background-color:var(--bg)}.ui-widget-grid{position:relative;width:100%;overflow:visible;background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-md);margin-bottom:2rem}.ui-widget-grid-lines{position:absolute;pointer-events:none;top:0;right:0;bottom:0;left:0}.ui-widget-cell{position:absolute;background:var(--bg);border:2px solid var(--border);border-radius:var(--radius-md);overflow:clip;display:flex;flex-direction:column;box-shadow:0 1px 4px #00000014;transition:box-shadow .15s,border-color .15s}.ui-widget-cell:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ui-widget-cell:focus:not(:focus-visible){outline:none}.ui-widget-cell[data-focused]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent),var(--shadow-md)}.ui-widget-titlebar{display:flex;align-items:center;gap:var(--space-1);padding:0 var(--space-2);height:38px;background:var(--surface);border-bottom:var(--border-width) solid var(--border);border-radius:var(--radius-md) var(--radius-md) 0 0;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.ui-widget-titlebar[data-dragging]{cursor:grabbing}.ui-widget-title{flex:1;font-size:var(--font-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-widget-title-input{flex:1;font-size:var(--font-sm);padding:2px var(--space-1);border:var(--border-width) solid var(--accent);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text)}.ui-widget-content{flex:1;display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain;min-height:0}.ui-widget-content-scaler{flex:0 0 auto;display:flex;flex-direction:column;transform-origin:top left;transform:scale(var(--wcs-scale, 1));width:var(--wcs-inv, 100%);height:var(--wcs-inv, 100%);min-height:0;padding:var(--space-2);overflow:auto;overscroll-behavior:contain}.ui-widget-content-scaler>.ui-fill{overflow:auto;overscroll-behavior:contain;flex:1 1 0;min-height:0}.ui-widget-content-scaler>.ui-fill:has(>.notepad-root){overflow:hidden;flex:1 1 0;min-height:0}.ui-widget-content-scaler>.ui-tool-wrap,.ui-widget-content-scaler>.ui-tool-frame,.ui-widget-content-scaler>.ui-tool-frame-col,.ui-widget-content-scaler>.ui-tool-main,.ui-widget-content-scaler>.ui-fill>.ui-tool-wrap,.ui-widget-content-scaler>.ui-fill>.ui-tool-frame,.ui-widget-content-scaler>.ui-fill>.ui-tool-frame-col,.ui-widget-content-scaler>.ui-fill>.ui-tool-main{margin:calc(-1 * var(--space-2))}.ui-widget-scale-bar{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--surface);border-bottom:var(--border-width) solid var(--border);flex-shrink:0;font-size:var(--font-xs)}.ui-widget-resize{position:absolute;bottom:0;right:0;width:14px;height:14px;cursor:se-resize;opacity:.4;background:linear-gradient(135deg,transparent 60%,var(--border) 60%);border-radius:0 0 var(--radius-md) 0}.ui-widget-empty{display:flex;align-items:center;justify-content:center;padding:var(--space-8);color:var(--text-muted);font-size:var(--font-sm)}.ui-subdash-toolbar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface);border-bottom:var(--border-width) solid var(--border);flex-shrink:0;min-height:40px}.ui-subdash-breadcrumb{display:flex;align-items:center;gap:var(--space-1);flex:1;min-width:0;font-size:var(--font-sm)}.ui-subdash-breadcrumb-sep{color:var(--text-muted);margin:0 2px}.ui-subdash-breadcrumb-item{color:var(--text-secondary);background:none;border:none;font:inherit;font-size:var(--font-sm);padding:2px var(--space-1);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.ui-subdash-breadcrumb-item:hover{background:var(--surface-hover)}.ui-subdash-breadcrumb-item:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ui-subdash-breadcrumb-item[aria-current=page]{color:var(--text);font-weight:600;cursor:default}.ui-subdash-breadcrumb-item[aria-current=page]:hover{background:none}.ui-subdash-container{flex:1;display:flex;flex-direction:column;min-height:0;overflow:auto}.ui-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;font-size:var(--font-sm);font-family:inherit;line-height:1;color:var(--text-secondary);background:transparent;border:var(--border-width) solid transparent;border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;transition:background .1s,border-color .1s,color .1s}.ui-btn-icon:hover:not(:disabled){background:var(--surface-hover);color:var(--text);border-color:var(--border)}.ui-btn-icon:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.ui-btn-icon[aria-pressed=true]{background:var(--surface-hover);color:var(--accent);border-color:var(--border)}.ui-btn-icon.ui-btn-ghost{border-color:transparent;background:transparent}.ui-btn-icon.ui-btn-ghost:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border)}.ui-cal-table{width:100%;border-collapse:collapse}.ui-cal-table-week{min-width:600px}.ui-cal-th{padding:var(--space-2) var(--space-3);text-align:center;border-bottom:var(--border-width) solid var(--border)}.ui-cal-th-time{padding:var(--space-2);width:60px;text-align:center;font-size:var(--font-xs);color:var(--text-secondary);border-bottom:var(--border-width) solid var(--border)}.ui-cal-td{padding:var(--space-2);height:120px;border:var(--border-width) solid var(--border);background:var(--surface);vertical-align:top;transition:background .1s}.ui-cal-td[aria-selected=true]{background:var(--surface-hover)}.ui-cal-td[data-today=true]{background:var(--alpha-accent-8)}.ui-cal-td-time{padding:var(--space-1);font-size:var(--font-xs);text-align:center;border-right:var(--border-width) solid var(--border);color:var(--text-secondary)}.ui-cal-td-hour{padding:var(--space-1);height:40px;border-right:var(--border-width) solid var(--border);border-bottom:var(--border-width) solid var(--border);font-size:var(--font-xs);background:var(--surface);vertical-align:top}.ui-cal-td-hour[data-has-events=true]{background:var(--alpha-accent-10)}.ui-cal-day{width:100%;padding:var(--space-1);background:transparent;color:var(--text);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);cursor:pointer;font-weight:400;font-size:var(--font-sm);font-family:inherit;min-height:2rem;transition:background .1s}.ui-cal-day:hover:not(:disabled){background:var(--surface-hover)}.ui-cal-day[data-today=true]{font-weight:700}.ui-cal-day[aria-selected=true]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.ui-cal-day:disabled{cursor:default;opacity:.6}.ui-cal-day:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-cal-event-list{font-size:var(--font-xs);margin-top:var(--space-1);max-height:80px;overflow:auto}.ui-cal-event-chip{padding:.2rem .3rem;margin-bottom:.1rem;border-radius:var(--radius-sm);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-xs)}.ui-cal-event-card{padding:var(--space-2);margin-bottom:var(--space-2);border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);font-size:var(--font-xs)}.ui-cal-event-title{font-weight:700;margin-bottom:var(--space-1)}.ui-cal-event-detail{padding:var(--space-2);margin-bottom:var(--space-1);border-radius:var(--radius-sm);font-size:var(--font-sm)}.ui-cal-date-heading{font-size:var(--font-sm);margin-bottom:var(--space-3);color:var(--text)}.ui-cal-day-events{margin-top:var(--space-4)}.ui-cal-day-events-heading{font-size:var(--font-sm);margin-bottom:var(--space-2);color:var(--text)}.ui-cal-fieldset{border:var(--border-width) solid var(--border);padding:var(--space-3);border-radius:var(--radius-sm)}.ui-slider-value-row{display:flex;align-items:baseline;justify-content:center;gap:var(--space-2)}.ui-slider-value{font-size:2rem;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.ui-slider-track-wrapper{position:relative;padding:var(--space-2) 0}.ui-slider-track-bg{position:absolute;top:50%;left:0;right:0;height:8px;transform:translateY(-50%);border-radius:var(--radius-sm);background-color:var(--surface-hover);overflow:hidden}.ui-slider-track-fill{height:100%;border-radius:var(--radius-sm);background-color:var(--accent);transition:width .1s}.ui-slider-range-overlay{position:relative;width:100%;height:24px;opacity:.01;z-index:2}.ui-slider-range-overlay:disabled{cursor:default}.ui-slider-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:20px;height:20px;border-radius:50%;background-color:var(--accent);border:3px solid var(--bg);box-shadow:var(--shadow-sm);pointer-events:none;transition:left .1s}.ui-slider-ticks{position:relative;height:20px;margin-top:-.25rem}.ui-slider-tick{position:absolute;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.ui-slider-tick-mark{width:1px;height:6px;background-color:var(--border)}.ui-display-value{display:inline-block;min-width:3rem;text-align:center}.ui-history-item-btn{padding:var(--space-2) var(--space-3);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:background .1s,border-color .1s;margin-bottom:var(--space-1)}.ui-history-item-btn:hover{background:var(--surface-hover);border-color:var(--accent)}.ui-history-item-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-calc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-1)}.ui-gap-xl{gap:var(--space-5)}.ui-details-history{background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);padding:var(--space-2);margin-top:var(--space-2)}.ui-details-summary{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;list-style:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ui-details-summary::-webkit-details-marker{display:none}.ui-details-summary::marker{display:none}.ui-history-list{max-height:140px;overflow-y:auto;margin-top:var(--space-2)}.sm-swatch{width:12px;height:12px;border-radius:var(--radius-sm);flex-shrink:0;border:var(--border-width) solid var(--border)}.sm-swatch-quark{background:var(--color-quark, #7c3aed)}.sm-swatch-lepton{background:var(--color-lepton, #059669)}.sm-swatch-boson{background:var(--color-boson, #dc2626)}.sm-swatch-higgs{background:var(--color-higgs, #d97706)}.ui-display-box{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);box-shadow:inset 0 2px 4px var(--alpha-text-6)}.ui-display-expr{font-size:var(--font-xs);color:var(--text-secondary);text-align:right;min-height:18px;margin-bottom:var(--space-1)}.ui-display-main{font-size:2rem;font-weight:700;text-align:right;color:var(--text);word-break:break-all;min-height:44px}.ui-calc-layout{display:flex;gap:var(--space-3);flex:1;min-height:0;padding:var(--space-3);overflow:hidden}.ui-calc-main{flex:0 0 260px;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.ui-calc-history{flex:1;display:flex;flex-direction:column;gap:var(--space-2);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);min-height:0;min-width:120px}.ui-calc-history-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-1);min-height:0}.ui-calc-span2{grid-column:span 2}.ui-calc-span4{grid-column:span 4}.ui-tool-frame{display:flex;flex-direction:row;flex:1;min-height:0;overflow:hidden}.ui-tool-frame-col{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.ui-cad-layout{display:flex;flex-direction:row;flex:1;min-height:500px;overflow:hidden;padding:var(--space-2);gap:var(--space-1)}.ui-cad-center{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.ui-cad-viewport{flex:1;position:relative;overflow:hidden;background:var(--cad-viewport-bg);min-height:400px}.ui-cad-viewport>svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.ui-cad-props{width:260px;min-width:220px;flex-shrink:0;display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;padding:var(--space-2);border-left:var(--border-width) solid var(--border);background:var(--surface);transition:width .2s,min-width .2s,padding .2s}.ui-cad-props[data-collapsed=true]{width:36px;min-width:36px;padding:var(--space-1);overflow:hidden}.ui-cad-toolbar{display:flex;align-items:center;gap:2px;padding:var(--space-half) var(--space-1);background:var(--surface);border-bottom:var(--border-width) solid var(--border);flex-shrink:0;overflow-x:auto}.ui-cad-toolbar .ui-btn-compact{min-width:36px;min-height:36px;padding:0;display:flex;align-items:center;justify-content:center;font-size:14px;border-radius:var(--radius-sm)}.ui-cad-toolbar .ui-btn-compact.ui-btn-active{background:var(--accent);color:var(--on-accent, #fff)}.ui-cad-center .ui-toolbar{flex-wrap:nowrap;overflow-x:auto;flex-shrink:0;gap:var(--space-1);padding:var(--space-1) var(--space-2);margin-bottom:0;border-bottom:none;border-top:var(--border-width) solid var(--border);background:var(--surface)}.ui-cad-center .ui-toolbar .ui-btn,.ui-cad-center .ui-toolbar .ui-btn-compact{min-height:28px;min-width:28px;padding:var(--space-half) var(--space-1);font-size:11px}.ui-cad-center .ui-toolbar .ui-select-sm{min-height:28px;font-size:11px}.ui-cad-center .ui-status-bar{font-size:10px;padding:2px var(--space-2);gap:var(--space-2);flex-wrap:nowrap;flex-shrink:0;overflow:hidden;white-space:nowrap}.ui-cad-layout>.ui-sidebar .ui-btn{text-align:left;justify-content:flex-start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-cad-layout .ui-list{max-height:200px;overflow-y:auto;overscroll-behavior:contain}.ui-cad-layout .ui-list-item{padding:var(--space-1);font-size:11px}.ui-cad-layout .ui-panel-inset{padding:var(--space-1)}.ui-cad-layout .ui-panel-inset .ui-input-sm{font-size:11px;min-height:26px}.ui-viewport-layout{display:flex;flex-direction:row;flex:1;min-height:500px;overflow:hidden;padding:var(--space-2);gap:var(--space-1)}.ui-viewport-center{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.ui-viewport-toolbar{display:flex;flex-direction:row;align-items:center;gap:2px;padding:var(--space-1) var(--space-2);background:var(--surface);border-bottom:1px solid var(--border-subtle);flex-shrink:0;min-height:36px;flex-wrap:wrap}.ui-viewport-toolbar .ui-btn-compact{min-width:36px;min-height:36px}.ui-viewport-canvas{flex:1;position:relative;overflow:hidden;min-height:300px;background:transparent;overscroll-behavior:contain;touch-action:none}.ui-viewport-canvas-opaque{background:var(--cad-viewport-bg, var(--bg))}.ui-viewport-canvas:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;box-shadow:inset 0 0 0 2px var(--accent)}.ui-viewport-canvas>.ui-viewport-transform:focus-visible{outline:none}[data-cursor=crosshair]{cursor:crosshair}[data-cursor=cell]{cursor:cell}[data-cursor=grab]{cursor:grab}[data-cursor=grabbing]{cursor:grabbing}[data-cursor=move]{cursor:move}[data-cursor=pointer]{cursor:pointer}.ui-menu-item{display:block;width:100%;padding:6px 12px;text-align:left;background:none;border:none;color:var(--text);font-size:inherit;cursor:pointer;white-space:nowrap}.ui-menu-item:hover,.ui-menu-item:focus-visible{background:var(--accent);color:var(--bg);outline:none}.ui-viewport-canvas>svg,.ui-viewport-canvas>canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;transform-origin:center center}.ui-viewport-transform{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transform-origin:0 0;will-change:transform;pointer-events:none}.ui-viewport-transform>*{pointer-events:auto}.ui-viewport-time-row{display:flex;flex-direction:row;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--surface);border-top:1px solid var(--border-subtle);flex-shrink:0;min-height:36px}.ui-viewport-props{position:absolute;right:0;top:0;bottom:0;z-index:5;width:260px;max-width:50%;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-1);overflow-y:auto;overscroll-behavior:contain;border-left:1px solid var(--border-subtle);background:var(--bg);box-shadow:var(--shadow-md)}.ui-viewport-props[data-collapsed=true]{width:36px;min-width:36px;padding:var(--space-1);overflow:hidden;box-shadow:none}.ui-viewport-resize-handle{width:4px;cursor:col-resize;background:transparent;flex-shrink:0;transition:background .15s}.ui-viewport-resize-handle:hover,.ui-viewport-resize-handle:active{background:var(--accent)}.ui-viewport-gizmo{position:absolute;top:var(--space-2);left:var(--space-2);display:flex;flex-direction:row;align-items:center;gap:2px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:2px;opacity:.7;transition:opacity .15s;z-index:10;pointer-events:auto}.ui-viewport-gizmo:hover,.ui-viewport-gizmo:focus-within{opacity:1}.ui-vp-gizmo-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text);font-size:14px;cursor:pointer;border-radius:var(--radius-sm);padding:0}.ui-vp-gizmo-btn:hover{background:var(--surface-hover)}.ui-vp-gizmo-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.ui-vp-gizmo-label{font-size:11px;color:var(--text-secondary);padding:0 var(--space-1);min-width:36px;text-align:center;font-variant-numeric:tabular-nums;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ui-viewport-layout:fullscreen{padding:0;min-height:100vh}.ui-viewport-layout:fullscreen .ui-viewport-canvas{min-height:0}.ui-viewport-layout>.ui-sidebar .ui-btn{text-align:left;justify-content:flex-start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-viewport-scrim{display:none}.ui-viewport-mobile{position:relative;min-height:300px}@media(max-width:767px){.ui-viewport-mobile{min-height:250px;padding:var(--space-1)}.ui-viewport-scrim{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:15;background:#00000059}.ui-sidebar-overlay{position:absolute!important;top:0;left:0;bottom:0;width:80vw!important;max-width:320px!important;z-index:20;background:var(--bg);border-right:1px solid var(--border);transform:translate(-100%);transition:transform .2s ease;overflow-y:auto;overscroll-behavior:contain}.ui-sidebar-overlay[data-open=true]{transform:translate(0)}.ui-sidebar-overlay[data-collapsed=true]{transform:translate(-100%)}.ui-props-overlay{position:absolute!important;top:0;right:0;bottom:0;width:80vw!important;max-width:320px!important;z-index:20;background:var(--bg);border-left:1px solid var(--border);transform:translate(100%);transition:transform .2s ease;overflow-y:auto;overscroll-behavior:contain}.ui-props-overlay[data-open=true]{transform:translate(0)}.ui-props-overlay[data-collapsed=true]{transform:translate(100%)}.ui-viewport-mobile .ui-viewport-resize-handle{display:none}.ui-viewport-mobile .ui-viewport-toolbar{padding:var(--space-1);gap:1px;min-height:32px}.ui-viewport-mobile .ui-viewport-toolbar .ui-btn-compact{min-width:28px;min-height:28px;font-size:12px}.ui-viewport-mobile .ui-status-bar{font-size:10px;padding:2px var(--space-1)}}.sb-root{display:flex;flex-direction:column;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-family)}.sb-header{padding:var(--space-5) var(--space-5) var(--space-3);border-bottom:var(--border-width-strong) solid var(--border);background:var(--surface)}.sb-page-title{font-size:var(--font-2xl);font-weight:700;color:var(--text);margin-bottom:var(--space-1)}.sb-layout{display:flex;flex:1;min-height:0;align-items:flex-start}.sb-toc{width:180px;min-width:160px;flex-shrink:0;position:sticky;top:0;max-height:100vh;overflow-y:auto;border-right:var(--border-width) solid var(--border);background:var(--surface);padding:var(--space-3)}.sb-toc-inner{display:flex;flex-direction:column;gap:var(--space-2)}.sb-toc-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-1)}.sb-toc-link{display:block;font-size:var(--font-sm);color:var(--text-secondary);text-decoration:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:background .1s,color .1s}.sb-toc-link:hover{background:var(--surface-hover);color:var(--text)}.sb-toc-link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.sb-main{flex:1;min-width:0;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-8)}.sb-section{display:flex;flex-direction:column;gap:var(--space-4);scroll-margin-top:var(--space-4)}.sb-section-title{font-size:var(--font-xl);font-weight:700;color:var(--text);padding-bottom:var(--space-2);border-bottom:var(--border-width-strong) solid var(--accent)}.sb-row{display:flex;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.sb-row-label{width:200px;min-width:160px;flex-shrink:0;font-size:var(--font-sm);font-weight:600;color:var(--text-secondary);padding-top:var(--space-1)}.sb-row-content{flex:1;min-width:0;display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-start}.sb-box{display:flex;flex-direction:column;gap:var(--space-2);border:var(--border-width-strong) dashed var(--border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--bg)}.sb-box-label{font-size:var(--font-xs);font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;border-bottom:var(--border-width) solid var(--border);padding-bottom:var(--space-1);margin-bottom:var(--space-1)}.sb-swatch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--space-3)}.sb-swatch{display:flex;flex-direction:column;gap:var(--space-1)}.sb-swatch-color{width:100%;height:48px;border-radius:var(--radius-md)}.sb-swatch-name{font-size:var(--font-sm);font-weight:600}.sb-swatch-var{word-break:break-all}.sb-contrast-demo{display:inline-block;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:600}.sb-row-label-col{width:200px;min-width:160px;flex-shrink:0;display:flex;flex-direction:column;gap:var(--space-1);padding-top:var(--space-1)}.sb-row-note{font-size:var(--font-xs);color:var(--text-secondary);font-style:italic}.sb-a11y-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-3)}.sb-audio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-2)}.sb-narrow-row,.sb-width-compare{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-start}@keyframes voice-pulse{0%,to{box-shadow:0 0 0 0 var(--error)}50%{box-shadow:0 0 0 4px var(--alpha-error-30)}}.ui-voice-pulse{animation:voice-pulse 1.2s ease-in-out infinite;color:var(--error)}@media(prefers-reduced-motion:reduce){.ui-voice-pulse{animation:none;outline:2px solid var(--error);outline-offset:2px}}.ui-input-with-voice{display:flex;align-items:center;gap:var(--space-1)}.ui-input-with-voice>input,.ui-input-with-voice>select,.ui-input-with-voice>textarea{flex:1;min-width:0}@media print{nav,aside,header,footer,[role=navigation],[role=complementary],[role=banner],[aria-label=sidebar],[data-print=hide]{display:none!important}button,input,select,textarea,.ui-btn,.ui-toolbar,[role=toolbar]{display:none!important}main,[role=main]{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}body{background:#fff!important;color:#000!important;font-size:12pt!important}[data-print=show],.notepad-preview,[role=article]{display:block!important;color:#000!important;background:#fff!important}pre,blockquote,table,figure,img{-moz-column-break-inside:avoid;break-inside:avoid}a[href]:after{content:" (" attr(href) ")";font-size:.8em;color:var(--text-secondary)}a[href^="#"]:after,a[href^=javascript]:after{content:""}.presentation-mode{position:static!important;background:#fff!important}.presentation-slide{-moz-column-break-after:page;break-after:page;min-height:auto!important;padding:2rem!important;background:#fff!important;color:#000!important}.presentation-exit-btn,.presentation-controls-overlay,.presentation-thumbnails,.presentation-bottom-bar,.presentation-speaker-notes{display:none!important}}[data-theme=dark]{color-scheme:dark;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .35);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .5);--shadow-xl: 0 8px 32px rgba(0, 0, 0, .6);scrollbar-color:#555 #1e1e1e}[data-theme=dark] ::-webkit-scrollbar{width:10px;height:10px}[data-theme=dark] ::-webkit-scrollbar-track{background:#1e1e1e}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#555;border-radius:5px}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#777}[data-theme=dark] .ui-dialog-backdrop{background:#000000b3}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .35);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .5);--shadow-xl: 0 8px 32px rgba(0, 0, 0, .6)}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ui-skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--surface-hover) 50%,var(--surface) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm);color:transparent!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.ui-skeleton-text{height:1em;width:80%;margin-bottom:var(--space-2)}.ui-skeleton-heading{height:1.5em;width:50%;margin-bottom:var(--space-3)}.ui-skeleton-avatar{width:2.5rem;height:2.5rem;border-radius:var(--radius-full)}.ui-skeleton-card{height:8rem;width:100%;border-radius:var(--radius-md)}.ui-table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:var(--border-width) solid var(--border);border-radius:var(--radius-md)}.ui-table-responsive .ui-table{border:none;margin:0}.ui-table-sticky thead th{position:sticky;top:0;z-index:var(--z-sticky);background:var(--surface);box-shadow:inset 0 -2px 0 var(--border)}.ui-table tbody tr:hover td,.ui-table-striped tbody tr:hover td{background:var(--surface-hover)}.capabilities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:var(--space-3);margin-bottom:var(--space-3)}.capability-card{display:flex;flex-direction:column;padding:var(--space-3) var(--space-4);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius);transition:border-color .15s,background .15s}.capability-card:hover{border-color:var(--accent);background:var(--surface-hover)}.capability-card:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.capability-card-title{font-size:var(--font-md, 1rem);font-weight:700;color:var(--accent);margin:0 0 var(--space-2)}.capability-card-desc{font-size:var(--font-sm);color:var(--text);line-height:1.55;margin:0 0 var(--space-2);flex:1}.capability-card-tools{font-size:.75rem;color:var(--text-secondary);line-height:1.4;margin:0;padding-top:var(--space-2);border-top:1px solid var(--border)}.demo-slideshow{margin:0 auto 2rem;max-width:54rem;border:var(--border-width) solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.demo-slideshow-viewport{position:relative;min-height:10rem}.demo-slide{display:none;padding:var(--space-4) var(--space-5);gap:var(--space-4);align-items:flex-start;animation:slideFadeIn .4s ease-out}.demo-slide-active{display:flex}@keyframes slideFadeIn{0%{opacity:0;transform:translate(1rem)}to{opacity:1;transform:translate(0)}}.demo-slide-icon{font-size:2.5rem;flex-shrink:0;line-height:1;margin-top:.25rem}.demo-slide-content{flex:1;min-width:0}.demo-slide-title{font-size:var(--font-lg, 1.25rem);font-weight:700;margin:0 0 var(--space-2);color:var(--accent)}.demo-slide-desc{font-size:var(--font-sm);line-height:1.6;color:var(--text-secondary);margin:0 0 var(--space-2)}.demo-slideshow-controls{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:var(--border-width) solid var(--border)}.demo-slideshow-btn{background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:1.5rem;line-height:1;padding:var(--space-1);min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);transition:color .15s,background .15s}.demo-slideshow-btn:hover{background:var(--surface-hover)}.demo-slideshow-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.demo-slideshow-dots{display:flex;gap:var(--space-2);align-items:center}.demo-slideshow-dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--text-secondary);background:transparent;cursor:pointer;padding:0;transition:background .15s,border-color .15s}.demo-slideshow-dot.active{background:var(--accent);border-color:var(--accent)}.demo-slideshow-dot:hover{border-color:var(--accent)}.demo-slideshow-dot:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.tool-gallery-section{margin:0 auto 2rem;max-width:64rem}.tool-gallery-heading{font-size:var(--font-lg, 1.25rem);font-weight:700;text-align:center;margin-bottom:var(--space-3)}.tool-gallery-grid{display:flex;gap:var(--space-3);animation:slideFadeIn .4s ease-out}.tool-gallery-grid>*{flex:1 1 0;min-width:0}.tool-gallery-card{display:flex;flex-direction:column;border:var(--border-width) solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;transition:border-color .15s,box-shadow .15s}.tool-gallery-card:hover{border-color:var(--accent);box-shadow:0 2px 12px #0003}.tool-gallery-card:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.tool-gallery-card-name{padding:var(--space-2) var(--space-3);font-size:var(--font-sm);font-weight:700;text-transform:capitalize;color:var(--accent);border-bottom:var(--border-width) solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-gallery-card-preview{height:10rem;overflow:hidden;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;background:var(--bg);border-top:var(--border-width) solid var(--border)}.tool-gallery-card-preview[inert] *:focus{outline:none;box-shadow:none}.tool-gallery-card-preview button,.tool-gallery-card-preview input,.tool-gallery-card-preview select,.tool-gallery-card-preview textarea,.tool-gallery-card-preview a,.tool-gallery-card-preview [tabindex]{pointer-events:none}.tool-gallery-size-controls{display:flex;align-items:center;gap:var(--space-2)}.tool-gallery-size-controls .ui-btn-sm{min-width:2rem;min-height:2rem;padding:0;font-size:1rem;display:flex;align-items:center;justify-content:center}.experimental-ribbon{position:fixed;top:0;right:0;z-index:calc(var(--z-sticky) + 10);overflow:hidden;width:20rem;height:20rem;pointer-events:none}.experimental-ribbon span{display:block;position:absolute;right:-4.5rem;top:4.5rem;width:24rem;padding:.7rem 0;background:#d32f2f;color:#fff;font-size:.9rem;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:.1em;transform:rotate(45deg);box-shadow:0 2px 8px #0000004d;pointer-events:auto;cursor:help}.experimental-ribbon span:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.experimental-tooltip{display:none;position:fixed;top:7rem;right:1rem;z-index:calc(var(--z-sticky) + 11);max-width:20rem;padding:var(--space-3);background:var(--surface);border:2px solid #d32f2f;border-radius:var(--radius);color:var(--text);font-size:var(--font-sm);line-height:1.5;box-shadow:0 4px 16px #00000040}.experimental-ribbon:hover+.experimental-tooltip,.experimental-ribbon:focus-within+.experimental-tooltip,.experimental-tooltip:hover{display:block}@keyframes ribbon-fade{0%,80%{opacity:1}to{opacity:0;pointer-events:none}}@media(max-width:48rem){.experimental-ribbon{position:fixed;top:0;left:0;right:0;width:auto;height:1.8rem;overflow:visible;border-radius:0}.experimental-ribbon span{position:static;display:block;width:100%;transform:none;border-radius:0;font-size:.7rem;padding:.3rem 0;right:auto;top:auto}.experimental-tooltip{top:2.2rem;right:.5rem;left:.5rem;max-width:none}.ui-toolbar-pinned{top:1.8rem;padding-top:var(--space-1)}body{padding-top:1.8rem}.ui-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-1) var(--space-2);overflow:visible}.ui-toolbar .ui-btn,.ui-toolbar .ui-btn-primary,.ui-toolbar .ui-btn-muted{min-height:36px;min-width:36px;font-size:.7rem;padding:.25rem .5rem;white-space:nowrap;flex:1 1 auto;text-align:center;justify-content:center}.ui-toolbar .ui-select,.ui-toolbar .ui-select-auto{min-height:36px;font-size:.7rem;padding:.25rem 1.5rem .25rem .4rem;flex:1 1 auto}.ui-toolbar .ui-label{font-size:.7rem}}@media(max-width:48rem){.tool-gallery-grid{flex-direction:column}.tool-gallery-grid>*{flex:none;width:100%}.capabilities-grid{grid-template-columns:1fr}}.presentation-mode{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999999;background:#000;display:flex;flex-direction:column;overflow:hidden;color:var(--text);font-family:inherit}.presentation-mode:fullscreen{background:#000}.presentation-exit-btn{position:absolute;top:12px;right:16px;z-index:10;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);padding:6px 12px;font-size:16px;cursor:pointer;opacity:.5;transition:opacity .2s}.presentation-exit-btn:hover,.presentation-exit-btn:focus-visible{opacity:1;background:#fff3;outline:2px solid var(--accent);outline-offset:2px}.presentation-controls-overlay{position:absolute;top:0;left:50%;transform:translate(-50%) translateY(-100%);z-index:10;display:flex;align-items:center;gap:var(--space-3);padding:6px 16px;background:var(--surface);border-radius:0 0 var(--radius-md) var(--radius-md);color:var(--text);border:1px solid var(--border);transition:transform .25s;pointer-events:none}.presentation-mode:hover .presentation-controls-overlay,.presentation-controls-overlay:focus-within{transform:translate(-50%) translateY(0);pointer-events:auto}.presentation-controls-group{display:flex;align-items:center;gap:var(--space-1)}.presentation-control-btn{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 10px;font-size:var(--font-xs);cursor:pointer;transition:background .15s}.presentation-control-btn:hover,.presentation-control-btn:focus-visible{background:var(--surface-hover);outline:2px solid var(--accent);outline-offset:1px}.presentation-control-btn-active{background:var(--accent);color:var(--text)}.presentation-speaker-notes{position:absolute;bottom:48px;left:50%;transform:translate(-50%);z-index:10;width:min(600px,80%);max-height:150px;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3)}.presentation-thumbnails{position:absolute;top:0;left:0;bottom:0;width:180px;z-index:5;background:#000000d9;border-right:1px solid rgba(255,255,255,.15);overflow-y:auto;overscroll-behavior:contain;padding:8px;display:flex;flex-direction:column;gap:6px}.presentation-thumbnail{all:unset;display:block;cursor:pointer;padding:8px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.1);background:#ffffff0a;transition:background .15s,border-color .15s;color:#ffffffb3;font-size:11px}.presentation-thumbnail:hover,.presentation-thumbnail:focus-visible{background:#ffffff1a;border-color:#ffffff4d}.presentation-thumbnail:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.presentation-thumbnail-active{border-color:var(--accent);background:#05a3;color:#fff}.presentation-thumbnail-content{display:flex;gap:6px;align-items:baseline}.presentation-thumbnail-number{font-weight:700;flex-shrink:0}.presentation-thumbnail-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presentation-stage{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;padding:32px 48px}.presentation-thumbnails+.presentation-stage{padding-left:212px}.presentation-slide{background:var(--bg);border-radius:var(--radius-md);padding:48px 56px;max-width:1100px;width:100%;max-height:100%;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 4px 32px #0006;display:flex;flex-direction:column;gap:var(--space-3);transition:opacity .3s ease,transform .3s ease}.presentation-slide-enter{opacity:1;transform:translate(0)}.presentation-slide-exit{opacity:0;transform:translate(-20px)}.presentation-layout-title-only{align-items:center;justify-content:center;text-align:center}.presentation-layout-title-only h1,.presentation-layout-title-only h2,.presentation-layout-title-only h3{font-size:2.5rem}.presentation-layout-title-only p,.presentation-layout-title-only .ui-caption{font-size:1.25rem}.presentation-two-column{display:flex;gap:var(--space-4);width:100%}.presentation-two-column>.presentation-column{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}.presentation-image-left{display:flex;gap:var(--space-4);width:100%}.presentation-column-40{flex:0 0 40%;min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}.presentation-column-60{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}.presentation-bottom-bar{flex-shrink:0;display:flex;flex-direction:column;align-items:center}.presentation-progress{width:100%;height:3px;background:#ffffff1a}.presentation-progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.presentation-counter{color:#fff9;font-size:12px;padding:4px 0 8px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.quick-switcher-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.quick-switcher-modal{background:var(--bg);border:var(--border-width, 1px) solid var(--border);border-radius:var(--radius-lg, .75rem);box-shadow:0 8px 32px #00000040;width:100%;max-width:32rem;overflow:hidden}.quick-switcher-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--font-lg);border:none;border-bottom:1px solid var(--border);background:var(--bg);color:var(--text);outline:none;box-sizing:border-box}.quick-switcher-input:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.quick-switcher-input::-moz-placeholder{color:var(--text-secondary)}.quick-switcher-input::placeholder{color:var(--text-secondary)}.quick-switcher-results{list-style:none;margin:0;padding:var(--space-1) 0;max-height:20rem;overflow-y:auto;overscroll-behavior:contain}.quick-switcher-item{display:flex;align-items:center;padding:var(--space-2) var(--space-3);cursor:pointer;font-size:var(--font-sm);color:var(--text);transition:background .1s}.quick-switcher-item:hover,.quick-switcher-item.active{background:var(--surface-hover)}.quick-switcher-item.active{outline:2px solid var(--focus-ring);outline-offset:-2px}.ui-panel,.ui-panel-inset,.ui-card,.ui-widget-content,.nav-card,fieldset,[role=dialog],[role=alertdialog],.ui-toolbar,.ui-toolbar-sm,details,.ui-sidebar,.ui-sidebar-section{background-image:linear-gradient(180deg,var(--depth-face-light, transparent),transparent 50%);box-shadow:0 calc(1px * var(--depth-strength, .15)) 0 var(--depth-ledge, transparent),0 calc(1px * var(--depth-strength, .15)) calc(3px * var(--depth-strength, .15)) var(--depth-shadow-soft, transparent),inset 0 1px 0 var(--depth-highlight, transparent);transition:box-shadow .2s ease,transform .2s ease}.ui-widget-content,.ui-panel-inset,[role=dialog],[role=alertdialog]{box-shadow:0 calc(1px * var(--depth-strength, .15)) 0 var(--depth-ledge, transparent),0 calc(2px * var(--depth-strength, .15)) calc(6px * var(--depth-strength, .15)) var(--depth-shadow, transparent),inset 0 1px 0 var(--depth-highlight, transparent)}.ui-btn,.ui-btn-sm,.ui-btn-primary,.ui-btn-danger-fill{position:relative;background-image:linear-gradient(to bottom,var(--depth-face-light, transparent),var(--depth-face-dark, transparent));box-shadow:0 calc(1px * var(--depth-strength, .15)) 0 var(--depth-ledge, transparent),0 calc(2px * var(--depth-strength, .15)) calc(4px * var(--depth-strength, .15)) var(--depth-shadow, transparent),inset 0 1px 0 var(--depth-highlight, transparent);transition:box-shadow .12s ease,transform .1s ease}.ui-btn:hover:not(:disabled),.ui-btn-sm:hover:not(:disabled),.ui-btn-primary:hover:not(:disabled),.ui-btn-danger-fill:hover:not(:disabled){transform:translateY(calc(-1px * var(--depth-strength, .15)));box-shadow:0 calc(2px * var(--depth-strength, .15)) 0 var(--depth-ledge, transparent),0 calc(3px * var(--depth-strength, .15)) calc(6px * var(--depth-strength, .15)) var(--depth-shadow, transparent),inset 0 1px 0 var(--depth-highlight, transparent)}.ui-btn:active:not(:disabled),.ui-btn-sm:active:not(:disabled),.ui-btn-primary:active:not(:disabled),.ui-btn-danger-fill:active:not(:disabled){background-image:linear-gradient(to bottom,var(--depth-face-dark, transparent),var(--depth-face-light, transparent));box-shadow:inset 0 calc(1px * var(--depth-strength, .15)) calc(2px * var(--depth-strength, .15)) var(--depth-shadow, transparent);transform:translateY(calc(1px * var(--depth-strength, .15)))}.ui-chip{background-image:linear-gradient(to bottom,var(--depth-face-light, transparent),var(--depth-face-dark, transparent));box-shadow:0 calc(1px * var(--depth-strength, .15)) 0 var(--depth-ledge, transparent),0 calc(1px * var(--depth-strength, .15)) calc(2px * var(--depth-strength, .15)) var(--depth-shadow-soft, transparent),inset 0 1px 0 var(--depth-highlight, transparent);transition:box-shadow .12s ease,transform .1s ease}.ui-chip:hover{transform:translateY(calc(-1px * var(--depth-strength, .15)))}.ui-chip:active{background-image:linear-gradient(to bottom,var(--depth-face-dark, transparent),var(--depth-face-light, transparent));box-shadow:inset 0 1px 2px var(--depth-shadow-soft, transparent);transform:translateY(calc(1px * var(--depth-strength, .15)))}.ui-chip--active,.ui-chip[aria-pressed=true]{background-image:none;box-shadow:inset 0 1px 2px var(--depth-shadow-soft, transparent);transform:none}.ui-input,.ui-textarea,select.ui-input{background-image:linear-gradient(180deg,var(--depth-face-dark, transparent),transparent 40%);box-shadow:inset 0 calc(1px * var(--depth-strength, .15)) calc(2px * var(--depth-strength, .15)) var(--depth-shadow-soft, transparent);transition:box-shadow .15s ease}.ui-panel-inset:hover,.ui-card:hover,.ui-widget-content:hover,.nav-card:hover{transform:translateY(calc(-1px * var(--depth-strength, .15)));box-shadow:0 calc(2px * var(--depth-strength, .15)) 0 var(--depth-ledge, transparent),0 calc(4px * var(--depth-strength, .15)) calc(10px * var(--depth-strength, .15)) var(--depth-shadow, transparent),inset 0 1px 0 var(--depth-highlight, transparent)}.ui-table tbody tr:hover td{background:var(--surface-hover)}.ui-list-item:hover{transform:translate(calc(2px * var(--depth-strength, .15)));transition:all .12s ease}[data-accent-style=gradient] .ui-btn-primary{background-image:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%)!important}[data-accent-style=glow] .ui-btn-primary{background-image:none}[data-glow-effect=subtle] .ui-btn:hover:not(:disabled),[data-glow-effect=subtle] .ui-chip:hover,[data-glow-effect=subtle] .ui-card:hover,[data-glow-effect=subtle] .ui-panel-inset:hover,[data-glow-effect=subtle] a:hover{box-shadow:0 calc(2px * var(--depth-strength, .15)) 0 var(--depth-ledge, transparent),0 calc(3px * var(--depth-strength, .15)) calc(6px * var(--depth-strength, .15)) var(--depth-shadow, transparent),0 0 2px var(--alpha-accent-6)}[data-glow-effect=vivid] .ui-btn:hover:not(:disabled),[data-glow-effect=vivid] .ui-chip:hover,[data-glow-effect=vivid] .ui-card:hover,[data-glow-effect=vivid] .ui-panel-inset:hover,[data-glow-effect=vivid] .ui-widget-content:hover,[data-glow-effect=vivid] a:hover{box-shadow:0 calc(2px * var(--depth-strength, .15)) 0 var(--depth-ledge, transparent),0 calc(3px * var(--depth-strength, .15)) calc(6px * var(--depth-strength, .15)) var(--depth-shadow, transparent),0 0 4px var(--alpha-accent-12)}@keyframes focus-glow-pulse{0%,to{box-shadow:0 0 0 2px var(--focus-ring),0 0 8px var(--alpha-focus-40)}50%{box-shadow:0 0 0 2px var(--focus-ring),0 0 16px var(--alpha-focus-60)}}[data-glow-effect=subtle] :focus-visible{box-shadow:0 0 0 2px var(--focus-ring),0 0 2px var(--alpha-focus-10)!important}[data-glow-effect=vivid] :focus-visible{box-shadow:0 0 0 2px var(--focus-ring),0 0 4px var(--alpha-focus-18)!important}[data-surface-style=gradient] .ui-panel,[data-surface-style=gradient] .ui-card,[data-surface-style=gradient] .ui-widget-content{background-image:linear-gradient(135deg,rgba(255,255,255,.06) 0%,transparent 40%,rgba(0,0,0,.04) 100%)}[data-surface-style=gradient] .ui-panel-inset{background-image:linear-gradient(180deg,rgba(255,255,255,.05) 0%,transparent 60%,rgba(0,0,0,.03) 100%)}[data-surface-style=glass] .ui-panel,[data-surface-style=glass] .ui-card,[data-surface-style=glass] .ui-widget-content{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-color:var(--alpha-surface-75)!important;border-color:var(--alpha-border-60)}[data-surface-style=glass] .ui-panel-inset{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:var(--alpha-surface-65)!important}[data-accent-style=glow] .ui-btn-primary{box-shadow:0 0 10px var(--accent),0 0 20px var(--alpha-accent-40),0 0 40px var(--alpha-accent-15)}[data-accent-style=glow] .ui-btn-primary:hover{box-shadow:0 0 14px var(--accent),0 0 28px var(--alpha-accent-50),0 0 56px var(--alpha-accent-20)}.theme-morph,.theme-morph *,.theme-morph *:before,.theme-morph *:after{transition:background-color var(--theme-transition-duration, .3s) var(--theme-transition-easing, ease),color var(--theme-transition-duration, .3s) var(--theme-transition-easing, ease),border-color var(--theme-transition-duration, .3s) var(--theme-transition-easing, ease),box-shadow var(--theme-transition-duration, .3s) var(--theme-transition-easing, ease),outline-color var(--theme-transition-duration, .3s) var(--theme-transition-easing, ease),fill var(--theme-transition-duration, .3s) var(--theme-transition-easing, ease),stroke var(--theme-transition-duration, .3s) var(--theme-transition-easing, ease)}.theme-morph .no-theme-transition,.theme-morph .no-theme-transition *,.reduce-motion .theme-morph *,.reduce-motion .theme-morph *:before,.reduce-motion .theme-morph *:after{transition:none!important}:root:not(.reduce-motion) #root{filter:var(--color-filter, none)}#root:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:var(--gradient-bg-overlay, none)}[data-backdrop-blur=subtle] .ui-panel,[data-backdrop-blur=subtle] .tools-panel,[data-backdrop-blur=medium] .ui-panel,[data-backdrop-blur=medium] .tools-panel{-webkit-backdrop-filter:blur(var(--backdrop-blur, 0px));backdrop-filter:blur(var(--backdrop-blur, 0px))}[data-backdrop-blur=heavy] .ui-panel,[data-backdrop-blur=heavy] .tools-panel{-webkit-backdrop-filter:blur(var(--backdrop-blur, 0px));backdrop-filter:blur(var(--backdrop-blur, 0px));background:var(--alpha-surface-80)}[data-backdrop-blur=subtle] .ui-panel{background:var(--alpha-surface-92)}[data-backdrop-blur=medium] .ui-panel{background:var(--alpha-surface-85)}[data-transition-mode=cinematic] .theme-morph{transition:background-color var(--theme-transition-duration, .8s) var(--theme-transition-easing, ease),color var(--theme-transition-duration, .8s) var(--theme-transition-easing, ease),border-color var(--theme-transition-duration, .8s) var(--theme-transition-easing, ease),box-shadow var(--theme-transition-duration, .8s) var(--theme-transition-easing, ease),filter var(--theme-transition-duration, .8s) var(--theme-transition-easing, ease),opacity var(--theme-transition-duration, .8s) var(--theme-transition-easing, ease)}@keyframes color-anim-rainbow{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(var(--color-anim-range, 360deg))}}.color-anim-rainbow #root{animation:color-anim-rainbow var(--color-anim-duration, 6s) linear infinite alternate}@keyframes color-anim-breathe{0%,to{filter:saturate(.7) brightness(.95)}50%{filter:saturate(1.4) brightness(1.12)}}.color-anim-breathe #root{animation:color-anim-breathe var(--color-anim-duration, 6s) ease-in-out infinite}@keyframes color-anim-drift{0%,to{filter:hue-rotate(0deg)}50%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) / 2))}}.color-anim-drift #root{animation:color-anim-drift calc(var(--color-anim-duration, 6s) * 2) ease-in-out infinite}@keyframes color-anim-pulse{0%,to{filter:brightness(1) drop-shadow(0 0 0px transparent)}50%{filter:brightness(1.2) drop-shadow(0 0 12px var(--accent))}}.color-anim-pulse #root{animation:color-anim-pulse var(--color-anim-duration, 6s) ease-in-out infinite}@keyframes color-anim-flow{0%{filter:hue-rotate(0deg) saturate(1) brightness(1)}25%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .25)) saturate(1.25) brightness(1.08)}50%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .5)) saturate(.75) brightness(.92)}75%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .75)) saturate(1.15) brightness(1.1)}to{filter:hue-rotate(var(--color-anim-range, 360deg)) saturate(1) brightness(1)}}.color-anim-flow #root{animation:color-anim-flow var(--color-anim-duration, 6s) ease-in-out infinite alternate}@keyframes color-anim-strobe{0%,to{filter:brightness(1)}25%{filter:brightness(1.3) saturate(1.4)}50%{filter:brightness(.85) saturate(.7)}75%{filter:brightness(1.2) saturate(1.2)}}.color-anim-strobe #root{animation:color-anim-strobe-safe var(--color-anim-duration, 6s) steps(4) infinite}@keyframes color-anim-aurora{0%{filter:hue-rotate(0deg) saturate(1.1) brightness(1)}16%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .15)) saturate(1.3) brightness(1.05)}33%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .33)) saturate(.9) brightness(.97)}50%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .5)) saturate(1.2) brightness(1.08)}66%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .66)) saturate(1.4) brightness(1.02)}83%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .83)) saturate(.85) brightness(1.06)}to{filter:hue-rotate(var(--color-anim-range, 360deg)) saturate(1.1) brightness(1)}}.color-anim-aurora #root{animation:color-anim-aurora calc(var(--color-anim-duration, 6s) * 1.5) ease-in-out infinite alternate}@keyframes color-anim-neon{0%,to{filter:hue-rotate(0deg) saturate(2) brightness(1.1) contrast(1.1)}33%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .33)) saturate(2.5) brightness(1.2) contrast(1.15)}66%{filter:hue-rotate(calc(var(--color-anim-range, 360deg) * .66)) saturate(1.8) brightness(1.15) contrast(1.1)}}.color-anim-neon #root{animation:color-anim-neon var(--color-anim-duration, 6s) linear infinite alternate}@keyframes color-anim-waves{0%,to{filter:brightness(1) hue-rotate(0deg)}20%{filter:brightness(1.06) hue-rotate(calc(var(--color-anim-range, 360deg) * .05))}40%{filter:brightness(.94) hue-rotate(calc(var(--color-anim-range, 360deg) * .08))}60%{filter:brightness(1.08) hue-rotate(calc(var(--color-anim-range, 360deg) * .03))}80%{filter:brightness(.96) hue-rotate(calc(var(--color-anim-range, 360deg) * .06))}}.color-anim-waves #root{animation:color-anim-waves var(--color-anim-duration, 6s) ease-in-out infinite}.reduce-motion [class*=color-anim-] #root,.reduce-motion.color-anim-rainbow #root,.reduce-motion.color-anim-breathe #root,.reduce-motion.color-anim-drift #root,.reduce-motion.color-anim-pulse #root,.reduce-motion.color-anim-flow #root,.reduce-motion.color-anim-strobe #root,.reduce-motion.color-anim-aurora #root,.reduce-motion.color-anim-neon #root,.reduce-motion.color-anim-waves #root{animation:none!important}@media(prefers-reduced-motion:reduce){[class*=color-anim-] #root{animation:none!important}}.color-anim-strobe #root{--strobe-max-brightness: 1.12;--strobe-min-brightness: .92}@keyframes color-anim-strobe-safe{0%,to{filter:brightness(1)}25%{filter:brightness(var(--strobe-max-brightness, 1.12)) saturate(1.15)}50%{filter:brightness(var(--strobe-min-brightness, .92)) saturate(.9)}75%{filter:brightness(var(--strobe-max-brightness, 1.12)) saturate(1.1)}}:root[style*=--contrast-boost] .ui-panel,:root[style*=--contrast-boost] .ui-toolbar-sm{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.focus-mode-controls{position:fixed;top:var(--space-2);right:var(--space-2);z-index:100;display:flex;gap:var(--space-1)}
