/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.start{inset-inline-start:var(--spacing)}.block{display:block}.grid{display:grid}.hidden{display:none}}:root{--font-ui:"Space Grotesk", "Manrope", "Avenir Next", "Segoe UI", sans-serif;--font-headline:"Sora", "Space Grotesk", "Avenir Next", sans-serif;--bg:#edf1f7;--bg-2:#e4ecf7;--surface:#ffffffb8;--surface-strong:#fff;--surface-border:#10182814;--text:#13233a;--text-muted:#556277;--accent:#1366d6;--accent-2:#3d90f2;--error:#c13636;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--bg:#07101f;--bg-2:#101d33;--surface:#0b1627bd;--surface-strong:#111f35;--surface-border:#91b5ea38;--text:#e8f0ff;--text-muted:#a6b9d6;--accent:#5ea8ff;--accent-2:#86c0ff;--error:#ff9696}*{box-sizing:border-box}body{font-family:var(--font-ui);background:radial-gradient(circle at 20% 0%,var(--accent),transparent 40%),linear-gradient(170deg,var(--bg) 0%,var(--bg-2) 45%,var(--bg) 100%);margin:0}@supports (color:color-mix(in lab,red,red)){body{background:radial-gradient(circle at 20% 0%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 40%),linear-gradient(170deg,var(--bg) 0%,var(--bg-2) 45%,var(--bg) 100%)}}body{color:var(--text);min-height:100vh}#app{min-height:100vh}.auth-gate{place-items:center;min-height:100vh;padding:1rem;display:grid;position:relative;overflow:hidden}.auth-gate__aurora{pointer-events:none;filter:blur(80px);opacity:.33;border-radius:999px;position:absolute}.auth-gate__aurora--one{background:var(--accent);width:380px;height:380px;top:-140px;right:-90px}.auth-gate__aurora--two{background:#22b8ad;width:360px;height:360px;bottom:-130px;left:-120px}.auth-empty-state{z-index:1;text-align:center;border:1px solid var(--surface-border);background:var(--surface-strong);border-radius:1.3rem;width:min(760px,100%);position:relative}@supports (color:color-mix(in lab,red,red)){.auth-empty-state{background:color-mix(in srgb,var(--surface-strong) 84%,transparent)}}.auth-empty-state{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 34px 90px -58px var(--accent)}@supports (color:color-mix(in lab,red,red)){.auth-empty-state{box-shadow:0 34px 90px -58px color-mix(in srgb,var(--accent) 56%,transparent)}}.auth-empty-state{gap:1rem;padding:clamp(1.3rem,3vw,2.4rem);display:grid}.auth-empty-state h1{font-family:var(--font-headline);margin:0;font-size:clamp(1.5rem,3.5vw,2.4rem)}.auth-empty-state p{margin:0}.auth-empty-state>.button{justify-self:center}.app-shell{grid-template:"top top"84px"side main"1fr/260px 1fr;min-height:100vh;display:grid;position:relative;overflow:hidden}.app-shell__top{border-bottom:1px solid var(--surface-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:var(--surface);grid-area:top}@supports (color:color-mix(in lab,red,red)){.app-shell__top{background:color-mix(in srgb,var(--surface) 70%,transparent)}}.app-shell__side{border-right:1px solid var(--surface-border);background:var(--surface);grid-area:side}@supports (color:color-mix(in lab,red,red)){.app-shell__side{background:color-mix(in srgb,var(--surface) 80%,transparent)}}.app-shell__side{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:1.25rem 1rem}.app-shell__main{grid-area:main;padding:1.75rem}.aurora{pointer-events:none;filter:blur(66px);opacity:.3;border-radius:999px;position:absolute}.aurora--one{background:var(--accent);width:360px;height:360px;top:-110px;right:-80px}.aurora--two{background:#22b8ad;width:320px;height:320px;bottom:-130px;left:-120px}.top-bar{justify-content:space-between;align-items:center;gap:1rem;height:100%;padding:0 1.5rem;display:flex}.top-bar__title{font-family:var(--font-headline);margin:0;font-size:1.12rem;font-weight:700}.top-bar__actions{align-items:center;gap:.75rem;display:flex}.top-bar__identity{color:var(--text-muted);margin:0;font-size:.92rem}.eyebrow{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem}.side-nav{flex-direction:column;gap:.45rem;min-height:100%;display:flex}.side-nav__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 .55rem;font-size:.8rem}.side-nav__item{color:var(--text-muted);border:1px solid #0000;border-radius:.75rem;padding:.7rem .8rem;text-decoration:none;transition:all .16s}.side-nav__item:hover{border-color:var(--surface-border);color:var(--text);background:var(--surface)}@supports (color:color-mix(in lab,red,red)){.side-nav__item:hover{background:color-mix(in srgb,var(--surface) 60%,transparent)}}.side-nav__item--active,.side-nav__item.router-link-active{color:var(--text);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.side-nav__item--active,.side-nav__item.router-link-active{border-color:color-mix(in srgb,var(--accent) 35%,var(--surface-border))}}.side-nav__item--active,.side-nav__item.router-link-active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.side-nav__item--active,.side-nav__item.router-link-active{background:color-mix(in srgb,var(--accent) 13%,var(--surface))}}.side-nav__dev-tools{border-top:1px solid var(--surface-border);gap:.5rem;margin-top:auto;padding-top:.9rem;display:grid}.side-nav__dev-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.72rem}.side-nav__dev-button{text-align:left;width:100%}.side-nav__dev-message{color:var(--text-muted);margin:0;font-size:.83rem}.side-nav__dev-message--ok{color:#17884f}@supports (color:color-mix(in lab,red,red)){.side-nav__dev-message--ok{color:color-mix(in srgb,#17884f 70%,var(--text))}}.side-nav__dev-message--error{color:var(--error)}.panel{border:1px solid var(--surface-border);background:var(--surface-strong);border-radius:1.25rem;max-width:900px}@supports (color:color-mix(in lab,red,red)){.panel{background:color-mix(in srgb,var(--surface-strong) 78%,transparent)}}.panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 30px 70px -44px var(--accent)}@supports (color:color-mix(in lab,red,red)){.panel{box-shadow:0 30px 70px -44px color-mix(in srgb,var(--accent) 42%,transparent)}}.panel{padding:1.5rem;animation:.26s both fade-up}.device-management-card{gap:1rem;max-width:1180px;display:grid}.device-management-card__header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.device-management-card__actions{align-items:center;gap:.65rem;display:flex}.panel__header h1{font-family:var(--font-headline);margin:.1rem 0 1rem;font-size:clamp(1.45rem,2.2vw,2.1rem)}.button{cursor:pointer;color:#fff;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);border:0;border-radius:.75rem;padding:.64rem .95rem;font-weight:650;text-decoration:none;transition:transform .14s,filter .14s}.button:hover{filter:brightness(1.04);transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.7;transform:none}.button--ghost{color:var(--text);background:var(--surface)}@supports (color:color-mix(in lab,red,red)){.button--ghost{background:color-mix(in srgb,var(--surface) 80%,transparent)}}.button--ghost{border:1px solid var(--surface-border)}.input{border:1px solid var(--surface-border);background:var(--surface);border-radius:.7rem;width:100%}@supports (color:color-mix(in lab,red,red)){.input{background:color-mix(in srgb,var(--surface) 76%,transparent)}}.input{color:var(--text);font:inherit;padding:.58rem .72rem}.input:focus{outline:2px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.input:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent)}}.input:focus{outline-offset:1px}.claim-form{grid-template-columns:minmax(240px,1fr) minmax(240px,1fr) auto;align-items:end;gap:.75rem;display:grid}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0311268f;place-items:center;padding:1rem;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.modal{border:1px solid var(--surface-border);background:var(--surface-strong);border-radius:1rem;width:min(760px,100%)}@supports (color:color-mix(in lab,red,red)){.modal{background:color-mix(in srgb,var(--surface-strong) 92%,transparent)}}.modal{box-shadow:0 30px 70px -44px var(--accent)}@supports (color:color-mix(in lab,red,red)){.modal{box-shadow:0 30px 70px -44px color-mix(in srgb,var(--accent) 52%,transparent)}}.modal{gap:1rem;padding:1rem;display:grid}.modal__header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.modal__header h2{font-family:var(--font-headline);margin:.1rem 0 0;font-size:1.2rem}.modal .claim-form{grid-template-columns:1fr}.modal .claim-form__actions{min-width:0}.config-modal{gap:.8rem;display:grid}.device-config-page{gap:.9rem;max-width:1180px;display:grid}.device-overview-page{gap:1rem;max-width:1180px;display:grid}.device-overview-page__header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.device-overview-page__copy{max-width:64ch;color:var(--text-muted);margin:0}.device-overview-page__actions{flex-wrap:wrap;gap:.55rem;display:flex}.device-overview-details-card{border:1px solid var(--surface-border);background:radial-gradient(circle at top right,var(--accent),transparent 42%),var(--surface);border-radius:1rem}@supports (color:color-mix(in lab,red,red)){.device-overview-details-card{background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 12%,transparent),transparent 42%),color-mix(in srgb,var(--surface) 76%,transparent)}}.device-overview-details-card{padding:1rem}.device-overview-timezone-card{gap:.85rem}.device-overview-timezone-card__header{gap:.2rem;display:grid}.device-overview-timezone-card__header h3{font-family:var(--font-headline);margin:0;font-size:1rem}.device-overview-timezone-card__copy{color:var(--text-muted);max-width:64ch;margin:.18rem 0 0}.device-overview-facts{grid-template-columns:1fr;gap:.7rem 1.15rem;margin:0;display:grid}.device-overview-facts__row{border-bottom:1px solid var(--surface-border);grid-template-columns:minmax(104px,128px) minmax(0,1fr);align-items:start;gap:.75rem;padding-bottom:.15rem;display:grid}@supports (color:color-mix(in lab,red,red)){.device-overview-facts__row{border-bottom:1px solid color-mix(in srgb,var(--surface-border) 68%,transparent)}}.device-overview-facts__row:last-child{border-bottom:0}.device-overview-facts dt{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.8rem}.device-overview-facts dd{overflow-wrap:anywhere;margin:0;font-weight:600}.device-overview-facts__value--emphasis{font-family:var(--font-headline);font-size:1.08rem}.device-overview-section{gap:.75rem;display:grid}.device-metadata-form{gap:.65rem;display:grid}.device-metadata-form__actions{flex-wrap:wrap;gap:.55rem;display:flex}.device-metadata-form__hint{color:var(--text-muted);margin:0;font-size:.84rem}.device-overview-section__header{justify-content:space-between;align-items:end;gap:.75rem;display:flex}.device-overview-section__header h2{font-family:var(--font-headline);margin:.12rem 0 0;font-size:1.1rem}.device-ota-card{border:1px solid var(--surface-border);background:linear-gradient(180deg,var(--surface-strong),var(--surface)),radial-gradient(circle at top right,var(--accent),transparent 42%);border-radius:1rem}@supports (color:color-mix(in lab,red,red)){.device-ota-card{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 56%,transparent),color-mix(in srgb,var(--surface) 88%,transparent)),radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 16%,transparent),transparent 42%)}}.device-ota-card{gap:.9rem;padding:1rem;display:grid}.device-ota-card__top{justify-content:space-between;align-items:start;gap:1rem;display:flex}.device-ota-card__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.74rem}.device-ota-card__top h3{font-family:var(--font-headline);margin:.15rem 0 0;font-size:1.2rem}.device-ota-card__copy{color:var(--text-muted);margin:.28rem 0 0;font-size:.88rem}.device-ota-card__actions{flex-wrap:wrap;justify-content:flex-end;gap:.55rem;display:flex}.device-ota-card__action-button{white-space:nowrap}.device-ota-card__meta-grid,.device-ota-modal__summary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;display:grid}.device-ota-card__meta-item,.device-ota-modal__summary-card{border:1px solid var(--surface-border)}@supports (color:color-mix(in lab,red,red)){.device-ota-card__meta-item,.device-ota-modal__summary-card{border:1px solid color-mix(in srgb,var(--surface-border) 86%,transparent)}}.device-ota-card__meta-item,.device-ota-modal__summary-card{background:var(--surface);border-radius:.9rem}@supports (color:color-mix(in lab,red,red)){.device-ota-card__meta-item,.device-ota-modal__summary-card{background:color-mix(in srgb,var(--surface) 78%,transparent)}}.device-ota-card__meta-item,.device-ota-modal__summary-card{gap:.35rem;padding:.85rem;display:grid}.device-ota-card__meta-item span,.device-ota-modal__summary-card span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}.device-ota-card__meta-item strong,.device-ota-modal__summary-card strong{font-size:1rem}.device-ota-state-pill{letter-spacing:.04em;border:1px solid var(--accent);border-radius:999px;align-items:center;padding:.26rem .58rem;font-size:.74rem;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.device-ota-state-pill{border:1px solid color-mix(in srgb,var(--accent) 34%,var(--surface-border))}}.device-ota-state-pill{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-ota-state-pill{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.device-ota-state-pill{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-ota-state-pill{color:color-mix(in srgb,var(--accent) 88%,var(--text))}}.device-ota-state-pill--info{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-ota-state-pill--info{border-color:color-mix(in srgb,var(--accent) 34%,var(--surface-border))}}.device-ota-state-pill--info{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-ota-state-pill--info{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.device-ota-state-pill--info{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-ota-state-pill--info{color:color-mix(in srgb,var(--accent) 88%,var(--text))}}.device-ota-state-pill--warn{border-color:#f5b942}@supports (color:color-mix(in lab,red,red)){.device-ota-state-pill--warn{border-color:color-mix(in srgb,#f5b942 42%,var(--surface-border))}}.device-ota-state-pill--warn{color:#c97808;background:#f5b94224}.device-ota-state-pill--error{border-color:#ff6b6b}@supports (color:color-mix(in lab,red,red)){.device-ota-state-pill--error{border-color:color-mix(in srgb,#ff6b6b 42%,var(--surface-border))}}.device-ota-state-pill--error{color:#be123c;background:#ff6b6b24}.device-ota-state-pill--success{border-color:#3ac17d}@supports (color:color-mix(in lab,red,red)){.device-ota-state-pill--success{border-color:color-mix(in srgb,#3ac17d 42%,var(--surface-border))}}.device-ota-state-pill--success{color:#157347;background:#3ac17d24}.device-ota-modal{gap:.9rem;display:grid}.device-ota-modal__copy{color:var(--text-muted);max-width:64ch;margin:0}.device-ota-release-list{gap:.7rem;max-height:min(55vh,520px);padding-right:.15rem;display:grid;overflow:auto}.device-ota-release-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--surface-border);background:linear-gradient(180deg,var(--surface-strong),var(--surface)),radial-gradient(circle at top right,var(--accent),transparent 44%);border-radius:.95rem;width:100%}@supports (color:color-mix(in lab,red,red)){.device-ota-release-card{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 58%,transparent),color-mix(in srgb,var(--surface) 88%,transparent)),radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 10%,transparent),transparent 44%)}}.device-ota-release-card{color:var(--text);font:inherit;text-align:left;cursor:pointer;gap:.5rem;padding:.9rem;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid}.device-ota-release-card:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}@supports (color:color-mix(in lab,red,red)){.device-ota-release-card:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 34%,var(--surface-border))}}.device-ota-release-card:hover:not(:disabled){box-shadow:0 16px 36px -28px var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-ota-release-card:hover:not(:disabled){box-shadow:0 16px 36px -28px color-mix(in srgb,var(--accent) 44%,transparent)}}.device-ota-release-card:disabled{cursor:default;opacity:.78}.device-ota-release-card--selected{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-ota-release-card--selected{border-color:color-mix(in srgb,var(--accent) 52%,var(--surface-border))}}.device-ota-release-card--selected{box-shadow:0 18px 40px -30px var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-ota-release-card--selected{box-shadow:0 18px 40px -30px color-mix(in srgb,var(--accent) 48%,transparent)}}.device-ota-release-card__header{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.device-ota-release-card__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;display:block}.device-ota-release-card__header strong{font-family:var(--font-headline);margin-top:.14rem;font-size:1.04rem;display:block}.device-ota-release-card__chips{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.device-ota-release-card__meta,.device-ota-release-card__timestamp{margin:0;font-size:.84rem}.device-ota-release-card__meta{font-weight:620}.device-ota-release-card__timestamp{color:var(--text-muted)}.device-ota-modal__actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.device-ota-page{gap:1rem;max-width:1040px;display:grid}.device-ota-page__header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.device-ota-page__copy{max-width:64ch;color:var(--text-muted);margin:0}.device-ota-page__actions{flex-wrap:wrap;gap:.55rem;display:flex}.device-ota-history{border:1px solid var(--surface-border);background:linear-gradient(180deg,var(--surface-strong),var(--surface)),radial-gradient(circle at top right,var(--accent),transparent 38%);border-radius:.95rem;gap:.45rem;display:grid}@supports (color:color-mix(in lab,red,red)){.device-ota-history{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 52%,transparent),color-mix(in srgb,var(--surface) 88%,transparent)),radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 12%,transparent),transparent 38%)}}.device-ota-history{padding:.8rem .9rem}.device-ota-history__entry{grid-template-columns:1rem minmax(0,1fr);align-items:start;gap:.7rem;min-height:3.3rem;display:grid}.device-ota-history__marker{justify-items:center;padding-top:.55rem;display:grid;position:relative}.device-ota-history__dot{background:linear-gradient(135deg,var(--accent),#22b8ad);width:.55rem;height:.55rem;box-shadow:0 0 0 3px var(--accent);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.device-ota-history__dot{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}}.device-ota-history__dot--warn{background:linear-gradient(135deg,#f5b942,#ff8f4d);box-shadow:0 0 0 3px #f5b9422e}.device-ota-history__dot--error{background:linear-gradient(135deg,#ff6b6b,#d9485f);box-shadow:0 0 0 3px #ff6b6b2e}.device-ota-history__dot--success{background:linear-gradient(135deg,#3ac17d,#2f9e62);box-shadow:0 0 0 3px #3ac17d2e}.device-ota-history__line{background:var(--accent);width:1px;position:absolute;top:1.1rem;bottom:-.3rem}@supports (color:color-mix(in lab,red,red)){.device-ota-history__line{background:color-mix(in srgb,var(--accent) 20%,var(--surface-border))}}.device-ota-history__content{border-bottom:1px solid var(--surface-border);gap:.4rem;padding:.15rem 0 .4rem;display:grid}@supports (color:color-mix(in lab,red,red)){.device-ota-history__content{border-bottom:1px solid color-mix(in srgb,var(--surface-border) 72%,transparent)}}.device-ota-history__entry:last-of-type .device-ota-history__content{border-bottom:0}.device-ota-history__meta{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.device-ota-history__message{margin:0;font-size:.96rem;font-weight:620}.device-ota-history__message--muted{color:var(--text-muted);font-weight:500}.device-event-timeline{border:1px solid var(--surface-border);background:linear-gradient(180deg,var(--surface-strong),var(--surface)),radial-gradient(circle at top right,var(--accent),transparent 38%);border-radius:.95rem;gap:.45rem;display:grid}@supports (color:color-mix(in lab,red,red)){.device-event-timeline{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 52%,transparent),color-mix(in srgb,var(--surface) 88%,transparent)),radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 13%,transparent),transparent 38%)}}.device-event-timeline{padding:.8rem .9rem}.device-event-card{grid-template-columns:1rem minmax(0,1fr);align-items:start;gap:.7rem;min-height:3.5rem;display:grid}.device-event-card__marker{justify-items:center;padding-top:.55rem;display:grid;position:relative}.device-event-card__dot{background:linear-gradient(135deg,var(--accent),#22b8ad);width:.55rem;height:.55rem;box-shadow:0 0 0 3px var(--accent);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.device-event-card__dot{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}}.device-event-card__dot--warn{background:linear-gradient(135deg,#f5b942,#ff8f4d);box-shadow:0 0 0 3px #f5b9422e}.device-event-card__dot--error{background:linear-gradient(135deg,#ff6b6b,#d9485f);box-shadow:0 0 0 3px #ff6b6b2e}.device-event-card__line{background:var(--accent);width:1px;position:absolute;top:1.1rem;bottom:-.3rem}@supports (color:color-mix(in lab,red,red)){.device-event-card__line{background:color-mix(in srgb,var(--accent) 20%,var(--surface-border))}}.device-event-card__content{border-bottom:1px solid var(--surface-border);gap:.4rem;padding:.15rem 0 .4rem;display:grid}@supports (color:color-mix(in lab,red,red)){.device-event-card__content{border-bottom:1px solid color-mix(in srgb,var(--surface-border) 72%,transparent)}}.device-event-card:last-of-type .device-event-card__content{border-bottom:0}.device-event-card__meta{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.device-event-card__message{margin:0;font-size:.96rem;font-weight:620}.device-event-card__timestamps{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.device-event-card__timestamps strong{font-size:.85rem;font-weight:650}.device-event-card__timestamps span{color:var(--text-muted);font-size:.78rem}.device-event-badge,.device-event-chip,.device-event-code{border-radius:999px;padding:.22rem .55rem;font-size:.72rem;line-height:1}.device-event-badge{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-event-badge{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--surface-border))}}.device-event-badge{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-event-badge{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.device-event-badge{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-event-badge{color:color-mix(in srgb,var(--accent) 84%,var(--text))}}.device-event-badge{letter-spacing:.04em;font-weight:700}.device-event-badge--warn{border-color:#f5b942}@supports (color:color-mix(in lab,red,red)){.device-event-badge--warn{border-color:color-mix(in srgb,#f5b942 42%,var(--surface-border))}}.device-event-badge--warn{color:#c97808;background:#f5b94224}.device-event-badge--error{border-color:#ff6b6b}@supports (color:color-mix(in lab,red,red)){.device-event-badge--error{border-color:color-mix(in srgb,#ff6b6b 42%,var(--surface-border))}}.device-event-badge--error{color:#be123c;background:#ff6b6b24}.device-event-chip{border:1px solid var(--surface-border)}@supports (color:color-mix(in lab,red,red)){.device-event-chip{border:1px solid color-mix(in srgb,var(--surface-border) 88%,transparent)}}.device-event-chip{background:var(--surface)}@supports (color:color-mix(in lab,red,red)){.device-event-chip{background:color-mix(in srgb,var(--surface) 86%,transparent)}}.device-event-chip{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.device-event-code{border:1px solid var(--surface-border)}@supports (color:color-mix(in lab,red,red)){.device-event-code{border:1px solid color-mix(in srgb,var(--surface-border) 88%,transparent)}}.device-event-code{background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.device-event-code{background:color-mix(in srgb,var(--surface-strong) 55%,transparent)}}.device-event-code{color:var(--text);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace}.device-event-timeline__footer{justify-content:center;padding-top:.25rem;display:flex}.admin-device-logs-page{gap:1rem;max-width:1180px;display:grid}.admin-device-logs-page__header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.admin-device-logs-page__copy{max-width:68ch;color:var(--text-muted);margin:0}.admin-device-logs-page__actions{flex-wrap:wrap;gap:.55rem;display:flex}.admin-device-logs-viewer{gap:.75rem;display:grid}.admin-device-logs-viewer__new{justify-content:flex-end;display:flex}.admin-device-logs-viewer__viewport{border:1px solid var(--surface-border);background:linear-gradient(180deg,var(--surface-strong),var(--surface)),radial-gradient(circle at top right,var(--accent),transparent 36%);border-radius:1rem;gap:.55rem;max-height:min(68vh,720px);padding:.9rem;display:grid;overflow:auto}@supports (color:color-mix(in lab,red,red)){.admin-device-logs-viewer__viewport{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 56%,transparent),color-mix(in srgb,var(--surface) 88%,transparent)),radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 8%,transparent),transparent 36%)}}.admin-device-logs-viewer__sentinel{width:100%;height:1px}.admin-device-logs-viewer__loading-older{color:var(--text-muted);margin:0 auto;font-size:.84rem}.admin-device-log-row{border:1px solid var(--surface-border);grid-template-columns:.35rem minmax(0,1fr);gap:.8rem;display:grid}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row{border:1px solid color-mix(in srgb,var(--surface-border) 86%,transparent)}}.admin-device-log-row{background:var(--surface);border-radius:.95rem}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row{background:color-mix(in srgb,var(--surface) 78%,transparent)}}.admin-device-log-row{overflow:hidden}.admin-device-log-row__accent{background:linear-gradient(180deg,var(--accent),var(--accent))}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row__accent{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 75%,white),color-mix(in srgb,var(--accent) 42%,transparent))}}.admin-device-log-row--debug .admin-device-log-row__accent{background:linear-gradient(180deg,var(--text-muted),var(--text-muted))}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row--debug .admin-device-log-row__accent{background:linear-gradient(180deg,color-mix(in srgb,var(--text-muted) 72%,white),color-mix(in srgb,var(--text-muted) 34%,transparent))}}.admin-device-log-row--info .admin-device-log-row__accent{background:linear-gradient(180deg,var(--accent),var(--accent))}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row--info .admin-device-log-row__accent{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 75%,white),color-mix(in srgb,var(--accent) 40%,transparent))}}.admin-device-log-row--warn .admin-device-log-row__accent{background:linear-gradient(#f5b942,#ff8f4d)}.admin-device-log-row--error .admin-device-log-row__accent{background:linear-gradient(#ff6b6b,#d9485f)}.admin-device-log-row__content{gap:.55rem;padding:.85rem .95rem .95rem 0;display:grid}.admin-device-log-row__meta{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.admin-device-log-level{letter-spacing:.04em;border:1px solid var(--accent);border-radius:999px;align-items:center;padding:.26rem .58rem;font-size:.74rem;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.admin-device-log-level{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--surface-border))}}.admin-device-log-level{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.admin-device-log-level{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.admin-device-log-level{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.admin-device-log-level{color:color-mix(in srgb,var(--accent) 84%,var(--text))}}.admin-device-log-level--debug{border-color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.admin-device-log-level--debug{border-color:color-mix(in srgb,var(--text-muted) 36%,var(--surface-border))}}.admin-device-log-level--debug{background:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.admin-device-log-level--debug{background:color-mix(in srgb,var(--text-muted) 12%,transparent)}}.admin-device-log-level--debug{color:var(--text-muted)}.admin-device-log-level--warn{border-color:#f5b942}@supports (color:color-mix(in lab,red,red)){.admin-device-log-level--warn{border-color:color-mix(in srgb,#f5b942 42%,var(--surface-border))}}.admin-device-log-level--warn{color:#c97808;background:#f5b94224}.admin-device-log-level--error{border-color:#ff6b6b}@supports (color:color-mix(in lab,red,red)){.admin-device-log-level--error{border-color:color-mix(in srgb,#ff6b6b 42%,var(--surface-border))}}.admin-device-log-level--error{color:#be123c;background:#ff6b6b24}.admin-device-log-row__tag{border:1px solid var(--surface-border);border-radius:999px;padding:.24rem .56rem}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row__tag{border:1px solid color-mix(in srgb,var(--surface-border) 88%,transparent)}}.admin-device-log-row__tag{background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row__tag{background:color-mix(in srgb,var(--surface-strong) 55%,transparent)}}.admin-device-log-row__tag{font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:.74rem}.admin-device-log-row__timestamp-label,.admin-device-log-row__timestamp-subtle,.admin-device-log-row__fields{color:var(--text-muted);font-size:.8rem}.admin-device-log-row__timestamp-label{text-transform:uppercase;letter-spacing:.08em}.admin-device-log-row__message{margin:0;font-size:.98rem;font-weight:620;line-height:1.45}.admin-device-log-row__fields{flex-wrap:wrap;gap:.8rem;display:flex}.admin-device-log-row__fields strong{color:var(--text)}.admin-device-log-row__payload{border-top:1px solid var(--surface-border)}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row__payload{border-top:1px solid color-mix(in srgb,var(--surface-border) 72%,transparent)}}.admin-device-log-row__payload{padding-top:.65rem}.admin-device-log-row__payload summary{cursor:pointer;color:var(--accent);font-weight:600}.admin-device-log-row__payload pre{border:1px solid var(--surface-border);border-radius:.85rem;margin:.7rem 0 0;padding:.75rem}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row__payload pre{border:1px solid color-mix(in srgb,var(--surface-border) 82%,transparent)}}.admin-device-log-row__payload pre{background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.admin-device-log-row__payload pre{background:color-mix(in srgb,var(--surface-strong) 56%,transparent)}}.admin-device-log-row__payload pre{font-size:.8rem;line-height:1.45;overflow:auto}.device-channel-preview-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.8rem;display:grid}.device-channel-preview-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--surface-border);background:linear-gradient(180deg,var(--surface-strong),var(--surface)),radial-gradient(circle at top right,var(--accent),transparent 40%);border-radius:1rem;width:100%}@supports (color:color-mix(in lab,red,red)){.device-channel-preview-card{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 68%,transparent),color-mix(in srgb,var(--surface) 88%,transparent)),radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 14%,transparent),transparent 40%)}}.device-channel-preview-card{font:inherit;text-align:left;color:var(--text);cursor:pointer;gap:.7rem;padding:.95rem;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid}.device-channel-preview-card:hover{border-color:var(--accent);transform:translateY(-2px)}@supports (color:color-mix(in lab,red,red)){.device-channel-preview-card:hover{border-color:color-mix(in srgb,var(--accent) 34%,var(--surface-border))}}.device-channel-preview-card:hover{box-shadow:0 22px 46px -34px var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-channel-preview-card:hover{box-shadow:0 22px 46px -34px color-mix(in srgb,var(--accent) 52%,transparent)}}.device-channel-preview-card:focus-visible{outline:2px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.device-channel-preview-card:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 42%,transparent)}}.device-channel-preview-card:focus-visible{outline-offset:2px}.device-channel-preview-card__header{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.device-channel-preview-card__header h3{font-family:var(--font-headline);margin:.18rem 0 0;font-size:1rem}.device-channel-preview-card__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.74rem}.device-channel-preview-card__custom-id{color:var(--text-muted);margin:.18rem 0 0;font-size:.82rem}.device-channel-preview-card__link-label{color:var(--accent);font-size:.84rem;font-weight:700}.device-channel-preview-card__value-row{justify-content:space-between;align-items:end;gap:.65rem;display:flex}.device-channel-preview-card__value-row strong{font-family:var(--font-headline);font-size:1.18rem}.device-channel-preview-card__value-row span{color:var(--text-muted);text-align:right;font-size:.82rem}.device-channel-preview-card__footer{color:var(--text-muted);justify-content:space-between;gap:.65rem;font-size:.8rem;display:flex}.channel-sparkline{border:1px solid var(--surface-border)}@supports (color:color-mix(in lab,red,red)){.channel-sparkline{border:1px solid color-mix(in srgb,var(--surface-border) 80%,transparent)}}.channel-sparkline{background:var(--surface);border-radius:.85rem}@supports (color:color-mix(in lab,red,red)){.channel-sparkline{background:color-mix(in srgb,var(--surface) 64%,transparent)}}.channel-sparkline{padding:.4rem .45rem}.channel-sparkline__svg{width:100%;height:74px;display:block}.channel-sparkline__baseline{stroke:var(--surface-border)}@supports (color:color-mix(in lab,red,red)){.channel-sparkline__baseline{stroke:color-mix(in srgb,var(--surface-border) 90%,transparent)}}.channel-sparkline__baseline{stroke-width:1px}.channel-sparkline__area{fill:var(--accent)}@supports (color:color-mix(in lab,red,red)){.channel-sparkline__area{fill:color-mix(in srgb,var(--accent) 14%,transparent)}}.channel-sparkline__line{fill:none;stroke:var(--accent);stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round}.channel-sparkline__dot{fill:var(--accent)}.channel-sparkline__placeholder{fill:none;stroke:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.channel-sparkline__placeholder{stroke:color-mix(in srgb,var(--text-muted) 45%,transparent)}}.channel-sparkline__placeholder{stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:4 4}.channel-sparkline--loading{opacity:.7}.channel-sparkline--error .channel-sparkline__line,.channel-sparkline--error .channel-sparkline__dot{stroke:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.channel-sparkline--error .channel-sparkline__line,.channel-sparkline--error .channel-sparkline__dot{stroke:color-mix(in srgb,var(--text-muted) 52%,transparent)}}.channel-sparkline--error .channel-sparkline__line,.channel-sparkline--error .channel-sparkline__dot{fill:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.channel-sparkline--error .channel-sparkline__line,.channel-sparkline--error .channel-sparkline__dot{fill:color-mix(in srgb,var(--text-muted) 52%,transparent)}}.channel-sparkline--empty .channel-sparkline__area,.channel-sparkline--empty .channel-sparkline__dot{display:none}.channel-sparkline--flat .channel-sparkline__line{stroke:#22b8ad}@supports (color:color-mix(in lab,red,red)){.channel-sparkline--flat .channel-sparkline__line{stroke:color-mix(in srgb,#22b8ad 82%,var(--accent))}}.device-config-page__header{justify-content:space-between;align-items:flex-end;gap:.9rem;display:flex}.device-config-page__actions{flex-wrap:wrap;gap:.55rem;display:flex}.channel-view-page{gap:.95rem;max-width:1180px;display:grid}.channel-detail-page,.channels-page{gap:1rem;max-width:1180px;display:grid}.channels-page__header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.channels-page__copy{max-width:62ch;color:var(--text-muted);margin:0}.channels-page__actions{align-items:center;gap:.65rem;display:flex}.channels-page__table{display:grid}.channel-view-page__header{justify-content:space-between;align-items:flex-end;gap:.9rem;display:flex}.channel-view-page__subtitle{color:var(--text-muted);margin:0;font-size:.92rem}.channel-view-page__actions{flex-wrap:wrap;gap:.55rem;display:flex}.channel-view-toolbar{flex-wrap:wrap;align-items:end;gap:.75rem;display:flex}.channel-view-toolbar__select{min-width:220px;color:var(--text-muted);gap:.3rem;font-size:.83rem;display:grid}.channel-view-toolbar__presets{flex-wrap:wrap;gap:.45rem;display:flex}.channel-view-toolbar__preset{min-width:3.2rem}.channel-view-toolbar__preset--active{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.channel-view-toolbar__preset--active{border-color:color-mix(in srgb,var(--accent) 42%,var(--surface-border))}}.channel-view-toolbar__preset--active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.channel-view-toolbar__preset--active{background:color-mix(in srgb,var(--accent) 13%,var(--surface))}}.channel-view-toolbar__live{flex-wrap:wrap;gap:.45rem;margin-left:auto;display:flex}.channel-view-page__meta{color:var(--text-muted);margin:0;font-size:.84rem}.channel-role-card{gap:.9rem;display:grid}.channel-role-card__header{padding-bottom:0}.channel-role-card__header h2{font-family:var(--font-headline);margin:.12rem 0 0;font-size:1.1rem}.channel-role-card__copy{color:var(--text-muted);max-width:62ch;margin:.25rem 0 0}.channel-role-card__meta{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;display:grid}.channel-role-card__meta-item{border:1px solid var(--surface-border)}@supports (color:color-mix(in lab,red,red)){.channel-role-card__meta-item{border:1px solid color-mix(in srgb,var(--surface-border) 86%,transparent)}}.channel-role-card__meta-item{background:var(--surface);border-radius:.9rem}@supports (color:color-mix(in lab,red,red)){.channel-role-card__meta-item{background:color-mix(in srgb,var(--surface) 78%,transparent)}}.channel-role-card__meta-item{gap:.3rem;padding:.85rem;display:grid}.channel-role-card__meta-item span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}.channel-role-form{gap:.65rem;display:grid}.channel-role-form__field{max-width:420px}.channel-role-form__hint{color:var(--text-muted);margin:0;font-size:.84rem}.channel-role-form__actions{flex-wrap:wrap;gap:.55rem;display:flex}.channel-chart{border:1px solid var(--surface-border);background:var(--surface);border-radius:1rem}@supports (color:color-mix(in lab,red,red)){.channel-chart{background:color-mix(in srgb,var(--surface) 70%,transparent)}}.channel-chart{padding:.45rem .45rem .2rem}.channel-chart__canvas{width:100%;height:420px}.config-form{gap:.9rem;display:grid}.config-group{border:1px solid var(--surface-border);background:var(--surface);border-radius:.85rem;gap:.65rem;padding:.85rem;display:grid}@supports (color:color-mix(in lab,red,red)){.config-group{background:color-mix(in srgb,var(--surface) 65%,transparent)}}.config-group__legend{padding:0 .35rem;font-weight:650}.config-group__body{gap:.6rem;display:grid}.config-field{gap:.3rem;display:grid}.config-field label{font-size:.88rem;font-weight:600}.config-help{color:var(--text-muted);margin:0;font-size:.82rem}.channel-picker{gap:.45rem}.channel-picker__inline{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.channel-picker__button{white-space:nowrap;padding:.42rem .72rem;font-size:.8rem}.channel-picker__preview{flex-wrap:wrap;gap:.45rem;display:flex}.channel-picker__preview-chip{border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.channel-picker__preview-chip{border:1px solid color-mix(in srgb,var(--accent) 26%,var(--surface-border))}}.channel-picker__preview-chip{background:var(--accent);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.channel-picker__preview-chip{background:color-mix(in srgb,var(--accent) 10%,var(--surface))}}.channel-picker__preview-chip{color:var(--text);padding:.32rem .62rem;font-size:.78rem}.channel-picker__empty{margin-right:auto}.channel-picker-modal{gap:.95rem;display:grid}.channel-picker-modal__toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.75rem;display:grid}.channel-picker-modal__search{color:var(--text-muted);gap:.32rem;font-size:.83rem;display:grid}.channel-picker-modal__summary-card{border:1px solid var(--surface-border);background:var(--surface);border-radius:.85rem;min-width:180px;padding:.72rem .82rem}@supports (color:color-mix(in lab,red,red)){.channel-picker-modal__summary-card{background:color-mix(in srgb,var(--surface) 72%,transparent)}}.channel-picker-modal__summary-card{gap:.12rem;display:grid}.channel-picker-modal__summary-card strong{font-family:var(--font-headline);font-size:.98rem}.channel-picker-modal__summary-card span,.channel-picker-modal__section-head span{color:var(--text-muted);font-size:.8rem}.channel-picker-modal__selected,.channel-picker-modal__catalog{border:1px solid var(--surface-border);background:var(--surface);border-radius:.9rem;gap:.75rem;padding:.85rem;display:grid}@supports (color:color-mix(in lab,red,red)){.channel-picker-modal__selected,.channel-picker-modal__catalog{background:color-mix(in srgb,var(--surface) 68%,transparent)}}.channel-picker-modal__section-head{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.channel-picker-modal__section-head strong{margin-bottom:.08rem;display:block}.channel-picker-modal__selected-list{flex-wrap:wrap;gap:.55rem;display:flex}.channel-picker-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.channel-picker-chip{border:1px solid color-mix(in srgb,var(--accent) 28%,var(--surface-border))}}.channel-picker-chip{background:var(--accent);border-radius:.85rem}@supports (color:color-mix(in lab,red,red)){.channel-picker-chip{background:color-mix(in srgb,var(--accent) 10%,var(--surface))}}.channel-picker-chip{color:var(--text);text-align:left;cursor:pointer;gap:.08rem;min-width:180px;padding:.58rem .72rem;display:grid}.channel-picker-chip:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.channel-picker-chip:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--surface-border))}}.channel-picker-chip__label{font-weight:650}.channel-picker-chip__meta,.channel-picker-chip__action{color:var(--text-muted);font-size:.78rem}.channel-picker-chip__action{color:var(--accent);font-weight:600}.channel-picker-modal__groups{gap:.75rem;max-height:min(48vh,420px);padding-right:.12rem;display:grid;overflow:auto}.channel-picker-group{gap:.55rem;display:grid}.channel-picker-group__header{border-bottom:1px solid var(--surface-border);justify-content:space-between;align-items:baseline;gap:.75rem;padding-bottom:.2rem;display:flex}@supports (color:color-mix(in lab,red,red)){.channel-picker-group__header{border-bottom:1px solid color-mix(in srgb,var(--surface-border) 72%,transparent)}}.channel-picker-group__header span{color:var(--text-muted);font-size:.8rem}.channel-picker-group__options{gap:.45rem;display:grid}.channel-picker-option{border:1px solid var(--surface-border)}@supports (color:color-mix(in lab,red,red)){.channel-picker-option{border:1px solid color-mix(in srgb,var(--surface-border) 84%,transparent)}}.channel-picker-option{cursor:pointer;background:var(--surface-strong);border-radius:.8rem;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.65rem;padding:.65rem .72rem;display:grid}@supports (color:color-mix(in lab,red,red)){.channel-picker-option{background:color-mix(in srgb,var(--surface-strong) 60%,transparent)}}.channel-picker-option:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.channel-picker-option:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--surface-border))}}.channel-picker-option__checkbox{margin-top:.2rem}.channel-picker-option__copy{gap:.1rem;display:grid}.channel-picker-option__copy strong{font-size:.92rem}.channel-picker-option__copy span{color:var(--text-muted);font-size:.8rem}.config-boolean{align-items:center;gap:.5rem;display:flex}.config-array{border:1px dashed var(--surface-border);border-radius:.8rem;padding:.75rem}.config-array__list{gap:.65rem;display:grid}.config-array__item{border:1px solid var(--surface-border)}@supports (color:color-mix(in lab,red,red)){.config-array__item{border:1px solid color-mix(in srgb,var(--surface-border) 80%,transparent)}}.config-array__item{border-radius:.75rem;gap:.55rem;padding:.6rem;display:grid}.config-form__actions{flex-wrap:wrap;gap:.6rem;display:flex}.claim-form__field{gap:.3rem;display:grid}.claim-form__field span{color:var(--text-muted);font-size:.82rem}.claim-form__actions{gap:.35rem;min-width:160px;display:grid}.claim-form__hint{color:var(--text-muted);margin:0;font-size:.84rem}.claim-form__error{color:var(--error);margin:0;font-size:.86rem}.claim-message{border:1px solid var(--surface-border);border-radius:.75rem;margin:0;padding:.6rem .75rem;font-size:.9rem}.claim-message--ok{color:#0d7f3b}@supports (color:color-mix(in lab,red,red)){.claim-message--ok{color:color-mix(in srgb,#0d7f3b 70%,var(--text))}}.claim-message--ok{border-color:#0d7f3b}@supports (color:color-mix(in lab,red,red)){.claim-message--ok{border-color:color-mix(in srgb,#0d7f3b 40%,var(--surface-border))}}.claim-message--ok{background:#0d7f3b}@supports (color:color-mix(in lab,red,red)){.claim-message--ok{background:color-mix(in srgb,#0d7f3b 10%,var(--surface))}}.claim-message--error{color:var(--error);border-color:var(--error)}@supports (color:color-mix(in lab,red,red)){.claim-message--error{border-color:color-mix(in srgb,var(--error) 44%,var(--surface-border))}}.claim-message--error{background:var(--error)}@supports (color:color-mix(in lab,red,red)){.claim-message--error{background:color-mix(in srgb,var(--error) 9%,var(--surface))}}.device-table-area{display:grid}.data-table-wrap{border:1px solid var(--surface-border);background:var(--surface);border-radius:1rem;overflow-x:auto}@supports (color:color-mix(in lab,red,red)){.data-table-wrap{background:color-mix(in srgb,var(--surface) 72%,transparent)}}.data-table{border-collapse:collapse;width:100%;min-width:740px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--surface-border);padding:.85rem .95rem}@supports (color:color-mix(in lab,red,red)){.data-table th,.data-table td{border-bottom:1px solid color-mix(in srgb,var(--surface-border) 75%,transparent)}}.data-table th{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.78rem}.data-table tbody tr:last-child td{border-bottom:0}.device-cell{gap:.2rem;display:grid}.channel-cell{gap:.18rem;display:grid}.device-cell span,.channel-cell span{color:var(--text-muted);font-size:.82rem}.channels-page__row{cursor:pointer;transition:background .14s}.channels-page__row:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.channels-page__row:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}}.channels-page__row:focus-visible{outline:2px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.channels-page__row:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 42%,transparent)}}.channels-page__row:focus-visible{outline-offset:-2px}.last-seen-cell{align-items:center;gap:.6rem;display:flex}.last-seen-cell div{gap:.1rem;display:grid}.last-seen-cell span{color:var(--text-muted);font-size:.8rem}.device-bubble{border:1px solid #0000001f;border-radius:999px;width:.72rem;height:.72rem;display:inline-block}.device-bubble--recent{background:#2baa52}.device-bubble--stale{background:#d7ad2d}.device-bubble--old{background:#dd4d4d}.device-bubble--never{background:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.device-bubble--never{background:color-mix(in srgb,var(--text-muted) 40%,transparent)}}.table-actions{gap:.45rem;display:flex}.table-action-button{border:1px solid var(--surface-border);background:var(--surface)}@supports (color:color-mix(in lab,red,red)){.table-action-button{background:color-mix(in srgb,var(--surface) 78%,transparent)}}.table-action-button{color:var(--text);font:inherit;cursor:pointer;border-radius:.65rem;padding:.4rem .65rem;font-size:.86rem}.table-action-button:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.table-action-button:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface))}}.table-action-button:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.table-action-button:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--surface-border))}}.login-panel{gap:.75rem;max-width:520px;padding:1rem 0;display:grid}.login-panel h2{font-family:var(--font-headline);margin:0;font-size:1.28rem}.login-panel p{color:var(--text-muted);margin:0}.me-card{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.7rem;display:grid}.me-card__row{border:1px solid var(--surface-border);background:var(--surface);border-radius:.9rem}@supports (color:color-mix(in lab,red,red)){.me-card__row{background:color-mix(in srgb,var(--surface) 68%,transparent)}}.me-card__row{gap:.35rem;padding:.8rem .9rem;display:grid}.me-card__row span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.81rem}.app-placeholder{gap:1rem;max-width:980px;display:grid}.app-placeholder__header{justify-content:space-between;align-items:flex-end;gap:.9rem;display:flex}.app-placeholder__copy{max-width:62ch;color:var(--text-muted);margin:0}.app-placeholder__actions{flex-wrap:wrap;gap:.65rem;display:flex}.state-block{border:1px dashed var(--surface-border);color:var(--text-muted);border-radius:.95rem;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem;display:flex}.state-block p{margin:0}.state-block--error{border-color:var(--error)}@supports (color:color-mix(in lab,red,red)){.state-block--error{border-color:color-mix(in srgb,var(--error) 48%,var(--surface-border))}}.state-block--error{color:var(--error)}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.app-shell{grid-template:"top"84px"side""main"1fr/1fr}.app-shell__side{border-right:0;border-bottom:1px solid var(--surface-border);padding:.9rem 1rem}.side-nav{flex-flow:wrap}.side-nav__label{width:100%}.side-nav__dev-tools{order:100;width:100%;margin-top:.35rem;padding-top:.7rem}.app-shell__main{padding:1rem}.top-bar{padding:0 1rem}.top-bar__identity{display:none}.claim-form{grid-template-columns:1fr}.claim-form__actions{min-width:0}.device-management-card__actions{justify-content:flex-start;width:100%}.device-management-card__header,.channels-page__header,.device-config-page__header,.device-overview-page__header,.admin-device-logs-page__header{flex-direction:column;align-items:flex-start}.admin-device-logs-page__actions{justify-content:flex-start;width:100%}.admin-device-log-row__meta,.admin-device-log-row__fields{align-items:flex-start}.device-ota-page__header,.device-ota-card__top{flex-direction:column;align-items:flex-start}.device-ota-card__actions,.device-ota-page__actions,.device-ota-modal__actions{justify-content:flex-start;width:100%}.device-ota-release-card__header{flex-direction:column}.device-ota-release-card__chips{justify-content:flex-start}.device-overview-facts{grid-template-columns:1fr}.device-overview-facts__row{grid-template-columns:1fr;gap:.18rem}.device-event-card__meta,.device-event-card__timestamps,.device-ota-history__meta{align-items:flex-start}.device-channel-preview-card__value-row,.device-channel-preview-card__footer{flex-direction:column;align-items:flex-start}.device-channel-preview-card__value-row span{text-align:left}.app-placeholder__header,.channel-view-page__header{flex-direction:column;align-items:flex-start}.channel-view-toolbar{align-items:stretch}.channel-view-toolbar__live{margin-left:0}.channel-picker-modal__toolbar,.channel-picker-modal__section-head{flex-direction:column}.channel-picker__inline{align-items:stretch}.channel-picker-modal__summary-card,.channel-picker-chip{min-width:0}.channel-chart__canvas{height:320px}}
