@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&display=swap";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fff;--foreground:#0a0a0a;--card:#fdfdfd;--card-foreground:#0a0a0a;--primary:#171717;--primary-foreground:#fafafa;--muted:#eee;--muted-foreground:#737373;--accent:#eee;--border:#eee;--input:#f5f5f5;--ring:#a1a1a1;--warning-bg:#fffbeb;--warning-border:#fde68a;--warning-fg:#92400e;--info-bg:#f5f5f5;--danger-bg:#fef2f2;--danger-border:#fecaca;--radius:1rem;--control-radius:999px;--font-sans:"DM Sans",ui-sans-serif,sans-serif,system-ui;--shadow-sm:0 1px 2px #0000000d}.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#171717;--foreground:#fafafa;--card:#0f0f0f;--card-foreground:#fafafa;--primary:#e5e5e5;--primary-foreground:#171717;--muted:#262626;--muted-foreground:#a1a1a1;--accent:#404040;--border:#262626;--input:#262626;--ring:#737373;--warning-bg:#291f0a;--warning-border:#713f12;--warning-fg:#fde68a;--info-bg:#202020;--danger-bg:#2b1212;--danger-border:#7f1d1d}*{box-sizing:border-box}html{background:var(--background)}body{background:var(--background);min-width:360px;min-height:100vh;color:var(--foreground);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;margin:0}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:.2em}.masthead,.app-shell{width:min(1040px,100% - 64px);margin-inline:auto}.masthead{padding:28px 0 20px}.masthead__row,.masthead__title-row,.masthead__actions,.primary-nav,.locale-switcher,.theme-switcher{align-items:center;display:flex}.masthead__row{justify-content:space-between;gap:20px}.masthead__brand{min-width:0}.masthead__title-row{gap:12px}.masthead h1{letter-spacing:-.025em;margin:0;font-size:clamp(1.5rem,3vw,1.875rem);font-weight:600;line-height:1.2}.masthead h1 a{text-decoration:none}.masthead__intro{max-width:650px;color:var(--muted-foreground);margin:8px 0 0;font-size:.875rem;line-height:1.55}.primary-nav{border-radius:var(--control-radius);background:var(--muted);gap:4px;padding:4px}.primary-nav a,.locale-switcher button,.theme-switcher button{border-radius:var(--control-radius);color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;font-size:.8125rem;line-height:1.25rem;text-decoration:none;transition:color .15s,background-color .15s,box-shadow .15s}.primary-nav a{padding:6px 12px}.primary-nav a:hover,.locale-switcher button:hover,.theme-switcher button:hover{color:var(--foreground)}.primary-nav a[aria-current=page],.locale-switcher button[aria-pressed=true],.theme-switcher button[aria-pressed=true]{background:var(--background);color:var(--foreground);box-shadow:var(--shadow-sm);font-weight:500}.masthead__actions{flex:none;justify-content:flex-end;gap:8px}.locale-switcher,.theme-switcher{border-radius:var(--control-radius);background:var(--muted);height:40px;padding:4px}.locale-switcher button,.theme-switcher button{height:32px;padding:0 10px}.site-footer{border-top:1px solid var(--border);width:min(1040px,100% - 64px);color:var(--muted-foreground);justify-content:center;margin-inline:auto;padding:24px 0 40px;display:flex}.github-link{color:inherit;justify-content:center;align-items:center;text-decoration:none;transition:color .15s;display:inline-flex}.github-link:hover,.github-link:focus-visible{color:var(--foreground)}.github-link svg{width:24px;height:24px}.primary-nav a:focus-visible,.locale-switcher button:focus-visible,.theme-switcher button:focus-visible,.github-link:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.app-shell{padding:0 0 48px}.page-stack{gap:16px;display:grid}.notice,.operation-card,.progress-card,.info-card,.output-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--card-foreground);box-shadow:var(--shadow-sm)}.notice{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:16px 18px;display:grid}.notice--warning{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-fg)}.notice__icon{width:20px;height:20px;margin-top:1px}.notice__title{margin:0 0 4px;font-size:.875rem;font-weight:600}.notice__copy,.section-copy{color:var(--muted-foreground);font-size:.875rem;line-height:1.55}.notice--warning .notice__copy{color:inherit;opacity:.88}.notice__copy p,.section-copy p{margin:0}.notice__copy p+p,.section-copy p+p{margin-top:6px}.operation-card,.progress-card,.output-card{padding:20px}.operation-card__header,.progress-card__header{margin-bottom:16px}.section-eyebrow{color:var(--muted-foreground);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:.6875rem;font-weight:600}.section-heading{letter-spacing:-.015em;margin:0;font-size:1.125rem;font-weight:600;line-height:1.35}.section-copy{max-width:800px;margin-top:6px}.action-grid,.firmware-grid,.info-grid,.debug-action-grid{gap:8px;display:grid}.action-grid,.firmware-grid,.debug-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.action-button{border:1px solid var(--border)!important;border-radius:var(--control-radius)!important;background:var(--background)!important;min-height:42px!important;color:var(--foreground)!important;box-shadow:none!important;white-space:normal!important;font-size:.8125rem!important;font-weight:500!important;transition:border-color .15s,background-color .15s!important}.firmware-grid .action-button{flex-direction:column;gap:1px;min-width:0;height:auto!important;padding-block:7px!important;line-height:1.25!important;display:flex!important}.firmware-action__label,.firmware-action__meta{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.firmware-action__meta{color:var(--muted-foreground);font-size:.6875rem;font-weight:400}.firmware-grid .action-button:hover .firmware-action__meta,.firmware-grid .action-button:focus-visible .firmware-action__meta{color:currentColor;opacity:.72}.action-button:hover:not(:disabled),.action-button:focus-visible:not(:disabled){border-color:var(--primary)!important;background:var(--muted)!important}.action-button--primary{border-color:var(--primary)!important;background:var(--primary)!important;color:var(--primary-foreground)!important}.action-button--primary:hover:not(:disabled),.action-button--primary:focus-visible:not(:disabled){background:var(--foreground)!important}.action-button:disabled{opacity:.48!important}.file-action-row,.custom-firmware-row{grid-template-columns:minmax(0,1fr) minmax(180px,.65fr);gap:8px;display:grid}.custom-firmware-row{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.file-picker{border:1px solid var(--input);border-radius:var(--control-radius);background:var(--background);min-width:0;min-height:42px;color:var(--foreground);align-items:center;gap:8px;padding:4px 8px;font-size:.8125rem;transition:border-color .15s,background-color .15s;display:flex;position:relative;overflow:hidden}.file-picker:hover{border-color:color-mix(in srgb,var(--ring)40%,var(--input));background:color-mix(in srgb,var(--muted)30%,var(--background))}.file-picker--selected{border-color:color-mix(in srgb,var(--primary)40%,var(--input));background:color-mix(in srgb,var(--primary)5%,var(--background))}.file-picker:focus-within{outline:2px solid var(--ring);outline-offset:2px}.file-picker>input{z-index:1;cursor:pointer;opacity:0;width:100%;height:100%;position:absolute;inset:0}.file-picker>input:disabled{cursor:not-allowed}.file-picker__button{border-radius:var(--control-radius);background:var(--muted);height:32px;color:var(--foreground);flex:none;align-items:center;gap:6px;padding:0 14px;font-weight:500;display:inline-flex}.file-picker__button svg{width:16px;height:16px}.file-picker__name{min-width:0;color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.file-picker--selected .file-picker__name{color:var(--foreground)}.file-picker__clear{z-index:2;border-radius:var(--control-radius);width:28px;height:28px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.file-picker__clear:hover,.file-picker__clear:focus-visible{background:var(--muted);color:var(--foreground)}.progress-card__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.operation-steps{min-width:0;max-width:100%;margin:0;padding:0;list-style:none;display:grid}.operation-step{grid-template-columns:24px minmax(0,1fr);column-gap:12px;min-width:0;max-width:100%;display:grid}.operation-step__rail{flex-direction:column;align-items:center;min-height:52px;display:flex}.operation-step:last-child .operation-step__rail{min-height:24px}.operation-step__marker{z-index:1;border:2px solid var(--border);background:var(--background);width:24px;height:24px;color:var(--muted-foreground);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:500;display:inline-flex;position:relative}.operation-step__marker--success{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.operation-step__marker--failed{border-color:var(--danger-border);background:var(--danger-bg);color:#dc2626}.operation-step__marker--running{border-color:#0000}.operation-step__number{z-index:2;justify-content:center;align-items:center;width:100%;height:100%;line-height:1;display:flex;position:relative}.operation-step__spinner{z-index:1;border:2px solid var(--border);border-top-color:var(--primary);border-right-color:var(--primary);border-radius:50%;animation:.8s linear infinite operation-step-spin;position:absolute;inset:0}@keyframes operation-step-spin{to{transform:rotate(360deg)}}.operation-step__line{background:var(--border);flex:1;width:1px;min-height:28px}.operation-step--success .operation-step__line{background:var(--primary)}.operation-step__body{min-width:0;max-width:100%;padding:2px 0 16px}.operation-step:last-child .operation-step__body{padding-bottom:0}.operation-step__title{overflow-wrap:anywhere;margin:0;font-size:.875rem;font-weight:500;line-height:1.45}.operation-step--pending .operation-step__title{color:var(--muted-foreground)}.operation-step-progress{width:min(100%,320px);max-width:100%;margin-top:8px}.operation-step-progress [data-part=value-text]{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.operation-step__error{max-width:100%;margin-top:8px}.progress-card__hint{border:1px dashed var(--border);border-radius:calc(var(--radius) - 6px);background:var(--info-bg);color:var(--muted-foreground);text-align:center;padding:24px 16px;font-size:.875rem}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-card{padding:16px 18px}.info-card h2{margin:0 0 6px;font-size:.875rem;font-weight:600}.info-card p{color:var(--muted-foreground);margin:0;font-size:.8125rem;line-height:1.55}.output-card{overflow:hidden}.output-card [data-scope=card]{border-color:var(--border);background:var(--background)}.output-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.debug-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (max-width:820px){.masthead,.app-shell,.site-footer{width:min(100% - 32px,1040px)}.masthead__row{display:grid}.masthead__actions{justify-content:flex-start}}@media (max-width:640px){.masthead,.app-shell,.site-footer{width:min(100% - 16px,1040px)}.masthead{padding:14px 0 16px}.masthead__title-row{flex-direction:column;align-items:flex-start}.masthead__actions{justify-content:flex-start;width:100%;display:flex;overflow-x:auto}.operation-card,.progress-card,.output-card{padding:16px}.action-grid,.firmware-grid,.debug-action-grid,.info-grid,.debug-result-grid,.output-actions,.file-action-row,.custom-firmware-row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
