@import "https://fonts.googleapis.com/css2?family=Kodchasan:wght@600;700&display=swap";.\!container{width:100%!important}.container{width:100%}@media (width>=640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (width>=768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (width>=1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (width>=1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (width>=1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-x-0{left:0;right:0}.bottom-2{bottom:.5rem}.left-2{left:.5rem}.right-2{right:.5rem}.right-3{right:.75rem}.top-0{top:0}.top-1\/2{top:50%}.top-12{top:3rem}.top-16{top:4rem}.top-2{top:.5rem}.top-3{top:.75rem}.z-10{z-index:10}.z-20{z-index:20}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.ml-auto{margin-left:auto}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.inline-block{display:inline-block}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-2{height:.5rem}.h-40{height:10rem}.h-7{height:1.75rem}.h-\[520px\]{height:520px}.h-full{height:100%}.max-h-48{max-height:12rem}.w-16{width:4rem}.w-2{width:.5rem}.w-24{width:6rem}.w-4{width:1rem}.w-7{width:1.75rem}.w-full{width:100%}.min-w-\[160px\]{min-width:160px}.min-w-\[720px\]{min-width:720px}.max-w-\[160px\]{max-width:160px}.max-w-\[72px\]{max-width:72px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize-none{resize:none}.grid-cols-\[28px_42px_minmax\(0\,1fr\)\]{grid-template-columns:28px 42px minmax(0,1fr)}.grid-cols-\[7\.25rem_minmax\(0\,8ch\)\]{grid-template-columns:7.25rem minmax(0,8ch)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-border\/20{border-color:rgb(var(--tw-color-border,92 109 127) / .2)}.border-destructive\/30{border-color:rgb(var(--tw-color-destructive,180 35 24) / .3)}.border-red-500\/60{border-color:#ef444499}.border-white\/10{border-color:#ffffff1a}.border-white\/15{border-color:#ffffff26}.border-white\/20{border-color:#fff3}.bg-\[\#0f172a\]{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-\[\#1e40af\]{--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity,1))}.bg-\[\#22c55e\]{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-\[\#9ca3af\]{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.bg-\[\#ef4444\]{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-amber-600\/70{background-color:#d97706b3}.bg-amber-700\/60{background-color:#b4530999}.bg-background{--tw-bg-opacity:1;background-color:rgb(var(--tw-color-background,12 20 28) / var(--tw-bg-opacity,1))}.bg-black\/50{background-color:#00000080}.bg-blue-700\/60{background-color:#1d4ed899}.bg-card{--tw-bg-opacity:1;background-color:rgb(var(--tw-color-card,16 25 34) / var(--tw-bg-opacity,1))}.bg-destructive\/10{background-color:rgb(var(--tw-color-destructive,180 35 24) / .1)}.bg-muted\/20{background-color:rgb(var(--tw-color-muted,22 32 44) / .2)}.bg-muted\/30{background-color:rgb(var(--tw-color-muted,22 32 44) / .3)}.bg-muted\/40{background-color:rgb(var(--tw-color-muted,22 32 44) / .4)}.bg-muted\/80{background-color:rgb(var(--tw-color-muted,22 32 44) / .8)}.bg-primary{--tw-bg-opacity:1;background-color:rgb(var(--tw-color-primary,79 167 255) / var(--tw-bg-opacity,1))}.bg-primary\/15{background-color:rgb(var(--tw-color-primary,79 167 255) / .15)}.bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.bg-red-950\/80{background-color:#450a0acc}.bg-slate-950\/30{background-color:#0206174d}.bg-violet-500\/20{background-color:#8b5cf633}.bg-white\/10{background-color:#ffffff1a}.bg-white\/5{background-color:#ffffff0d}.p-2{padding:.5rem}.p-4{padding:1rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pl-2{padding-left:.5rem}.pr-2{padding-right:.5rem}.pt-1{padding-top:.25rem}.pt-\[2px\]{padding-top:2px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-\[10px\]{font-size:10px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.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)}.leading-none{line-height:1}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-wide{letter-spacing:.025em}.text-amber-100{--tw-text-opacity:1;color:rgb(254 243 199/var(--tw-text-opacity,1))}.text-amber-200{--tw-text-opacity:1;color:rgb(253 230 138/var(--tw-text-opacity,1))}.text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.text-amber-300\/80{color:#fcd34dcc}.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.text-blue-200{--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity,1))}.text-card-foreground{--tw-text-opacity:1;color:rgb(var(--tw-color-card-foreground,237 243 250) / var(--tw-text-opacity,1))}.text-destructive{--tw-text-opacity:1;color:rgb(var(--tw-color-destructive,180 35 24) / var(--tw-text-opacity,1))}.text-emerald-200{--tw-text-opacity:1;color:rgb(167 243 208/var(--tw-text-opacity,1))}.text-emerald-50{--tw-text-opacity:1;color:rgb(236 253 245/var(--tw-text-opacity,1))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.text-sky-200{--tw-text-opacity:1;color:rgb(186 230 253/var(--tw-text-opacity,1))}.text-sky-50{--tw-text-opacity:1;color:rgb(240 249 255/var(--tw-text-opacity,1))}.text-violet-400{--tw-text-opacity:1;color:rgb(167 139 250/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/45{color:#ffffff73}.text-white\/50{color:#ffffff80}.text-white\/60{color:#fff9}.text-white\/70{color:#ffffffb3}.text-white\/80{color:#fffc}.text-white\/85{color:#ffffffd9}.accent-primary{accent-color:rgb(var(--tw-color-primary,79 167 255) / 1)}.opacity-40{opacity:.4}.opacity-45{opacity:.45}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.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)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--tw-color-background:12 20 28;--tw-color-foreground:237 243 250;--tw-color-card:16 25 34;--tw-color-card-foreground:237 243 250;--tw-color-muted:22 32 44;--tw-color-primary:79 167 255;--tw-color-destructive:180 35 24;--tw-color-ring:79 167 255;--tw-color-border:92 109 127}.site-shell{min-height:100vh;padding:32px 20px 64px}.site-shell--standalone{padding:0}.site-header,.site-nav,.site-main,.site-footer{width:min(1120px,100%);margin:0 auto}.site-main--standalone{width:100%;max-width:none;margin:0}.site-header{gap:12px;padding:24px 0 28px;display:grid}.site-brand{gap:6px;display:grid}.site-header__top{justify-content:space-between;align-items:start;gap:18px;display:flex}.site-header__actions{flex-wrap:wrap;justify-content:end;align-items:start;gap:12px;display:flex}.site-header h1,.page h2,.status-panel h3{margin:0}.site-kicker,.page-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);margin:0;font-size:.8rem;font-weight:700}.site-title{letter-spacing:.08em;color:var(--color-primary-strong);text-shadow:0 2px 0 color-mix(in srgb, var(--color-primary) 28%, transparent), 0 12px 30px color-mix(in srgb, var(--color-shadow) 72%, transparent);flex-wrap:wrap;align-items:baseline;gap:.18em;margin:0;font-family:Kodchasan,Avenir Next,Segoe UI,sans-serif;font-size:clamp(3.1rem,6.4vw,5.9rem);font-weight:700;line-height:.9;display:inline-flex}.site-title__mark,.site-title__name{display:inline-block;position:relative}.site-title__mark{border:1px solid color-mix(in srgb, var(--color-accent) 32%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 10%, transparent), 0 10px 24px color-mix(in srgb, var(--color-shadow) 34%, transparent);border-radius:.22em;padding:.06em .18em .1em}.site-subtitle{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:.98rem}.site-summary,.page-summary{max-width:68ch;color:var(--color-text-muted);margin:0}.page-summary a{color:#2563eb;text-underline-offset:.18em;text-decoration:underline;text-decoration-thickness:1.5px}.page-summary a:hover{color:#1d4ed8}.theme-switcher{position:relative}.site-user-badge{border:1px solid var(--color-border);background:var(--color-nav-surface);border-radius:18px;gap:2px;min-width:180px;padding:10px 14px;display:grid}.site-user-badge strong{font-size:.95rem}.site-user-badge span{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}.theme-switcher__trigger{border:1px solid var(--color-border);background:var(--color-nav-surface);color:var(--color-accent);cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;transition:border-color .16s,transform .16s,background-color .16s;display:inline-flex}.theme-switcher__trigger:hover{border-color:var(--color-accent);transform:translateY(-1px)}.theme-switcher__trigger svg{fill:currentColor;width:18px;height:18px}.theme-switcher__menu{z-index:10;border:1px solid var(--color-border);background:var(--color-surface);width:min(340px,100vw - 40px);box-shadow:0 18px 40px var(--color-shadow);border-radius:20px;padding:14px;position:absolute;top:calc(100% + 12px);right:0}.theme-switcher__label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;font-size:.88rem}.theme-switcher__options{gap:10px;display:grid}.theme-option{border:1px solid var(--color-border);background:var(--color-surface-muted);width:100%;color:var(--color-text);text-align:left;cursor:pointer;border-radius:16px;gap:4px;padding:12px 14px;transition:border-color .16s,background-color .16s,transform .16s;display:grid}.theme-option:hover{border-color:var(--color-accent);transform:translateY(-1px)}.theme-option span{color:var(--color-text-muted);font-size:.92rem}.theme-option--active{border-color:var(--color-primary);background:var(--color-option-active,var(--color-surface))}.site-nav{flex-wrap:wrap;gap:10px;padding:0 0 28px;display:flex}.site-nav__link{border:1px solid var(--color-border);background:var(--color-nav-surface);color:var(--color-accent);border-radius:999px;padding:10px 14px;transition:border-color .16s,background-color .16s,color .16s,transform .16s}.cnc-results--placeholder,.cnc-card--placeholder{position:relative}.cnc-wiring-badge{z-index:1;color:#fde68a;letter-spacing:.14em;text-transform:uppercase;pointer-events:none;background:#a16207d1;border:1px solid #f59e0b94;border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:800;position:absolute;top:14px;right:16px;box-shadow:0 6px 18px #00000047}.site-nav__link:hover{border-color:var(--color-accent);background:var(--color-nav-hover);color:var(--color-primary-strong);transform:translateY(-1px)}.site-nav__link--active{border-color:var(--color-primary);background:var(--color-nav-active);color:var(--color-primary-strong)}.site-main{border:1px solid var(--color-border);background:var(--color-main-surface);box-shadow:0 24px 60px var(--color-shadow);border-radius:28px;padding:28px}.site-footer{padding:24px 0 0}.site-footer__content{border-top:1px solid var(--color-border);justify-content:space-between;gap:20px;padding-top:20px;display:flex}.site-footer__summary{max-width:48ch;color:var(--color-text-muted);margin:8px 0 0}.site-footer__links{flex-wrap:wrap;align-items:start;gap:14px;display:flex}.page--cnc-local{--color-border:#5c6d7f6b;--color-border-strong:#7a8ca199;--color-panel-surface:#101922;--color-surface:#0c141c;--color-nav-surface:#12202c;--color-nav-hover:#162635;--color-nav-active:#183244;--color-text:#edf3fa;--color-text-muted:#96acbf;--color-shadow:#00000094;--color-accent:#8fc8ff;--color-primary:#4fa7ff;--color-primary-strong:#cbe6ff;background:radial-gradient(circle at 100% 0,#4fa7ff1f,#0000 32%),linear-gradient(#070c12f5,#0a1118fa);border:1px solid #5c6d7f4d;border-radius:28px;gap:24px;padding:24px;display:grid;box-shadow:inset 0 1px #ffffff08,0 22px 60px #00000038}.page--cnc-local h2,.page--cnc-local h3,.page--cnc-local h4,.page--cnc-local strong,.page--cnc-local code{color:var(--color-text)}.page--cnc-local .page-summary,.page--cnc-local .page-eyebrow{color:var(--color-text-muted)}.cnc-dialog-backdrop{z-index:40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#060a0e85;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.cnc-dialog{border:1px solid var(--color-border-strong);background:var(--color-surface);width:min(520px,100%);box-shadow:0 28px 70px color-mix(in srgb, var(--color-shadow) 80%, transparent);border-radius:26px;padding:24px}.cnc-dialog h3{margin:8px 0 0}.cnc-dialog__detail,.cnc-dialog__warning{color:var(--color-text-muted);margin:12px 0 0}.cnc-dialog__warning{color:var(--color-primary-strong)}.cnc-dialog__actions{justify-content:end;gap:12px;margin-top:20px;display:flex}.cnc-local__hero{grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);align-items:start;gap:20px;display:grid}.cnc-local__hero-actions{flex-wrap:wrap;gap:12px;margin:0 0 16px;display:flex}.cnc-local__section,.cnc-local__section-stack{gap:18px;display:grid}.cnc-local__stack-item--machines{order:1}.cnc-local__stack-item--connection{order:2}.cnc-local__stack-item--quick-actions{order:3}.cnc-local__stack-item--status{order:4}.cnc-local__section{align-items:start}.cnc-local__tabs,.cnc-local__tab-panel{gap:18px;display:grid}.cnc-local__operate-layout{grid-template-columns:minmax(320px,380px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.cnc-local__operate-sidebar,.cnc-local__operate-main{gap:18px;display:grid}.cnc-local__tab-panel[hidden]{display:none}.cnc-local__section--machine,.cnc-local__section--execution,.cnc-local__section--jog,.cnc-local__section--gcode,.cnc-local__section--machine-detail,.cnc-local__section--diagnostics{padding-top:4px}.cnc-local__endpoint,.cnc-card,.cnc-results{border:1px solid var(--color-border);background:var(--color-panel-surface);box-shadow:inset 0 1px 0 #ffffff08, 0 18px 40px color-mix(in srgb, var(--color-shadow) 80%, transparent);border-radius:24px;padding:20px}.page--cnc-local-standalone{border-left:0;border-right:0;border-radius:0;min-height:100vh}.cnc-programs,.cnc-programs-layout{gap:18px;display:grid}.cnc-programs-layout{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start}.cnc-programs-rail{gap:18px;display:grid}.cnc-selection-list{gap:12px;max-height:24rem;padding-right:4px;display:grid;overflow-y:auto}.cnc-selection-card{border:1px solid color-mix(in srgb, var(--color-border) 88%, transparent);background:color-mix(in srgb, var(--color-panel-surface) 92%, transparent);border-radius:18px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.cnc-selection-card.is-selected{border-color:color-mix(in srgb, var(--color-accent) 70%, white 10%);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-accent) 28%, transparent)}.cnc-selection-card strong{display:block}.cnc-selection-card p{color:var(--color-text-dim);word-break:break-word;margin:4px 0 0;font-size:.78rem}.cnc-programs-execution{min-height:100%}.cnc-card--span-2{grid-column:1/-1}.cnc-card__header,.cnc-results__header{justify-content:space-between;align-items:start;gap:16px;display:flex}.cnc-card__header h3,.cnc-results__header h3{margin:0}.cnc-card__body{gap:14px;margin-top:16px;display:grid}.cnc-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.cnc-field{gap:8px;display:grid}.cnc-field--span-2{grid-column:1/-1}.cnc-field span{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);font-size:.82rem;font-weight:700}.cnc-field input,.cnc-field select,.cnc-field textarea{border:1px solid var(--color-border);width:100%;color:var(--color-text);font:inherit;resize:vertical;background:#080f16eb;border-radius:16px;padding:12px 14px}.cnc-field input:focus,.cnc-field select:focus,.cnc-field textarea:focus{outline:2px solid color-mix(in srgb, var(--color-primary) 45%, transparent);outline-offset:1px;border-color:var(--color-primary)}.action-link--ghost{border:1px solid var(--color-border);color:var(--color-primary-strong);background:#0c141ce0}.action-link--ghost:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-nav-hover)}.action-link:disabled{opacity:.65;cursor:not-allowed}.cnc-inline-actions{flex-wrap:wrap;gap:10px;display:flex}.cnc-inline-actions--quick{justify-content:flex-start}.cnc-command-entry{grid-template-columns:minmax(0,4fr) auto;align-items:center;gap:10px;display:grid}.cnc-command-entry__input{border:1px solid var(--color-border);width:100%;min-width:48ch;color:var(--color-text);font:inherit;background:#080f16eb;border-radius:16px;padding:12px 14px}.cnc-command-entry__input:focus{outline:2px solid color-mix(in srgb, var(--color-primary) 45%, transparent);outline-offset:1px;border-color:var(--color-primary)}.cnc-command-presets,.cnc-command-presets__list{gap:12px;display:grid}.cnc-command-presets__save{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.cnc-command-preset{border:1px solid var(--color-border);background:#0c141ce0;border-radius:18px;justify-content:space-between;gap:16px;padding:14px;display:flex}.cnc-command-preset__body{gap:4px;min-width:0;display:grid}.cnc-command-preset__body strong,.cnc-command-preset__body span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cnc-command-preset__body span{color:var(--color-text-muted);font-size:.82rem}.cnc-jog__feed{max-width:240px}.cnc-jog-controls{flex-wrap:wrap;align-items:end;gap:14px 18px;display:flex}.cnc-jog-layout{gap:18px;display:grid}.cnc-jog-pad{grid-template-columns:repeat(4,minmax(72px,88px));justify-content:start;align-items:center;gap:12px;display:grid}.cnc-jog-pad__cell{min-height:72px}.cnc-jog-pad__cell--center{border:1px solid var(--color-border);width:72px;height:72px;color:var(--color-text-muted);background:radial-gradient(circle,#8fc8ff1a,#0000 62%),#060b12e6;border-radius:999px;place-items:center;display:grid}.cnc-jog-btn,.cnc-jog-rotary__button{border:1px solid var(--color-border-strong);min-height:72px;color:var(--color-text);background:linear-gradient(#172532fa,#0c141cfa);border-radius:999px;place-items:center;gap:4px;padding:10px 12px;transition:border-color .15s,transform .15s,background .15s,box-shadow .15s;display:grid;box-shadow:inset 0 1px #ffffff0a,0 12px 26px #0000002e}.cnc-jog-btn{width:72px}.cnc-jog-btn--vertical{border-color:color-mix(in srgb, var(--color-primary) 40%, var(--color-border-strong));background:linear-gradient(#193549fa,#0e1c28fa)}.cnc-jog-btn:hover:not(:disabled),.cnc-jog-rotary__button:hover:not(:disabled){border-color:var(--color-primary);transform:translateY(-1px)}.cnc-jog-btn:disabled,.cnc-jog-rotary__button:disabled{opacity:.52;cursor:not-allowed}.cnc-jog-btn__icon,.cnc-jog-rotary__icon{width:22px;height:22px;display:inline-flex}.cnc-jog-btn__icon svg,.cnc-jog-rotary__icon svg,.cnc-jog-pad__cell--center svg{width:100%;height:100%}.cnc-jog-btn__axis,.cnc-jog-rotary__axis{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);font-size:.74rem;font-weight:800}.cnc-jog-btn__label,.cnc-jog-rotary__label{font-size:.8rem;font-weight:700}.cnc-jog-rotary{grid-template-columns:repeat(3,minmax(0,max-content));justify-content:start;gap:12px;display:grid}.cnc-jog-rotary__pair{grid-template-columns:repeat(2,minmax(72px,88px));gap:12px;display:grid}.cnc-jog-fine-placeholder{border:1px dashed var(--color-border-strong);background:#080f168f;border-radius:22px;gap:8px;padding:18px;display:grid}.cnc-jog-fine-placeholder span{color:var(--color-text-muted)}.cnc-jog-fine__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:14px 18px;display:flex}.cnc-jog-fine__axis-picker{gap:8px;display:grid}.cnc-jog-fine__axis-picker>span,.cnc-jog-fine__positions span{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);font-size:.78rem;font-weight:700}.cnc-jog-fine__positions{border:1px solid var(--color-border);background:#0a1118e6;border-radius:18px;gap:8px;min-width:220px;padding:14px 16px;display:grid}.cnc-jog-fine__positions div{gap:4px;display:grid}.cnc-jog-fine__positions strong{color:var(--color-text);font-size:.95rem}.cnc-jog-fine__wheel-wrap{justify-content:center;padding:8px 0 4px;display:flex}.cnc-jog-wheel{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:#b7bdc6;border:1px solid #c9d1da52;border-radius:999px;width:260px;height:260px;position:relative;overflow:hidden;box-shadow:inset 0 2px 10px #00000038,0 18px 36px #0000002e}.cnc-jog-wheel:active{cursor:grabbing}.cnc-jog-wheel--active{box-shadow:inset 0 2px 10px #00000038,0 0 0 2px #4fa7ff8c,0 18px 36px #0000002e}.cnc-jog-wheel--disabled{opacity:.48;cursor:not-allowed}.cnc-jog-wheel__image{-o-object-fit:cover;object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cnc-jog-wheel__center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.cnc-jog-wheel__center span{color:#fff;background:#070c12db;border:1px solid #c9d1da42;border-radius:999px;justify-content:center;align-items:center;width:68px;height:68px;font-size:1.3rem;font-weight:700;display:inline-flex}.cnc-jog-wheel__center small{color:#edf3fa;background:#070c12b8;border-radius:999px;margin-top:8px;padding:4px 10px;font-size:.78rem;font-weight:700}.cnc-programs__upload,.cnc-programs__toolbar{gap:10px;display:grid}.cnc-lists{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.cnc-entry-list{gap:12px;margin-top:16px;display:grid}.cnc-entry-list--scroll{max-height:360px;padding-right:6px;overflow:auto}.cnc-entry-list--sd{max-height:260px}.cnc-entry{border:1px solid var(--color-border);background:#0c141ce0;border-radius:18px;justify-content:space-between;gap:16px;padding:14px;display:flex}.cnc-entry--active{border-color:color-mix(in srgb, var(--color-primary) 52%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 10%, #0c141ce0)}.cnc-entry__body{gap:4px;min-width:0;display:grid}.cnc-entry__body strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cnc-entry__body span{color:var(--color-text-muted);font-size:.82rem}.cnc-entry__actions{flex-wrap:wrap;justify-content:end;align-items:start;gap:10px;display:flex}.cnc-card__hint,.cnc-results__status{color:var(--color-text-muted);margin:0}.cnc-card__status,.cnc-card__error{border-radius:16px;margin:0;padding:12px 14px}.cnc-card__status{border:1px solid color-mix(in srgb, var(--color-primary) 24%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface));color:var(--color-primary-strong)}.cnc-card__status--strong{border-color:color-mix(in srgb, #60a5fa 55%, var(--color-border));background:#192b44ee;box-shadow:inset 0 0 0 1px #60a5fa2e}.cnc-card__error,.action-link--danger{border:1px solid color-mix(in srgb, #b42318 36%, var(--color-border));background:color-mix(in srgb, #b42318 8%, var(--color-surface));color:#b42318}.action-link--danger:hover:not(:disabled){background:color-mix(in srgb, #b42318 12%, var(--color-surface));border-color:#b42318}.action-link--success{border:1px solid color-mix(in srgb, #1f8f5f 42%, var(--color-border));background:color-mix(in srgb, #1f8f5f 14%, var(--color-surface));color:#7ee2a8}.action-link--success:hover:not(:disabled){background:color-mix(in srgb, #1f8f5f 20%, var(--color-surface));border-color:#1f8f5f}.cnc-results__error{border:1px solid color-mix(in srgb, #b42318 36%, var(--color-border));color:#b42318;background:color-mix(in srgb, #b42318 8%, var(--color-surface));border-radius:16px;margin:16px 0 0;padding:12px 14px}.cnc-results__payload{color:var(--color-text);background:#060b12f5;border-radius:18px;margin:16px 0 0;padding:16px;font-size:.92rem;overflow:auto}.cnc-results__payload--structured{gap:14px;display:grid}.cnc-response-group{gap:10px;display:grid}.cnc-response-group--card{background:#101822b8;border:1px solid #ffffff14;border-radius:18px;padding:14px 16px}.cnc-response-group--nested{background:#0a101885;border:1px solid #ffffff0f;border-radius:16px;padding:12px 14px}.cnc-response-group__heading{align-items:center;gap:12px;display:flex}.cnc-response-group__heading--highlight{margin-bottom:2px}.cnc-response-group__title{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;margin:0;font-size:.78rem;font-weight:700}.cnc-response-group__title--highlight{color:#dbeafe;letter-spacing:.12em;font-size:.82rem;font-weight:800}.cnc-response-group__rule{background:#ffffff1a;flex:auto;height:1px}.cnc-response-fields,.cnc-response-list{gap:10px;display:grid}.cnc-response-list__item{display:grid}.cnc-response-field{grid-template-columns:minmax(160px,260px) minmax(0,1fr);align-items:start;gap:12px;display:grid}.cnc-response-field span{color:var(--color-text-muted);word-break:break-word;font-size:.82rem}.cnc-response-field strong{color:var(--color-text);word-break:break-word;font-weight:600}.cnc-response-empty{color:var(--color-text-muted);margin:0;font-size:.84rem}.cnc-programs__editor{resize:vertical;white-space:pre;tab-size:2;min-height:320px;max-height:520px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;line-height:1.45;overflow:auto}.cnc-trace-editor{gap:12px;display:grid}.cnc-trace-editor__toolbar{gap:10px;display:grid}.cnc-sim-link-button{appearance:none;color:#e2e8f0c7;cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;line-height:1.2;transition:color .16s}.cnc-sim-link-button:hover:not(:disabled){color:#94a3b8}.cnc-sim-link-button:disabled{cursor:default;opacity:.55}.cnc-sim-link-button--row{justify-content:space-between;align-items:center;width:100%;display:flex}.cnc-sim-link-button--underlined{text-underline-offset:2px;text-decoration:underline}.cnc-trace-editor__meta{color:var(--color-text-muted);flex-wrap:wrap;gap:12px;font-size:.84rem;display:flex}.cnc-trace-editor__actions{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.cnc-trace-editor__search{min-width:220px;color:var(--color-text-muted);gap:4px;font-size:.8rem;display:grid}.cnc-trace-editor__search input{border:1px solid var(--color-border);color:#f4f4f5;background:#070e18f5;border-radius:14px;min-height:40px;padding:0 12px}.cnc-trace-editor__surface{border:1px solid var(--color-border);background:#090d18;border-radius:18px;height:420px;position:relative;overflow:hidden}.cnc-trace-editor__overlay{pointer-events:none;display:flex;position:absolute;inset:0;overflow:hidden}.cnc-trace-editor__gutter{color:#71717a;background:#0003;border-right:1px solid #ffffff14;flex-shrink:0;width:64px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;line-height:20px}.cnc-trace-editor__gutter-line{text-align:left;width:100%;height:20px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:18px 1fr 12px;align-items:center;padding:0 8px;display:grid}.cnc-trace-editor__gutter-line--active{color:#86efac;background:#22c55e33}.cnc-trace-editor__gutter-line--selected{color:#dbeafe;background:#3b82f62e}.cnc-trace-editor__gutter-line--protected{color:#fca5a5}.cnc-trace-editor__gutter-line:disabled{cursor:default;opacity:.65}.cnc-trace-editor__pause-marker{color:#f59e0b;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.cnc-trace-editor__pause-marker--active{color:#fbbf24}.cnc-trace-editor__code{color:#f4f4f5;flex:auto;min-width:0;margin:0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:20px;overflow:hidden}.cnc-trace-editor__code-inner{white-space:pre;min-width:max-content;padding:0 12px}.cnc-trace-editor__code-line{height:20px}.cnc-trace-editor__code-line--active{background:#22c55e33}.cnc-trace-editor__code-line--selected{background:#3b82f624}.cnc-trace-editor__code-line--protected{color:#fecaca}.cnc-trace-editor__textarea{box-sizing:border-box;resize:none;color:#0000;caret-color:#fff;white-space:pre;tab-size:2;background:0 0;border:0;outline:none;padding:8px 12px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:20px;position:absolute;inset:0 0 0 64px;overflow:auto}.cnc-trace-editor__textarea::selection{background:#3b82f64d}.cnc-trace-editor__textarea--readonly{cursor:default}.cnc-trace-editor__match{color:inherit;background:#eab30838}.cnc-trace-editor__match--active{color:#fff7cc;background:#facc1573}.cnc-trace-editor__loading{background:color-mix(in srgb, var(--color-surface) 70%, transparent);color:var(--color-text-muted);place-items:center;font-size:.8rem;display:grid;position:absolute;inset:0}.cnc-trace-panel{gap:12px;display:grid}.cnc-trace-panel__toolbar{gap:10px;display:grid}.cnc-trace-panel__meta{color:var(--color-text-muted);flex-wrap:wrap;gap:12px;font-size:.84rem;display:flex}.cnc-trace-panel__actions{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.cnc-trace-panel__search{min-width:220px;color:var(--color-text-muted);gap:4px;font-size:.8rem;display:grid}.cnc-trace-panel__search input{border:1px solid var(--color-border);color:#f4f4f5;background:#070e18f5;border-radius:14px;min-height:40px;padding:0 12px}.cnc-trace-panel__surface{border:1px solid var(--color-border);background:#090d18;border-radius:18px;max-height:460px;overflow:auto}.cnc-trace-panel__rows{padding:8px 0;display:grid}.cnc-trace-panel__row{grid-template-columns:64px minmax(0,1fr);align-items:stretch;display:grid}.cnc-trace-panel__row--active{background:#22c55e33}.cnc-trace-panel__row--protected{color:#fecaca}.cnc-trace-panel__row--search{background:#facc1524}.cnc-trace-panel__gutter{color:#71717a;background:#0003;border-right:1px solid #ffffff14;grid-template-columns:18px 1fr 12px;align-items:center;gap:6px;padding:0 8px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;line-height:20px;display:grid}.cnc-trace-panel__pause{color:#f59e0b;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.cnc-trace-panel__pause--active{color:#fbbf24}.cnc-trace-panel__code{color:#f4f4f5;white-space:pre-wrap;word-break:break-word;margin:0;padding:0 12px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:20px;overflow:hidden}.cnc-trace-panel__code--muted{color:#71717a}.cnc-run-banner{border:1px solid var(--color-border);border-radius:18px;gap:4px;padding:14px 16px;display:grid}.cnc-run-banner strong{font-size:.95rem}.cnc-run-banner span{color:var(--color-text-muted);font-size:.9rem}.cnc-progress{gap:8px;display:grid}.cnc-progress__meta{color:var(--color-text-muted);letter-spacing:.04em;justify-content:space-between;align-items:center;gap:12px;font-size:.84rem;font-weight:700;display:flex}.cnc-progress__meta strong{color:var(--color-text)}.cnc-progress__track{border:1px solid var(--color-border);background:#080f16eb;border-radius:999px;height:12px;overflow:hidden}.cnc-progress__fill{border-radius:inherit;background:linear-gradient(90deg,#3fb0acf2,#8fc8fff2);height:100%;box-shadow:inset 0 1px #ffffff29}.cnc-run-banner--active{border-color:color-mix(in srgb, #157f3b 36%, var(--color-border));background:color-mix(in srgb, #157f3b 10%, var(--color-surface))}.cnc-run-banner--warning{border-color:color-mix(in srgb, #b26a00 36%, var(--color-border));background:color-mix(in srgb, #b26a00 10%, var(--color-surface))}.cnc-run-banner--error{border-color:color-mix(in srgb, #b42318 36%, var(--color-border));background:color-mix(in srgb, #b42318 10%, var(--color-surface))}.cnc-run-banner--done{border-color:color-mix(in srgb, var(--color-primary) 30%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface))}.cnc-disclosure{border:1px solid var(--color-border);background:#0c141c8a;border-radius:18px}.cnc-disclosure summary{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;color:var(--color-accent);padding:14px 16px;font-size:.88rem;font-weight:700;list-style:none}.cnc-disclosure summary::-webkit-details-marker{display:none}.cnc-disclosure summary:after{content:"+";float:right;color:var(--color-text-muted);font-size:1.35rem;font-weight:900;line-height:1}.cnc-disclosure[open] summary:after{content:"−"}.cnc-disclosure__body{gap:14px;padding:0 16px 16px;display:grid}.cnc-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.cnc-detail-grid--summary{margin-top:16px}.cnc-detail-item{border:1px solid var(--color-border);background:#0c141ce0;border-radius:16px;gap:6px;padding:12px 14px;display:grid}.cnc-detail-item span{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);font-size:.78rem;font-weight:700}.cnc-detail-item strong{color:var(--color-text);font-size:.95rem}@media (width<=900px){.cnc-local__hero,.cnc-local__operate-layout,.cnc-programs-layout,.cnc-programs,.cnc-lists,.cnc-command-entry,.cnc-command-presets__save,.cnc-form-grid,.cnc-detail-grid{grid-template-columns:1fr}.cnc-jog-pad{grid-template-columns:repeat(2,minmax(72px,88px))}.cnc-jog-pad__cell--empty,.cnc-jog-pad__cell--center{display:none}.cnc-jog-rotary{grid-template-columns:1fr}.cnc-jog-rotary__pair{grid-template-columns:repeat(2,minmax(72px,88px))}.cnc-jog-fine__toolbar{flex-direction:column}.cnc-jog-wheel{width:220px;height:220px}.cnc-card--span-2,.cnc-field--span-2{grid-column:auto}.cnc-card__header,.cnc-results__header,.cnc-entry,.cnc-command-preset{flex-direction:column}}.site-footer__links a{color:var(--color-primary-strong)}.page{gap:24px;display:grid}.page--home{isolation:isolate;gap:32px;position:relative;overflow:clip}.site-admin-users{gap:24px;display:grid}.site-admin-users__toggles{flex-wrap:wrap;gap:16px 24px;display:flex}.site-admin-users__check{color:var(--color-text);align-items:center;gap:10px;display:inline-flex}.site-admin-users__check input{width:16px;height:16px}.page--site-admin .cnc-field input,.page--site-admin .cnc-field select,.page--site-admin .cnc-field textarea{color:#14202b;background:#fff;border-color:#5c6d7f47}.page--site-admin .cnc-field input::-moz-placeholder{color:#14202b6b}.page--site-admin .cnc-field textarea::-moz-placeholder{color:#14202b6b}.page--site-admin .cnc-field input::placeholder,.page--site-admin .cnc-field textarea::placeholder{color:#14202b6b}.page--site-admin .cnc-field input:-webkit-autofill{-webkit-text-fill-color:#14202b;transition:background-color 9999s ease-out;-webkit-box-shadow:inset 0 0 0 1000px #fff}.page--site-admin .cnc-field input:-webkit-autofill:hover{-webkit-text-fill-color:#14202b;transition:background-color 9999s ease-out;-webkit-box-shadow:inset 0 0 0 1000px #fff}.page--site-admin .cnc-field input:-webkit-autofill:focus{-webkit-text-fill-color:#14202b;transition:background-color 9999s ease-out;-webkit-box-shadow:inset 0 0 0 1000px #fff}.page--home>:not(.home-watermark){z-index:1;position:relative}.home-watermark{z-index:0;opacity:.085;filter:grayscale(.1)saturate(.8);pointer-events:none;-webkit-user-select:none;user-select:none;mix-blend-mode:multiply;width:min(58vw,520px);max-width:72%;position:absolute;top:calc(50% - 15.5rem);left:50%;transform:translate(-50%,-50%)}.hero-grid{align-items:start;gap:24px;display:grid}.hero-copy{gap:18px;display:grid}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.action-link{border:1px solid var(--color-border);background:var(--color-nav-surface);min-height:44px;color:var(--color-primary-strong);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:10px 16px;font-weight:600;transition:border-color .16s,background-color .16s,transform .16s;display:inline-flex}.action-link:hover{border-color:var(--color-accent);background:var(--color-nav-hover);transform:translateY(-1px)}.action-link--primary{border-color:var(--color-primary);background:var(--color-nav-active)}.status-panel{border:1px solid var(--color-border);background:var(--color-panel-surface);border-radius:20px;padding:18px 20px}.page--login{place-items:center;min-height:60vh}.login-card{border:1px solid var(--color-border);background:var(--color-panel-surface);width:min(460px,100%);box-shadow:0 18px 40px color-mix(in srgb, var(--color-shadow) 55%, transparent);border-radius:28px;gap:18px;padding:28px;display:grid}.login-form{gap:14px;display:grid}.login-card .cnc-field input{background:var(--color-surface);color:var(--color-text)}.login-card .cnc-field input::placeholder{color:var(--color-text-muted)}.login-card .cnc-field input:-webkit-autofill{-webkit-text-fill-color:var(--color-text);box-shadow:0 0 0 1000px var(--color-surface) inset;transition:background-color 9999s ease-out}.login-card .cnc-field input:-webkit-autofill:hover{-webkit-text-fill-color:var(--color-text);box-shadow:0 0 0 1000px var(--color-surface) inset;transition:background-color 9999s ease-out}.login-card .cnc-field input:-webkit-autofill:focus{-webkit-text-fill-color:var(--color-text);box-shadow:0 0 0 1000px var(--color-surface) inset;transition:background-color 9999s ease-out}.status-panel ul{color:var(--color-text-muted);margin:12px 0 0;padding-left:20px}.hero-media,.media-grid{gap:16px;display:grid}.content-section{gap:20px;display:grid}.section-heading{gap:12px;display:grid}.section-heading h3,.feature-panel__copy h3,.service-card h4{margin:0}.service-grid,.link-panel-grid{gap:16px;display:grid}.service-card,.link-panel{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:0 12px 32px color-mix(in srgb, var(--color-shadow) 50%, transparent);border-radius:24px;padding:22px}.service-card p,.link-panel span:last-child{color:var(--color-text-muted);margin:0}.link-panel{gap:10px;transition:border-color .16s,transform .16s,background-color .16s;display:grid}.link-panel strong{font-size:1.05rem}.link-panel:hover{border-color:var(--color-accent);background:var(--color-surface-muted);transform:translateY(-2px)}.feature-panel{border:1px solid var(--color-border);background:linear-gradient(180deg, var(--color-surface), var(--color-surface-muted));border-radius:28px;padding:22px}.feature-panel__copy{gap:14px;display:grid}.embed-grid{gap:18px;display:grid}.weather-card{border:1px solid var(--color-border);background:radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent) 10%, transparent), transparent 40%), linear-gradient(180deg, var(--color-surface), var(--color-surface-muted));box-shadow:0 16px 38px color-mix(in srgb, var(--color-shadow) 48%, transparent);border-radius:24px;gap:18px;padding:22px;display:grid}.weather-card__header,.weather-card__summary,.weather-card__meta{justify-content:space-between;gap:16px;display:flex}.weather-card__header,.weather-card__summary{align-items:start}.weather-card__header h3,.weather-card__summary h4,.weather-card__reading strong{margin:0}.weather-card__summary h4{font-size:1.3rem}.weather-card__summary p,.weather-card__meta p,.weather-card__status,.weather-card__reading span{color:var(--color-text-muted);margin:0}.weather-card__reading{text-align:right;gap:4px;min-width:150px;display:grid}.weather-card__reading strong{color:var(--color-primary-strong);font-size:clamp(2rem,5vw,3rem);line-height:.95}.weather-chip{border:1px solid var(--color-primary);background:var(--color-nav-active);min-height:32px;color:var(--color-primary-strong);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:4px 12px;font-size:.82rem;font-weight:700;display:inline-flex}.weather-chip--stale{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 12%, var(--color-surface))}.weather-card__status--error{color:#b91c1c}.weather-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;display:grid}.station-tabs{flex-wrap:wrap;gap:10px;display:flex}.station-tabs__button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary-strong);font:inherit;cursor:pointer;border-radius:999px;padding:10px 18px;font-weight:700;transition:background .16s,border-color .16s,transform .16s}.station-tabs__button:hover{border-color:var(--color-primary);transform:translateY(-1px)}.station-tabs__button--active{border-color:var(--color-primary);background:var(--color-nav-active)}.range-selector{flex-wrap:wrap;gap:10px;display:flex}.range-selector__button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary-strong);font:inherit;cursor:pointer;border-radius:999px;padding:10px 16px;transition:background .16s,border-color .16s,transform .16s}.range-selector__button:hover{border-color:var(--color-primary);transform:translateY(-1px)}.range-selector__button--active{border-color:var(--color-primary);background:var(--color-nav-active)}.weather-stat{border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 82%, white);border-radius:18px;gap:6px;padding:14px 16px;display:grid}.weather-stat span{color:var(--color-text-muted);font-size:.88rem}.weather-stat strong{color:var(--color-primary-strong);font-size:1.1rem}.weather-card__meta{border-top:1px solid var(--color-border);flex-wrap:wrap;padding-top:14px}.graph-grid{gap:18px;display:grid}.graph-card{border:1px solid var(--color-border);background:radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent) 8%, transparent), transparent 42%), linear-gradient(180deg, var(--color-surface), color-mix(in srgb, var(--color-surface-muted) 88%, white));box-shadow:0 16px 38px color-mix(in srgb, var(--color-shadow) 36%, transparent);border-radius:24px;gap:16px;padding:22px;display:grid}.graph-card__header,.graph-card__scale{justify-content:space-between;align-items:center;gap:16px;display:flex}.graph-card__header h3,.graph-card__meta{margin:0}.graph-card__meta,.graph-card__scale{color:var(--color-text-muted)}.graph-card__legend{flex-wrap:wrap;gap:10px 18px;display:flex}.graph-legend__item{color:var(--color-text-muted);align-items:center;gap:8px;display:inline-flex}.graph-legend__swatch{border-radius:999px;flex:none;width:12px;height:12px}.graph-card__svg{border:1px solid var(--color-border);background:linear-gradient(180deg, color-mix(in srgb, var(--color-primary) 5%, transparent), transparent 45%), color-mix(in srgb, var(--color-surface) 88%, white);border-radius:18px;width:100%;height:auto}.graph-axis{stroke:color-mix(in srgb, var(--color-border) 90%, var(--color-primary) 10%);stroke-width:1.5px}.graph-gridline{stroke:color-mix(in srgb, var(--color-border) 80%, transparent);stroke-width:1px}.graph-tick{fill:var(--color-text-muted);font-size:12px}.graph-axis-label{fill:var(--color-primary-strong);font-size:13px;font-weight:700}.graph-line{filter:drop-shadow(0 3px 8px color-mix(in srgb, var(--color-shadow) 18%, transparent))}.embed-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:24px;gap:14px;padding:18px;display:grid}.embed-card__header{gap:8px;display:grid}.embed-card__header h4,.embed-card__header p{margin:0}.embed-card__header p{color:var(--color-text-muted)}.embed-frame{border:1px solid var(--color-border);background:#fff;border-radius:18px;width:100%;min-height:460px}.story-panel{border:1px solid var(--color-border);background:var(--color-surface);border-radius:24px;gap:14px;padding:22px;display:grid}.story-panel p,.feature-panel__copy p{color:var(--color-text-muted);margin:0}.page-header{gap:12px;display:grid}.feature-image,.media-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:22px;margin:0;overflow:hidden}.feature-image img,.media-card img,.hero-media img{width:100%;height:auto;display:block}.media-card figcaption{color:var(--color-text-muted);padding:12px 14px;font-size:.95rem}@media (width>=800px){.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-panel{grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);align-items:center}.embed-grid,.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.link-panel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.home-watermark{opacity:.07;width:min(78vw,340px);max-width:80%}.site-header__top{flex-direction:column;align-items:stretch}.site-header__actions{justify-content:stretch}.site-title{letter-spacing:.06em;font-size:clamp(2.6rem,11vw,4rem)}.site-subtitle{letter-spacing:.12em;font-size:.84rem}.theme-switcher__menu{width:100%;left:0;right:auto}.hero-actions,.site-footer__content,.weather-card__header,.weather-card__summary,.weather-card__meta,.graph-card__header,.graph-card__scale{flex-direction:column}.weather-card__reading{text-align:left;min-width:0}}.last\:border-b-0:last-child{border-bottom-width:0}.hover\:bg-amber-600\/70:hover{background-color:#d97706b3}.hover\:bg-black\/75:hover{background-color:#000000bf}.hover\:bg-muted\/40:hover{background-color:rgb(var(--tw-color-muted,22 32 44) / .4)}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-white\/20:hover{background-color:#fff3}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:text-white\/70:hover{color:#ffffffb3}.focus\:border-white\/40:focus{border-color:#fff6}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.focus\:ring-1:focus{--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(1px + 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)}.focus\:ring-ring:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(var(--tw-color-ring,79 167 255) / var(--tw-ring-opacity,1))}.disabled\:border-slate-500:disabled{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity,1))}.disabled\:bg-slate-600:disabled{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.disabled\:bg-slate-700:disabled{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.disabled\:text-slate-200:disabled{--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}@media (width>=640px){.sm\:ml-auto{margin-left:auto}.sm\:w-auto{width:auto}}@media (width>=768px){.md\:grid-cols-\[280px_1fr\]{grid-template-columns:280px 1fr}}:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Trebuchet MS,Segoe UI,sans-serif;font-weight:400;line-height:1.5}:root,:root[data-theme=black-copper]{color:#f3ede3;--color-bg:#0f1012;--color-surface:#17181b;--color-surface-muted:#1e2024;--color-text:#f3ede3;--color-text-muted:#c4b8aa;--color-primary:#b87333;--color-primary-strong:#d08a47;--color-accent:#e3a15d;--color-border:#3a2b20;--color-border-strong:#5b412f;--color-shadow:#00000059;--color-option-active:linear-gradient(180deg, #2a2019, #1e1713);--color-nav-surface:#17181beb;--color-nav-hover:#251d18;--color-nav-active:linear-gradient(180deg, #2a2019, #1e1713);--color-panel-surface:linear-gradient(180deg, #231c18eb, #181412f0);--color-main-surface:radial-gradient(circle at top right, #b873331f, transparent 30%), linear-gradient(180deg, #17181bfa, #101114f5);background:radial-gradient(circle at top,#b873332e,#0000 28%),linear-gradient(#0c0c0d 0%,#131416 45%,#1a1b1f 100%)}:root[data-theme=deep-blue-technical]{color:#14202b;--color-bg:#f5f7fa;--color-surface:#fff;--color-surface-muted:#f0f5f9;--color-text:#14202b;--color-text-muted:#52606d;--color-primary:#1f4e79;--color-primary-strong:#163a5b;--color-accent:#2aa7c8;--color-border:#d7e0e8;--color-border-strong:#b8c7d6;--color-shadow:#14202b1a;--color-option-active:linear-gradient(180deg, #eef5fb, #e1edf8);--color-nav-surface:#ffffffd1;--color-nav-hover:#eef8fc;--color-nav-active:linear-gradient(180deg, #eef5fb, #e1edf8);--color-panel-surface:linear-gradient(180deg, #ffffffe0, #f0f5f9e6);--color-main-surface:radial-gradient(circle at top right, #2aa7c81f, transparent 30%), linear-gradient(180deg, #fffffffa, #f0f5f9f5);background:radial-gradient(circle at top,#2aa7c824,#0000 30%),linear-gradient(#f5f7fa 0%,#edf2f7 42%,#e5ebf2 100%)}:root[data-theme=industrial-clean]{color:#111827;--color-bg:#f3f4f6;--color-surface:#fff;--color-surface-muted:#eef2f6;--color-text:#111827;--color-text-muted:#4b5563;--color-primary:#2563eb;--color-primary-strong:#1d4ed8;--color-accent:#64748b;--color-border:#d1d5db;--color-border-strong:#9ca3af;--color-shadow:#1118271f;--color-option-active:linear-gradient(180deg, #eef4ff, #e4edff);--color-nav-surface:#ffffffe0;--color-nav-hover:#eef4ff;--color-nav-active:linear-gradient(180deg, #eef4ff, #e4edff);--color-panel-surface:linear-gradient(180deg, #ffffffeb, #eef2f6eb);--color-main-surface:radial-gradient(circle at top right, #2563eb17, transparent 30%), linear-gradient(180deg, #fffffffc, #eef2f6fa);background:radial-gradient(circle at top,#2563eb1a,#0000 30%),linear-gradient(#f3f4f6 0%,#ebeef2 45%,#e5e7eb 100%)}:root[data-theme=green-lab]{color:#173126;--color-bg:#f7faf8;--color-surface:#fff;--color-surface-muted:#f0f6f2;--color-text:#173126;--color-text-muted:#567164;--color-primary:#2f6f4f;--color-primary-strong:#23563d;--color-accent:#a46d34;--color-border:#d6e1d9;--color-border-strong:#aebfb4;--color-shadow:#1731261a;--color-option-active:linear-gradient(180deg, #edf5f0, #e2eee7);--color-nav-surface:#ffffffdb;--color-nav-hover:#eef6f1;--color-nav-active:linear-gradient(180deg, #edf5f0, #e2eee7);--color-panel-surface:linear-gradient(180deg, #ffffffe6, #f0f6f2eb);--color-main-surface:radial-gradient(circle at top right, #2f6f4f1a, transparent 30%), linear-gradient(180deg, #fffffffc, #f0f6f2f7);background:radial-gradient(circle at top,#2f6f4f1f,#0000 28%),linear-gradient(#f7faf8 0%,#eff5f2 44%,#e8efea 100%)}:root[data-theme=editorial-neutral]{color:#241f1a;--color-bg:#f8f4ee;--color-surface:#fffdf9;--color-surface-muted:#f2ece4;--color-text:#241f1a;--color-text-muted:#6a5e53;--color-primary:#96543a;--color-primary-strong:#7d4731;--color-accent:#7f2f2f;--color-border:#ddd1c1;--color-border-strong:#baa894;--color-shadow:#241f1a1a;--color-option-active:linear-gradient(180deg, #f7efe7, #efe2d6);--color-nav-surface:#fffdf9e6;--color-nav-hover:#f8efe5;--color-nav-active:linear-gradient(180deg, #f7efe7, #efe2d6);--color-panel-surface:linear-gradient(180deg, #fffdf9eb, #f2ece4f0);--color-main-surface:radial-gradient(circle at top right, #96543a14, transparent 30%), linear-gradient(180deg, #fffdf9fc, #f2ece4f7);background:radial-gradient(circle at top,#96543a1a,#0000 28%),linear-gradient(#f8f4ee 0%,#f0ebe4 44%,#e8e1d7 100%)}*{box-sizing:border-box}html{min-width:320px}body{color:var(--color-text);background:0 0;margin:0}a{color:inherit;text-decoration:none}img{max-width:100%}
