.csv-device-selector{display:flex;flex-direction:column;gap:12px}.csv-device-selector--summary{gap:8px}.csv-device-selector__drop{border-radius:8px;background:var(--surface, #ffffff);border-color:var(--border, rgba(15, 23, 42, .12))}.csv-device-selector__drop--summary{padding:8px}.csv-device-selector__drop--summary .ant-upload-drag-container{padding:8px 12px}.csv-device-selector__drop-text{font-size:12px!important;line-height:1.3}.csv-device-selector__drop-hint{font-size:11px!important;line-height:1.3}.csv-device-selector__header{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.csv-device-selector__search{flex:1 1 240px;min-width:220px}.csv-device-selector__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.csv-device-selector__list{background:var(--surface, #ffffff);border:1px solid var(--border, rgba(15, 23, 42, .12));border-radius:8px;overflow:hidden}.csv-device-selector__list-header{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--surface-3, var(--surface-2));border-bottom:1px solid var(--border, rgba(15, 23, 42, .12))}.csv-device-selector__item{cursor:pointer;padding:12px 16px}.csv-device-selector__item-content{display:flex;align-items:center;gap:12px;width:100%;padding:0 var(--space-3, 8px)}.csv-device-selector__tick{width:22px;height:22px;border-radius:50%;border:1px solid var(--border, rgba(15, 23, 42, .2));display:inline-flex;align-items:center;justify-content:center;color:transparent;background:transparent;flex-shrink:0}.csv-device-selector__tick.is-on{background:var(--support, #22b07d);border-color:var(--support, #22b07d);color:#fff}.csv-device-selector__tick--header{border-color:transparent;background:transparent;color:transparent}.csv-device-selector__item-meta{flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px}.csv-device-selector__item-name{font-weight:600;color:var(--text, #0b1220);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.csv-device-selector__item-meta--header .csv-device-selector__item-name,.csv-device-selector__item-meta--header .csv-device-selector__item-sn{font-size:12px;font-weight:600;color:var(--text-muted, rgba(15, 23, 42, .6))}.csv-device-selector__item-sn{color:var(--text-muted, rgba(15, 23, 42, .6));white-space:nowrap}.csv-device-selector__error{font-size:12px}.csv-device-selector__alert{margin-top:10px}.csv-device-selector__example{margin:10px auto 0;padding:6px 8px;width:40%;background:var(--surface-3, var(--surface-2));border-radius:8px;text-align:left}.csv-device-selector__example-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, rgba(15, 23, 42, .6));margin-bottom:4px}.csv-device-selector__example-body{margin:0;font-size:12px;color:var(--text-muted, rgba(15, 23, 42, .6))}.screen-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center}.screen-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a59;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.screen-modal__card{position:relative;width:min(92vw,460px);border-radius:14px;background:var(--surface);border:1px solid var(--border);box-shadow:0 18px 40px #0f172a33;padding:var(--space-6);display:grid;gap:var(--space-4)}.screen-modal__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.screen-modal__title{display:flex;align-items:center;gap:var(--space-2)}.screen-modal__icon{color:#f59e0b}.screen-modal__header p{margin:0;font-size:16px;font-weight:600;color:var(--text)}.screen-modal__close{display:grid;place-items:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);border-radius:8px;cursor:pointer;transition:background var(--transition),color var(--transition),transform var(--transition);margin-right:-10px;margin-top:-18px}.screen-modal__close:hover{color:var(--text);background:#6f3ff51f}.screen-modal__close:focus-visible{outline:1px solid rgba(111,63,245,.5);outline-offset:2px}.screen-modal__body{margin:0;font-size:14px;color:var(--text-muted)}.screen-modal__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-6)}.screen-modal__button{border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px;font-weight:600;padding:8px 10px;cursor:pointer;transition:transform var(--transition),border-color var(--transition),background var(--transition)}.screen-modal__button:hover{border-color:#6f3ff580}.screen-modal__button.is-primary{background:var(--primary);color:#fff;border-color:transparent}.screen-modal__button.is-primary:hover{transform:translateY(-1px)}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{color-scheme:dark light;--font-sans: "Sora", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";--font-display: "Sora", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";--space-1: 3px;--space-2: 6px;--space-3: 10px;--space-4: 14px;--space-5: 18px;--space-6: 22px;--space-7: 28px;--space-8: 36px;--space-9: 48px;--radius-s: 8px;--radius-m: 12px;--radius-l: 16px;--radius-pill: 999px;--transition: .18s ease;--shadow-soft: 0 6px 18px rgba(15, 23, 42, .12);--shadow-glow: 0 1px 2px rgba(15, 23, 42, .08), 0 6px 16px rgba(15, 23, 42, .06);--hero-glow: 0 0 24px rgba(111, 63, 245, .22)}:root[data-theme=dark]{color-scheme:dark;--bg: #0b0f16;--surface: #111827;--surface-3: #0f172a;--surface-2: var(--surface-3);--border: rgba(148, 163, 184, .2);--text: #f8fafc;--text-muted: rgba(226, 232, 240, .68);--primary: #6f3ff5;--info: #00b6c2;--accent: #2f6fed;--accent-2: #8b5cf6;--support: #22b07d;--bg-gradients: radial-gradient(1100px 720px at 10% 15%, rgba(0, 182, 194, .16), transparent 60%), radial-gradient(900px 620px at 90% 12%, rgba(111, 63, 245, .2), transparent 65%), radial-gradient(700px 520px at 60% 85%, rgba(47, 111, 237, .16), transparent 70%)}:root[data-theme=light]{color-scheme:light;--bg: #f6f7fb;--surface: #ffffff;--surface-3: #f0f3f9;--surface-2: rgba(240, 242, 244, .3);--border: rgba(15, 23, 42, .12);--text: #0b1220;--text-muted: rgba(15, 23, 42, .6);--primary: #6f3ff5;--info: #00b6c2;--accent: #2f6fed;--accent-2: #8b5cf6;--support: #22b07d;--bg-gradients: radial-gradient(1100px 720px at 10% 15%, rgba(0, 182, 194, .08), transparent 60%), radial-gradient(900px 620px at 90% 12%, rgba(111, 63, 245, .08), transparent 65%), radial-gradient(700px 520px at 60% 85%, rgba(47, 111, 237, .06), transparent 70%)}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:var(--font-sans);background-color:var(--bg);color:var(--text);letter-spacing:.01em}img{max-width:100%;display:block}a{color:var(--primary);text-decoration:none;transition:color var(--transition)}a:hover,a:focus-visible{color:var(--info)}a:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}p{margin:0;color:var(--text-muted);line-height:1.6}h1,h2,h3{margin:0;color:var(--text);font-weight:700}.xms-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0}.xms-eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:700;color:var(--text-muted);margin:0 0 6px}.xms-title{margin:0;font-size:20px;font-weight:700;color:var(--text);line-height:28px}.xms-title-button{display:inline-flex;align-items:center;gap:8px;padding:0;background:transparent;border:none;color:inherit;font:inherit;cursor:pointer;line-height:inherit;min-height:28px}.xms-title-button:focus-visible{outline:1px dotted rgba(111,63,245,.8);outline-offset:4px}.xms-title-text{text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:transparent;text-decoration-thickness:1px;text-underline-offset:4px}.xms-title-button:hover .xms-title-text,.xms-title-button:focus-visible .xms-title-text{text-decoration-color:currentColor}.xms-title-button .anticon{font-size:16px}.xms-title-button:disabled{cursor:not-allowed;color:var(--text-muted);opacity:.55}.xms-zoom-controls{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.xms-zoom-label{font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted)}.xms-zoom-slider{width:160px}.xms-zoom-value.ant-tag{margin-inline-end:0;padding:0 6px;font-size:10px;line-height:18px;width:52px;min-width:52px;text-align:center;display:inline-flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}.screen-panel,.xms-panel{display:flex;flex-direction:column;min-height:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);overflow:hidden;box-shadow:var(--shadow-soft);animation:cardReveal .7s ease-out both}:root[data-theme=light] .screen-panel,:root[data-theme=light] .xms-panel{background:#fff}.screen-panel__header,.xms-panel__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--border)}.screen-panel__eyebrow,.xms-panel__eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:10px;color:var(--text-muted)}.screen-panel__title,.xms-panel__title{margin:0;font-size:14px;font-weight:700;color:var(--text)}.screen-panel__body,.xms-panel__body{padding:var(--space-3);overflow:hidden;display:flex;flex-direction:column;gap:var(--space-3);min-height:0;flex:1}.xms-search-input.ant-input-affix-wrapper,.xms-search-input.ant-input{border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);color:var(--text);transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}.xms-search-input.ant-input-affix-wrapper .ant-input,.xms-search-input .ant-input{background:transparent;color:var(--text)}.xms-search-input .ant-input::placeholder,.xms-search-input.ant-input::placeholder{color:var(--text-muted)}.xms-search-input .ant-input-prefix{color:var(--text-muted)}.xms-search-input.ant-input-affix-wrapper:focus,.xms-search-input.ant-input-affix-wrapper-focused,.xms-search-input.ant-input:focus,.xms-search-input.ant-input-focused{border-color:var(--primary);box-shadow:0 0 0 2px #6f3ff533;background:var(--surface)}:root[data-theme=light] .xms-search-input.ant-input-affix-wrapper,:root[data-theme=light] .xms-search-input.ant-input{background:var(--surface-2)}:root[data-theme=light] .xms-search-input.ant-input-affix-wrapper:focus,:root[data-theme=light] .xms-search-input.ant-input-affix-wrapper-focused,:root[data-theme=light] .xms-search-input.ant-input:focus,:root[data-theme=light] .xms-search-input.ant-input-focused{background:#fff}.app{min-height:100vh;display:flex;align-items:stretch;justify-content:center;position:relative;isolation:isolate}.app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:var(--bg-gradients);background-size:120% 120%;background-position:15% 20%;opacity:.5;animation:ambientGlow 18s ease-in-out infinite;pointer-events:none;z-index:0}.login-shell{width:min(1040px,92vw);padding:clamp(24px,4vw,40px) 0;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.login-card{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:clamp(16px,2.5vw,28px);padding:clamp(20px,3vw,32px);border-radius:var(--radius-m);border:1px solid var(--border);background:linear-gradient(140deg,#0f172ad1,#0f172aa6);box-shadow:var(--shadow-soft);position:relative;overflow:hidden;animation:rise .8s ease-out both}:root[data-theme=light] .login-card{background:linear-gradient(140deg,#fffffffa,#f0f3f9e6)}.login-card:before{content:"";position:absolute;inset:-40% auto auto -20%;width:300px;height:300px;background:radial-gradient(circle,rgba(111,63,245,.25),transparent 70%);opacity:.6;filter:blur(.5px);pointer-events:none}.login-card:after{content:"";position:absolute;top:18%;right:-40px;width:200px;height:200px;background:radial-gradient(circle,rgba(0,182,194,.22),transparent 70%);opacity:.55;pointer-events:none}.brand-panel{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:var(--space-4);padding-right:clamp(16px,2vw,28px)}.brand-header{display:grid;gap:var(--space-3);position:relative;z-index:1}.brand-logo{width:220px;min-width:168px;filter:invert(1)}:root[data-theme=light] .brand-logo{filter:none}.brand-tagline{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.16em;font-size:14px;color:var(--text);font-weight:600}.brand-copy{max-width:420px;font-size:18px}.form-panel{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;padding-left:clamp(16px,2vw,28px);border-left:1px solid var(--border)}.form-card{width:100%;max-width:none;padding:0;border:none;background:transparent;box-shadow:none}.form-header{display:grid;gap:var(--space-3);margin-bottom:var(--space-5)}.form-kicker{text-transform:uppercase;letter-spacing:.26em;font-size:10px;font-weight:700;color:var(--text-muted)}.form-header h1{font-size:clamp(24px,3.4vw,32px);font-weight:700}.form-subtitle{font-size:14px}.login-form{display:grid;gap:var(--space-4)}.form-error{border-radius:var(--radius-s);border:1px solid rgba(255,120,117,.55);background:#ff4d4f24;color:#ffd8d6;padding:10px 12px;font-size:13px;font-weight:600;line-height:1.2;min-height:calc(1.2em + 22px)}:root[data-theme=light] .form-error{border-color:#cf132259;background:#ff4d4f1f;color:#a8071a}.form-error.is-empty{visibility:hidden}.field{display:grid;gap:var(--space-2)}.field__label{font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);font-weight:700}.field__input{padding:10px 12px;border-radius:var(--radius-s);border:1px solid var(--border);background:#0f172a4d;color:var(--text);font-size:14px;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}:root[data-theme=light] .field__input{background:#f3f5f9e6}.field__input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #6f3ff533;background:#0f172a73}:root[data-theme=light] .field__input:focus{background:#fff}.field__hint{font-size:12px;color:#ff7875;min-height:1.2em;line-height:1.2}:root[data-theme=light] .field__hint{color:#cf1322}.field__hint.is-empty{visibility:hidden}.form-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap}.text-link{font-size:13px;font-weight:700}.button-stack{display:grid;gap:var(--space-3)}.button{border-radius:var(--radius-s);padding:10px 14px;font-size:13px;font-weight:700;border:1px solid transparent;cursor:pointer;transition:box-shadow var(--transition),border-color var(--transition),background var(--transition),color var(--transition);font-family:var(--font-sans)}.button:disabled{cursor:not-allowed;opacity:.7;transform:none;box-shadow:none}@media (max-width: 980px){.login-card{grid-template-columns:1fr;gap:var(--space-5)}.brand-panel{order:2;padding-right:0}.form-panel{order:1;padding-left:0;padding-top:var(--space-5);border-left:none;border-top:1px solid var(--border)}}@media (max-width: 700px){.login-shell{width:min(560px,92vw)}.form-footer{flex-direction:column;align-items:flex-start}}.button:focus-visible{outline:2px solid rgba(111,63,245,.6);outline-offset:2px}.button--primary{background:var(--primary);color:#fff;box-shadow:0 6px 12px #6f3ff540}.button--primary:hover,.button--primary:focus-visible{box-shadow:0 8px 16px #6f3ff54d}.button--secondary{background:transparent;border-color:var(--border);color:var(--text)}.button--secondary:hover,.button--secondary:focus-visible{border-color:#6f3ff580;color:var(--text)}.checkbox{display:inline-flex;align-items:center;gap:var(--space-2);font-size:13px;color:var(--text);cursor:pointer;position:relative}.checkbox__input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.checkbox__box{width:16px;height:16px;border-radius:4px;border:1px solid var(--border);display:grid;place-items:center;background:#0f172a4d;transition:border-color var(--transition),background var(--transition)}:root[data-theme=light] .checkbox__box{background:#f3f5f9e6}.checkbox__input:checked+.checkbox__box{border-color:var(--primary);background:#6f3ff52e}.checkbox__input:checked+.checkbox__box:after{content:"";width:8px;height:8px;border-radius:2px;background:var(--primary)}.checkbox__input:focus-visible+.checkbox__box{border-color:var(--primary);box-shadow:0 0 0 2px #6f3ff533}.checkbox__label{color:var(--text)}.form-footer{margin-top:var(--space-4);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;font-size:13px}.theme-toggle{background:transparent;border:1px solid var(--border);color:var(--text);padding:6px 12px;border-radius:var(--radius-s);font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;cursor:pointer;transition:border-color var(--transition),color var(--transition)}.theme-toggle:hover,.theme-toggle:focus-visible{border-color:#6f3ff599;color:var(--text)}.dashboard-shell{min-height:100vh;height:100vh;position:relative;isolation:isolate;overflow:hidden}.dashboard-shell:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:var(--bg-gradients);background-size:120% 120%;background-position:15% 20%;opacity:.35;animation:ambientGlow 22s ease-in-out infinite;pointer-events:none;z-index:0}.dashboard-sider{background:#111827eb;border-right:1px solid var(--border);position:relative;z-index:1;height:100vh;overflow:hidden}:root[data-theme=light] .dashboard-sider{background:#fffffff5}.dashboard-sider .ant-layout-sider-children{display:flex;flex-direction:column;height:100%;min-height:0;padding:var(--space-4) var(--space-3);gap:var(--space-3);overflow:hidden}.dashboard-main{background:transparent;position:relative;z-index:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.dashboard-content{padding:clamp(14px,2vw,24px);background:transparent;min-height:0;flex:1;overflow-y:auto}.side-brand{display:inline-flex;align-items:center;justify-content:flex-start;border:none;background:transparent;padding:0;cursor:pointer}.side-brand__logo{width:120px;filter:invert(1)}:root[data-theme=light] .side-brand__logo{filter:none}.side-nav{display:flex;flex-direction:column;gap:var(--space-3);flex:1;min-height:0;overflow-y:auto;padding-right:2px}.dashboard-menu{background:transparent;border-inline-end:none;flex:0 0 auto;min-height:0}.dashboard-menu .ant-menu-item{height:32px;line-height:32px;margin:1px 0;border-radius:var(--radius-s);padding-inline:10px;font-size:12px;font-weight:400;color:var(--text)}.dashboard-menu .ant-menu-item .ant-menu-title-content{font-family:var(--font-sans)}.dashboard-menu .ant-menu-item-icon{font-size:16px;color:var(--text-muted)}.dashboard-menu .ant-menu-item-selected{background:#6f3ff533;color:var(--text);font-weight:400}.dashboard-menu .ant-menu-item-selected .ant-menu-item-icon{color:var(--text)}.dashboard-menu .ant-menu-item:hover{background:#6f3ff51f}.dashboard-menu .ant-menu-item:after{border-right:none}.side-footer{margin-top:auto;padding-top:var(--space-3);border-top:1px solid var(--border)}.user-button{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:8px 10px;border-radius:var(--radius-s);border:1px solid var(--border);background:#0f172a66;color:var(--text);cursor:pointer;text-align:left;transition:border-color var(--transition),background var(--transition)}:root[data-theme=light] .user-button{background:#f3f5f9e6}.user-button:hover,.user-button:focus-visible{border-color:#6f3ff599;background:#6f3ff51f}.user-avatar{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#6f3ff529;border:1px solid rgba(111,63,245,.35);font-weight:700;color:var(--text)}.user-meta{display:grid;gap:2px}.user-name{font-weight:700;font-size:14px;color:var(--text)}.user-role{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.content-panel{display:grid;gap:var(--space-4);padding:clamp(16px,2.5vw,28px)}.page-title{font-size:clamp(22px,2.8vw,28px);font-weight:700;color:var(--text);margin:0}.page-subtitle{font-size:13px;max-width:520px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:var(--space-4);align-items:start}.panel{border-radius:var(--radius-m);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);overflow:hidden;animation:cardReveal .7s ease-out both}:root[data-theme=light] .panel{background:#fff}.panel .ant-card-body{padding:12px}.panel-header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-3)}.panel-title{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:var(--text-muted)}.panel-subtitle{margin:0;font-size:13px;color:var(--text-muted)}.panel-count{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);white-space:nowrap}.panel .ant-list-item{border-block-end:none}.activity-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-3)}.activity-item{display:flex;justify-content:space-between;gap:var(--space-3);padding:8px 10px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2)}:root[data-theme=light] .activity-item{background:var(--surface-2)}.activity-title{font-size:14px;font-weight:700;color:var(--text);margin:0}.activity-meta{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--text-muted);margin:0}.activity-time{font-size:12px;color:var(--text-muted);white-space:nowrap}.deployment-list{display:grid;gap:var(--space-3)}.deployment-row{display:flex;justify-content:space-between;gap:var(--space-4);padding:10px 12px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2)}:root[data-theme=light] .deployment-row{background:var(--surface-2)}.deployment-name{font-weight:700;color:var(--text);margin:0}.deployment-meta{font-size:13px;color:var(--text-muted);margin:0}.deployment-scenario{display:grid;gap:var(--space-1);text-align:right}.deployment-scenario__name{font-weight:600;color:var(--text)}.status-tag.ant-tag{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;border-radius:var(--radius-s)}.modal-search .ant-modal-content,.modal-devices .ant-modal-content,.modal-settings .ant-modal-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:var(--shadow-soft)}:root[data-theme=light] .modal-search .ant-modal-content,:root[data-theme=light] .modal-devices .ant-modal-content,:root[data-theme=light] .modal-settings .ant-modal-content{background:#fff}.modal-search .ant-modal-header,.modal-devices .ant-modal-header,.modal-settings .ant-modal-header{background:transparent;border-bottom:1px solid var(--border)}.modal-search .ant-modal-title,.modal-devices .ant-modal-title,.modal-settings .ant-modal-title{color:var(--text);font-weight:700}.modal-search .ant-modal-close,.modal-devices .ant-modal-close,.modal-settings .ant-modal-close{color:var(--text-muted)}.modal-search .ant-modal-body,.modal-devices .ant-modal-body,.modal-settings .ant-modal-body{padding:var(--space-4)}.modal-search .ant-modal-content{display:flex;flex-direction:column;max-height:calc(100vh - 120px);overflow:hidden}.modal-search .ant-modal-body{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:var(--space-3);overflow-y:auto;flex:1;min-height:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:grid;place-items:center;padding:var(--space-5);z-index:10}.modal{width:min(640px,92vw);border-radius:var(--radius-m);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);padding:var(--space-5);display:grid;gap:var(--space-3)}:root[data-theme=light] .modal{background:#fff}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.modal-title{margin:0;font-size:20px;font-weight:700;color:var(--text)}.modal-close{border:1px solid var(--border);background:transparent;color:var(--text);padding:6px 10px;border-radius:var(--radius-s);font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;cursor:pointer;transition:border-color var(--transition),color var(--transition)}.modal-close:hover,.modal-close:focus-visible{border-color:#6f3ff599;color:var(--text)}.search-input.ant-input-affix-wrapper{width:100%;padding:8px 10px}.search-hint{font-size:12px;color:var(--text-muted);margin:0}.search-results .ant-list-items{display:grid;gap:var(--space-3)}.search-results .ant-list-item{border-block-end:none}.modal-search .search-results{min-height:0;max-height:60vh;overflow-y:auto;overflow-x:hidden;padding-right:4px}.search-item{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2)}.search-name{font-weight:700;color:var(--text);margin:0}.search-meta{font-size:12px;color:var(--text-muted);margin:0}.search-tag{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;white-space:nowrap}.search-empty{font-size:13px;color:var(--text-muted);margin:0}.modal--settings{width:min(520px,92vw)}.settings-card{display:grid;gap:var(--space-4)}.settings-section{display:grid;gap:var(--space-3)}.settings-user{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2)}:root[data-theme=light] .settings-user{background:var(--surface-2)}.settings-avatar{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#6f3ff529;border:1px solid rgba(111,63,245,.35);font-weight:700;color:var(--text)}.settings-name{margin:0;font-weight:700;color:var(--text)}.settings-email{margin:0;font-size:12px;color:var(--text-muted)}.settings-label{margin:0 0 var(--space-3);font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--text-muted)}.settings-logout.ant-btn{width:100%;justify-content:center;border-radius:var(--radius-s);border:1px solid rgba(239,68,68,.35);color:#f87171;background:#ef444414}.settings-logout.ant-btn:hover,.settings-logout.ant-btn:focus-visible{border-color:#ef444499;color:#fecaca;background:#ef44442e}:root[data-theme=light] .settings-logout.ant-btn{color:#b91c1c;background:#ef444414}:root[data-theme=light] .settings-logout.ant-btn:hover,:root[data-theme=light] .settings-logout.ant-btn:focus-visible{color:#7f1d1d;background:#ef444424}.settings-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.settings-option{border-radius:var(--radius-s);border:1px solid var(--border);background:transparent;color:var(--text);padding:10px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;cursor:pointer;transition:border-color var(--transition),background var(--transition)}.settings-option:hover,.settings-option:focus-visible{border-color:#6f3ff599}.settings-option.is-active{border-color:#6f3ff5cc;background:#6f3ff529}@media (max-width: 980px){.dashboard-shell{flex-direction:column}.dashboard-sider{position:relative;top:0;height:auto;width:100%!important;border-right:none;border-bottom:1px solid var(--border)}.dashboard-grid{grid-template-columns:1fr}}@media (max-width: 700px){.activity-item,.deployment-row{flex-direction:column;align-items:flex-start}.deployment-scenario{text-align:left}}.home-deployment-list__intro{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.home-deployment-list__description{margin:0;flex:1}.home-deployment-list__create-button{flex-shrink:0}.home-deployment-list.deployments-view{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);height:560px;overflow-y:auto;overflow-x:hidden;align-content:start;padding-right:4px;overscroll-behavior:contain}.home-deployment-list--loading{pointer-events:none}.home-deployment-item{display:grid;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);padding:10px 12px}.home-deployment-item--loading{min-height:188px;background:var(--surface)}.home-deployment-item__loading-body{border-top:1px solid var(--border);padding-top:var(--space-2)}.home-deployment-item__header{display:grid;gap:var(--space-1)}.home-deployment-collapse.ant-collapse,.home-deployment-collapse.ant-collapse-ghost{background:transparent}.home-deployment-collapse.ant-collapse>.ant-collapse-item,.home-deployment-collapse.ant-collapse-ghost>.ant-collapse-item{border-bottom:none}.home-deployment-collapse.ant-collapse>.ant-collapse-item>.ant-collapse-header,.home-deployment-collapse.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-header{padding:0;cursor:pointer}.home-deployment-collapse.ant-collapse>.ant-collapse-item>.ant-collapse-content,.home-deployment-collapse.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content{border-top:none}.home-deployment-collapse.ant-collapse>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box,.home-deployment-collapse.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding:0}.home-deployment-item__top-row{display:flex;justify-content:space-between;gap:var(--space-2);align-items:flex-start}.home-deployment-item__title{margin:0;min-width:0}.home-deployment-item .deployment-title{font-size:16px;line-height:22px;min-height:22px}.home-deployment-item .deployment-title-prefix{width:16px;height:16px;font-size:14px;margin-right:6px}.home-deployment-item .xms-title-button{line-height:22px;min-height:22px;gap:6px}.home-deployment-title-input.ant-input{width:min(320px,92vw);font-size:16px;line-height:22px;height:24px;min-height:24px}.home-deployment-item__actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.home-deployment-item__meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.home-deployment-item__meta .deployments-meta__text{font-size:12px}.home-deployment-item__updated{display:inline-flex;align-items:center;gap:var(--space-2)}.home-deployment-collapse-handle{width:22px;height:22px;border-radius:var(--radius-s);border:1px solid var(--border);background:transparent;color:var(--text);display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:border-color var(--transition),background var(--transition)}.home-deployment-collapse-handle:hover,.home-deployment-collapse-handle:focus-visible{border-color:#6f3ff599;background:#6f3ff51f}.home-deployment-item__count{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.home-deployment-item__body{border-top:1px solid var(--border);padding-top:var(--space-2)}.home-deployment-item__scenario-header{margin-bottom:var(--space-2);justify-content:flex-end}.home-deployment-item__body .scenario-list{margin-top:0}@media (max-width: 700px){.home-deployment-list__intro,.home-deployment-item__top-row{flex-direction:column;align-items:flex-start}.home-deployment-item__actions{width:100%;justify-content:flex-start}.home-deployment-list.deployments-view{height:420px}}.recent-edits{display:grid;gap:var(--space-2)}.recent-edits__title{margin:0;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted)}.recent-edits__list{display:grid;gap:0}.recent-edits__item{display:flex;align-items:center;gap:var(--space-2);padding:8px 4px;border-radius:0;border:none;border-bottom:1px solid var(--border);background:transparent;min-width:0;width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:border-color var(--transition),background var(--transition)}.recent-edits__item:hover,.recent-edits__item:focus-visible{background:#6f3ff51f}.recent-edits__item:last-child{border-bottom:none}.recent-edits__icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:16px;line-height:1;color:var(--text-muted);flex:0 0 auto;margin-top:0}.recent-edits__icon[data-type=Deployment]{color:#2f54eb}.recent-edits__icon[data-type=Scenario]{color:#722ed1}.recent-edits__icon[data-type=Screen]{color:#13c2c2}.recent-edits__name{font-size:12px;font-weight:400;color:var(--text);min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.recent-edits__name-text{display:inline-block;padding-right:12px;will-change:transform}.recent-edits__item:hover .recent-edits__name[data-truncated=true]{text-overflow:clip}.recent-edits__item:hover .recent-edits__name[data-truncated=true] .recent-edits__name-text{animation:recent-edits-marquee 6s linear infinite}.recent-edits__empty{font-size:12px;color:var(--text-muted)}@keyframes recent-edits-marquee{0%,12%{transform:translate(0)}88%,to{transform:translate(calc(-1 * var(--marquee-distance, 0px)))}}@media (prefers-reduced-motion: reduce){.recent-edits__item:hover .recent-edits__name[data-truncated=true] .recent-edits__name-text{animation:none}}.deployments-shell{display:flex;flex-direction:column;gap:var(--space-3);min-height:0;height:100%}.deployments-header-actions{display:flex;gap:var(--space-2);align-items:center}.deployments-button.ant-btn{border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);color:var(--text)}.deployments-button.ant-btn:hover{color:var(--text);border-color:#6f3ff599;background:#6f3ff51f}:root[data-theme=light] .deployments-button.ant-btn{background:#fff}.deployments-view{display:grid;grid-template-columns:35fr 65fr;gap:var(--space-4);min-height:0;height:100%}.deployments-column{display:flex;min-height:0}.deployments-panel{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);min-height:0;width:100%;margin:0 0 0 150px;border-bottom:none;border-bottom-right-radius:0;border-bottom-left-radius:0;-webkit-mask-image:linear-gradient(to bottom,black 95%,transparent 100%);mask-image:linear-gradient(to bottom,black 95%,transparent 100%)}.deployments-panel--empty{align-items:center;justify-content:center;text-align:center}.deployments-panel__header{display:grid;gap:var(--space-2)}.deployments-meta{margin:6px 0 0;font-size:12px;color:var(--text-muted)}.deployments-empty,.deployment-empty{margin:0;font-size:12px;color:var(--text-muted)}.deployment-search{padding:8px 10px}.deployments-list-panel{display:flex;flex-direction:column;gap:var(--space-3);min-height:0;width:100%;background:transparent}.deployments-list-divider{border:none;height:1px;width:100%;background:var(--border);margin:0}.deployments-list{display:grid;gap:var(--space-2);overflow:auto;padding-right:4px}.deployments-list--loading{overflow:hidden;padding-right:0}.deployment-list-item{border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);padding:var(--space-3);display:block;text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;transition:border-color var(--transition),background var(--transition)}.deployment-list-item--loading{cursor:default;pointer-events:none}:root[data-theme=light] .deployment-list-item{background:var(--surface)}:root[data-theme=light] .deployment-list-item:hover,.deployment-list-item:focus-visible{background:#f5f7ff}.deployment-list-item:hover,.deployment-list-item:focus-visible{border-color:#6f3ff599;background:#6f3ff51f}.deployment-list-item.is-active{border-color:var(--primary);background:#6f3ff52e}.deployment-list-name{margin:0;font-weight:700;color:var(--text)}.deployment-list-meta{margin:0;font-size:12px;color:var(--text-muted)}.deployment-list-content{display:grid;gap:4px}.deployment-list-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.deployment-list-row--meta{align-items:baseline}.deployment-list-count-item{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:4px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);white-space:nowrap;text-align:right}.deployment-list-count-item .anticon{font-size:12px}.deployment-detail__header{display:grid;gap:6px}.deployment-title-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.deployments-meta--row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.deployments-meta__text{flex:1;min-width:0}.deployment-title{margin:0;font-size:20px;font-weight:700;color:var(--text);display:inline-flex;align-items:center;line-height:28px;min-height:28px}.deployment-title-prefix{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:8px;font-size:16px;color:#2f54eb}.deployment-title-input,.deployment-title-input.ant-input{width:min(360px,90vw);font-size:20px;font-weight:700;height:28px;line-height:28px;padding:0 8px;box-sizing:border-box}.deployment-title-input.ant-input-sm{height:28px;line-height:28px}.deployment-device-button.ant-btn{margin-right:4px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);color:var(--text)}.deployment-device-button.ant-btn:hover,.deployment-device-button.ant-btn:focus-visible{color:var(--text);border-color:#6f3ff599;background:#6f3ff51f}.deployment-detail__content{display:grid;gap:var(--space-3);min-height:0;flex:1}.deployment-detail__content--balanced{grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.deployment-detail__content--device-fill{grid-template-rows:auto minmax(0,1fr)}.deployment-detail__content--scenario-fill{grid-template-rows:minmax(0,1fr) auto}.deployment-detail__section{display:grid;grid-template-rows:auto minmax(0,1fr);gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border);min-height:0}.deployment-detail__section--scenarios{order:1}.deployment-detail__section--devices{order:2}.deployment-section__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.deployment-section__title{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:var(--text-muted)}.deployment-device-list-scroll{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:4px}.deployments-view .deployment-detail__section--scenarios .scenario-list{margin-top:0;max-height:none;height:100%;min-height:0;align-content:start;grid-auto-rows:max-content;overflow-y:auto;overflow-x:hidden;padding-right:4px}.deployments-panel--device{padding-bottom:var(--space-2)}.deployment-device__columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-3)}.deployment-device__column{display:grid;gap:var(--space-2);min-width:0}.deployment-device__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.deployment-device__title{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--text-muted)}.deployment-device__meta{margin:4px 0 0;font-size:12px;color:var(--text-muted)}.deployment-device__search{width:100%}.deployment-device__csv{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);padding:var(--space-2)}.deployment-device__csv summary{cursor:pointer;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--text);list-style:none}.deployment-device__csv summary::-webkit-details-marker{display:none}.deployment-device__csv summary:before{content:"+";display:inline-flex;align-items:center;justify-content:center;width:16px;margin-right:6px;color:var(--text-muted)}.deployment-device__csv[open] summary:before{content:"-"}.deployment-device__csv .csv-device-selector{margin-top:var(--space-2)}.deployment-device__list{display:grid;gap:6px;border:1px solid var(--border);border-radius:var(--radius-s);padding:var(--space-2);background:var(--surface-2);max-height:360px;overflow:auto}.deployment-device__row{display:grid;gap:2px;text-align:left;border:1px solid transparent;border-radius:var(--radius-s);padding:8px 10px;background:transparent;cursor:pointer;transition:background var(--transition),border-color var(--transition)}.deployment-device__row:hover,.deployment-device__row:focus-visible{background:#6f3ff51f;border-color:#6f3ff533}.deployment-device__row.is-selected{background:#6f3ff529;border-color:#6f3ff559}.deployment-device__name{font-weight:700;color:var(--text)}.deployment-device__name.is-struck{text-decoration:line-through;opacity:.7}.deployment-device__sn{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}@media (max-width: 1200px){.deployment-device__columns{grid-template-columns:minmax(0,1fr)}}.deployments-view .scenario-list{margin-top:var(--space-4);display:grid;gap:var(--space-3)}.deployments-view .scenario-block{border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);padding:var(--space-3)}.deployments-view .scenario-block--create{border-style:dashed}:root[data-theme=light] .deployments-view .scenario-block{background:var(--surface-2)}.deployments-view .scenario-row{display:flex;justify-content:space-between;gap:var(--space-3);align-items:center}.deployments-view .scenario-name{font-weight:700;color:var(--text);margin:0}.deployments-view .scenario-status{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.deployments-view .scenario-status__meta{font-size:11px;color:var(--text-muted)}.deployments-view .scenario-actions{display:flex;gap:var(--space-2)}.deployments-view .scenario-actions__divider.ant-divider-vertical{margin-inline:3px;height:30px;border-inline-start-color:var(--border)}.deployments-view .scenario-actions--create{flex-shrink:0}.deployments-view .scenario-actions--create .icon-button.ant-btn{width:24px;height:24px;border:none;background:transparent}.deployments-view .scenario-actions--create .icon-button.ant-btn:hover,.deployments-view .scenario-actions--create .icon-button.ant-btn:focus-visible{border:none;background:#6f3ff514}.deployments-view .scenario-create{min-width:0;flex:1}.deployments-view .scenario-create-input.ant-input{width:100%}.deployments-view .icon-button,.deployments-view .icon-button.ant-btn{width:30px;height:30px;border-radius:var(--radius-s);border:1px solid var(--border);background:transparent;color:var(--text);display:grid;place-items:center;padding:0;cursor:pointer;transition:border-color var(--transition),background var(--transition),transform var(--transition)}.deployments-view .icon-button:hover,.deployments-view .icon-button:focus-visible{border-color:#6f3ff599;background:#6f3ff51f}.deployments-view .icon-button svg{width:16px;height:16px}.deployments-view .icon-button.ant-btn:disabled,.deployments-view .icon-button.ant-btn:disabled:hover,.deployments-view .icon-button.ant-btn:disabled:focus-visible{border-color:var(--border);background:transparent;color:var(--text-muted);cursor:not-allowed;opacity:.55;transform:none}.deployments-view .icon-button--danger.ant-btn,.deployments-view .icon-button--danger.ant-btn.ant-btn-dangerous{color:#ff4d4f}.deployments-view .icon-button--danger.ant-btn:hover,.deployments-view .icon-button--danger.ant-btn:focus-visible,.deployments-view .icon-button--danger.ant-btn.ant-btn-dangerous:hover,.deployments-view .icon-button--danger.ant-btn.ant-btn-dangerous:focus-visible{color:#ff4d4f;background:#ff4d504d}.deployments-view .scenario-schedule-trigger{position:relative;display:inline-flex}.deployments-view .scenario-inline-picker.ant-picker{position:absolute;width:0;min-width:0;height:0;padding:0;border:0;background:transparent;opacity:0;pointer-events:none;overflow:hidden}.deployments-view .scenario-inline-picker .ant-picker-input,.deployments-view .scenario-inline-picker .ant-picker-suffix{display:none}.modal--devices{width:80vw}.modal--devices .ant-modal-content{height:80vh}.modal--devices .ant-modal-body{height:calc(80vh - 130px);overflow:hidden}.modal--devices .ant-modal-title{color:var(--text-muted)}.device-modal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));height:100%}.device-panel,.device-list-panel{display:flex;flex-direction:column;min-height:0}.device-panel{gap:var(--space-3);padding-right:var(--space-7);border-right:1px solid var(--border)}.device-panel__header{display:grid;gap:var(--space-2)}.device-panel__header .xms-eyebrow{margin-bottom:0}.device-panel__title{margin:0;font-size:16px;font-weight:700;color:var(--text)}.device-panel__copy,.device-panel__hint{margin:0;font-size:12px;color:var(--text-muted)}.device-panel__count{display:block;margin:0 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.device-panel__tabs{display:flex;flex-direction:column;flex:1;min-height:0}.device-panel__tabs .ant-tabs-nav{margin-bottom:var(--space-1)}.device-panel__tabs .ant-tabs-content-holder{flex:1;min-height:0;overflow:hidden}.device-panel__tabs .ant-tabs-content{height:100%}.device-panel__tabs .ant-tabs-tabpane{height:100%;padding:var(--space-1) 0 0;overflow:hidden}.device-tab-panel{display:flex;flex-direction:column;gap:var(--space-2);height:100%;min-height:0}.device-tab-panel--csv{overflow:auto}.device-tab-panel--list{flex:1;min-height:0;overflow:hidden}.device-list-scroll{flex:1;min-height:0;height:100%;overflow:auto}.device-action{width:100%}.device-upload{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-s);border:1px solid var(--border);padding:10px 14px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;cursor:pointer;background:transparent;color:var(--text);text-align:center}.device-upload:hover,.device-upload:focus-visible{border-color:#6f3ff599}.device-upload input{display:none}.device-list-panel{gap:var(--space-3);padding-left:var(--space-7)}.device-search-row{display:flex;align-items:center;gap:var(--space-5)}.device-search.ant-input,.device-search.ant-input-affix-wrapper{flex:1;min-width:0}.device-count{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);white-space:nowrap}.device-list{border:1px solid var(--border);border-radius:0;background:transparent;overflow:hidden}.device-list .ant-list-items{display:block}.device-list .ant-list-item{border-block-end:none;padding:0}.device-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:0;border-bottom:1px solid var(--border);background:transparent;transition:background var(--transition)}.device-list .ant-list-item:last-child{border-bottom:none}.device-row:hover,.device-row:focus-within{background:#6f3ff51f}.device-name{margin:0;font-weight:700;color:var(--text)}.device-meta{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.device-icon-button{border:none;background:transparent;color:var(--text);width:28px;height:28px;border-radius:var(--radius-s);display:grid;place-items:center;transition:background var(--transition);cursor:pointer}.device-icon-button:hover,.device-icon-button:focus-visible{background:#6f3ff529}.device-icon-button svg{width:16px;height:16px}.ant-list .ant-list-item.device-row ul.ant-list-item-action{padding:0;margin:0}.device-remove{opacity:0;transform:translate(6px);transition:opacity var(--transition),transform var(--transition),background var(--transition)}.device-row:hover .device-remove,.device-row:focus-within .device-remove{opacity:1;transform:translate(0)}.new-deployment-template-modal .ant-modal-content{box-sizing:border-box;height:80vh;padding:24px;background:var(--surface, #ffffff);border-radius:10px}.new-deployment-template-modal .ant-modal-body{height:100%;padding:0;overflow:hidden}.new-deployment-template{display:flex;flex-direction:column;gap:16px;height:100%;min-height:0}.new-deployment-template__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.new-deployment-template__title{margin:0;color:var(--text, #0b1220);font-weight:700}.new-deployment-template__subtitle{display:block;margin-top:4px}.new-deployment-template__hint{display:block;margin-top:6px;font-size:12px}.new-deployment-template__name{display:grid;gap:6px}.new-deployment-template__label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted, rgba(15, 23, 42, .6))}.new-deployment-template__devices{flex:1;min-height:0}.new-deployment-template__divider{margin:0}.new-deployment-template__footer{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.new-deployment-template__actions{display:flex;gap:8px}@media (max-width: 1100px){.deployments-view{grid-template-columns:1fr}}@media (max-width: 980px){.deployments-header{flex-direction:column;align-items:flex-start}.deployments-header-actions{width:100%;justify-content:space-between;flex-wrap:wrap}.deployment-section__header{flex-direction:column;align-items:flex-start}.device-modal{grid-template-columns:1fr}.device-panel{border-right:none;border-bottom:1px solid var(--border);padding-right:0;padding-bottom:var(--space-4)}}@media (max-width: 700px){.deployments-view .scenario-row,.device-search-row{flex-direction:column;align-items:flex-start}.device-remove{opacity:1;transform:none}}.scenario-page{display:grid;gap:var(--space-3)}.scenario-header,.scenario-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface)}:root[data-theme=light] .scenario-header,:root[data-theme=light] .scenario-toolbar{background:#fff}.scenario-selects,.scenario-header .scenario-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.scenario-selector{display:grid;gap:6px}.scenario-selector__label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-weight:700;margin:0}.scenario-select{min-width:180px}.scenario-select--wide{min-width:220px}.scenario-select .ant-select-selector{border-radius:var(--radius-s)!important;border-color:var(--border)!important;background:var(--surface-2)!important;color:var(--text)!important}:root[data-theme=light] .scenario-select .ant-select-selector{background:var(--surface-2)!important}.scenario-select .ant-select-selection-item{color:var(--text);font-weight:600}.scenario-select .ant-select-selection-placeholder,.scenario-select .ant-select-arrow{color:var(--text-muted)}.scenario-search.ant-input-affix-wrapper{width:160px}.scenario-date.ant-picker{border-radius:var(--radius-s);border-color:var(--border);background:var(--surface-2)}:root[data-theme=light] .scenario-date.ant-picker{background:var(--surface-2)}.scenario-date.ant-picker input{color:var(--text)}.scenario-toolbar{justify-content:flex-start}.scenario-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700;color:var(--text-muted)}.scenario-tags{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.scenario-tag.ant-tag{border-radius:var(--radius-s);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-inline-end:0}.scenario-content{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:var(--space-3);align-items:start}.scenario-board{min-height:0;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);overflow:hidden}:root[data-theme=light] .scenario-board{background:#fff}.scenario-board .scenario-schedule{overflow:auto;max-height:calc(100vh - 360px);min-height:320px}.scenario-grid{display:grid;grid-template-columns:44px 220px repeat(19,64px);min-width:1480px;border-top:1px solid var(--border);border-left:1px solid var(--border);background:var(--surface-2)}:root[data-theme=light] .scenario-grid{background:var(--surface-2)}.scenario-grid__head,.scenario-grid__date,.scenario-grid__time,.scenario-grid__index,.scenario-grid__cluster,.scenario-grid__cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:6px 8px}.scenario-grid__head{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--text-muted);background:var(--surface)}:root[data-theme=light] .scenario-grid__head{background:#fff}.scenario-grid__date{font-size:12px;font-weight:600;text-align:center;color:var(--text);background:var(--surface)}:root[data-theme=light] .scenario-grid__date{background:#fff}.scenario-grid__time{font-size:11px;text-align:center;color:var(--text-muted);background:var(--surface-2)}:root[data-theme=light] .scenario-grid__time{background:var(--surface-2)}.scenario-grid__index{text-align:center;font-size:12px;color:var(--text-muted);background:var(--surface-2)}:root[data-theme=light] .scenario-grid__index{background:var(--surface-2)}.scenario-grid__cluster{font-weight:600;color:var(--text);background:var(--surface-2)}:root[data-theme=light] .scenario-grid__cluster{background:var(--surface-2)}.scenario-grid__cell{min-height:32px}.scenario-properties{min-height:320px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;overflow:hidden}:root[data-theme=light] .scenario-properties{background:#fff}.scenario-properties__header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--border)}.scenario-properties__icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#6f3ff529;color:var(--primary);font-size:14px}.scenario-properties__meta{flex:1;min-width:0}.scenario-properties__title{margin:0;font-size:14px;font-weight:700;color:var(--text)}.scenario-properties__subtitle{margin:0;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.scenario-properties__delete{color:var(--text-muted)}.scenario-properties__body{padding:var(--space-3);display:grid;gap:var(--space-3);overflow-y:auto}.scenario-properties__section{display:grid;gap:var(--space-2)}.scenario-properties__label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-weight:700;margin:0}.scenario-properties__divider{height:1px;background:var(--border);width:100%}.scenario-properties__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.scenario-properties__note{margin:0;font-size:11px;color:var(--text-muted)}.scenario-properties__selectors{display:grid;gap:var(--space-2)}.scenario-properties__selector{display:flex;align-items:center;gap:var(--space-2);padding:8px 10px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);font-size:12px}:root[data-theme=light] .scenario-properties__selector{background:var(--surface-2)}.scenario-properties__selector-tag{margin-inline-end:0;border-radius:var(--radius-s);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.scenario-properties__selector-value{color:var(--text)}.scenario-properties__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.scenario-properties__devices{display:grid;gap:var(--space-2)}.scenario-properties__device{padding:8px 10px;border-radius:var(--radius-s);border:1px dashed var(--border);font-size:12px;color:var(--text);background:var(--surface-2)}:root[data-theme=light] .scenario-properties__device{background:var(--surface-2)}.scenario-field.ant-input,.scenario-field .ant-input,.scenario-field.ant-input-affix-wrapper,.scenario-field.ant-picker,.scenario-field .ant-select-selector,.scenario-field.ant-select-selector{border-radius:var(--radius-s);border-color:var(--border);background:var(--surface-2);color:var(--text)}:root[data-theme=light] .scenario-field.ant-input,:root[data-theme=light] .scenario-field .ant-input,:root[data-theme=light] .scenario-field.ant-input-affix-wrapper,:root[data-theme=light] .scenario-field.ant-picker,:root[data-theme=light] .scenario-field .ant-select-selector,:root[data-theme=light] .scenario-field.ant-select-selector{background:var(--surface-2)}.scenario-field.ant-input::placeholder,.scenario-field .ant-input::placeholder{color:var(--text-muted)}.scenario-field--textarea{color:var(--text)}@media (max-width: 980px){.scenario-content{grid-template-columns:1fr}.scenario-header .scenario-actions{justify-content:flex-start}}@media (max-width: 700px){.scenario-header .scenario-actions{width:100%}}.scenario-builder-page{display:flex;flex-direction:column;gap:var(--space-3);min-height:0;height:100%}.scenario-builder__loading{display:flex;flex-direction:column;gap:var(--space-3);min-height:0}.scenario-builder__timeline-panel--loading .xms-panel__body{padding:var(--space-3)}.scenario-builder__loading-toolbar{width:100%;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.scenario-builder__loading-toolbar-title.ant-skeleton.ant-skeleton-element{margin-right:auto}.scenario-builder__loading-toolbar-title .ant-skeleton-input{width:130px}.scenario-builder__loading-toolbar-controls .ant-skeleton-input{width:280px;max-width:100%}.scenario-builder__loading-header-breadcrumb .ant-skeleton-input{width:min(340px,75vw)}.scenario-builder__loading-header-title .ant-skeleton-input{width:min(240px,60vw)}.scenario-builder__loading-header-status .ant-skeleton-input{width:76px}.scenario-builder__loading-header-action .ant-skeleton-input{width:74px}.scenario-builder__header{flex-wrap:wrap}.scenario-builder__header-main{flex:1;min-width:0}.scenario-builder__title-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.scenario-builder__title{margin:0}.scenario-builder__breadcrumb{margin-top:var(--space-1);font-size:12px}.scenario-builder__field-actions{margin-top:var(--space-1);display:flex;justify-content:flex-end}.scenario-builder__breadcrumb .ant-breadcrumb-link{color:var(--text-muted)}.scenario-builder__breadcrumb .ant-breadcrumb-link:hover{color:var(--primary)}.scenario-builder__header-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.scenario-builder__status.ant-tag{border-radius:var(--radius-s);border:1px solid rgba(111,63,245,.35);background:#6f3ff51f;color:var(--primary);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700;margin:0}.scenario-builder__containers-strip,.scenario-builder__timeline-panel{min-height:0}.scenario-builder__containers-strip{background:transparent}.scenario-builder__containers-row{display:grid;grid-template-columns:repeat(6,minmax(170px,1fr));gap:var(--space-2);overflow-x:auto;padding-bottom:4px;padding-top:var(--space-2)}.scenario-builder__container-card{border-radius:var(--radius-s);border:1px solid var(--border);background:transparent;color:var(--text);display:flex;align-items:flex-start;gap:var(--space-3);text-align:left;padding:var(--space-3);cursor:grab;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition)}.scenario-builder__container-card:hover,.scenario-builder__container-card:focus-visible{border-color:#6f3ff580;box-shadow:var(--shadow-glow);transform:translateY(-1px);outline:none}.scenario-builder__container-card:active,.scenario-builder__container-card.is-dragging{cursor:grabbing;opacity:.9}.scenario-builder__container-icon{width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(111,63,245,.25);background:#6f3ff51f;color:var(--primary);flex-shrink:0}.scenario-builder__container-card[data-tone=info] .scenario-builder__container-icon{border-color:#00b6c24d;background:#00b6c21f;color:var(--info)}.scenario-builder__container-card[data-tone=accent] .scenario-builder__container-icon{border-color:#2f6fed4d;background:#2f6fed1f;color:var(--accent)}.scenario-builder__container-card[data-tone=accent-2] .scenario-builder__container-icon{border-color:#8b5cf64d;background:#8b5cf61f;color:var(--accent-2)}.scenario-builder__container-card[data-tone=support] .scenario-builder__container-icon{border-color:#22b07d4d;background:#22b07d1f;color:var(--support)}.scenario-builder__container-card[data-tone=warning] .scenario-builder__container-icon{border-color:#f59e0b52;background:#f59e0b24;color:#d97706}.scenario-builder__container-card[data-tone=danger] .scenario-builder__container-icon{border-color:#ef444457;background:#ef444424;color:#dc2626}.scenario-builder__container-card[data-tone=purple] .scenario-builder__container-icon{border-color:#8b5cf657;background:#8b5cf624;color:var(--accent-2)}.scenario-builder__container-copy{display:grid;gap:4px;min-width:0}.scenario-builder__container-copy strong{font-size:13px;color:var(--text)}.scenario-builder__container-copy small{font-size:11px;color:var(--text-muted);line-height:1.4}.scenario-builder__timeline-header{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2)}.scenario-builder__timeline-header-bottom{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.scenario-builder__timeline-controls{margin-left:auto}.scenario-builder__timeline-body{min-height:0;overflow:hidden;border:none;padding:0}.scenario-builder__timeline-scroll{overflow:auto;min-height:0;max-height:62vh}.scenario-builder__containers-row,.scenario-builder__timeline-scroll,.scenario-builder__device-checks{scrollbar-width:thin;scrollbar-color:rgba(230,235,255,.35) transparent}:root[data-theme=light] .scenario-builder__containers-row,:root[data-theme=light] .scenario-builder__timeline-scroll,:root[data-theme=light] .scenario-builder__device-checks{scrollbar-color:rgba(15,23,42,.25) transparent}.scenario-builder__containers-row::-webkit-scrollbar,.scenario-builder__timeline-scroll::-webkit-scrollbar,.scenario-builder__device-checks::-webkit-scrollbar{width:10px;height:10px}.scenario-builder__containers-row::-webkit-scrollbar-track,.scenario-builder__timeline-scroll::-webkit-scrollbar-track,.scenario-builder__device-checks::-webkit-scrollbar-track{background:transparent}.scenario-builder__containers-row::-webkit-scrollbar-thumb,.scenario-builder__timeline-scroll::-webkit-scrollbar-thumb,.scenario-builder__device-checks::-webkit-scrollbar-thumb{background:#e6ebff59;border-radius:999px}:root[data-theme=light] .scenario-builder__containers-row::-webkit-scrollbar-thumb,:root[data-theme=light] .scenario-builder__timeline-scroll::-webkit-scrollbar-thumb,:root[data-theme=light] .scenario-builder__device-checks::-webkit-scrollbar-thumb{background:#0f172a40}:root[data-theme=light] .scenario-builder__containers-row::-webkit-scrollbar-thumb:hover,:root[data-theme=light] .scenario-builder__timeline-scroll::-webkit-scrollbar-thumb:hover,:root[data-theme=light] .scenario-builder__device-checks::-webkit-scrollbar-thumb:hover{background:#0f172a5c}.scenario-builder__timeline-grid{--timeline-cols: 1;--timeline-cell-width: 160px;--timeline-head-row-height: 30px;display:grid;grid-template-columns:300px repeat(var(--timeline-cols),minmax(var(--timeline-cell-width),var(--timeline-cell-width)));width:max-content;min-width:100%;border-top:1px solid var(--border);border-left:1px solid var(--border);background:var(--surface-2);overflow:visible}.scenario-builder__timeline-corner,.scenario-builder__timeline-header-cell,.scenario-builder__timeline-cluster,.scenario-builder__timeline-lane{border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.scenario-builder__timeline-corner,.scenario-builder__timeline-header-cell,.scenario-builder__timeline-cluster{background:var(--surface)}.scenario-builder__timeline-corner{grid-row:span 2;position:sticky;top:0;left:0;z-index:8;padding:8px 10px;display:grid;align-content:center;gap:2px}.scenario-builder__timeline-corner-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.scenario-builder__timeline-corner-title{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);font-weight:700}.scenario-builder__timeline-corner-note{margin:2px 0 0;font-size:10px;padding-top:10px;line-height:1.35;color:var(--text-muted)}.scenario-builder__timeline-header-cell{min-height:var(--timeline-head-row-height);padding:6px 8px;display:grid;align-items:center}.scenario-builder__timeline-header-cell--row-1{position:sticky;top:0;z-index:7}.scenario-builder__timeline-header-cell--row-1 strong{font-size:12px;color:var(--text);font-weight:700}.scenario-builder__timeline-header-cell--row-2{position:sticky;top:var(--timeline-head-row-height);z-index:6}.scenario-builder__timeline-header-cell--row-2 strong{font-size:11px;color:var(--text);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.scenario-builder__timeline-header-cell--row-2[data-kind=time] strong{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;font-weight:700}.scenario-builder__timeline-cluster{position:sticky;left:0;z-index:3;padding:5px 10px;min-height:36px;display:flex;align-items:center;cursor:pointer}.scenario-builder__timeline-cluster-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.scenario-builder__timeline-cluster-main{flex:1;min-width:0;display:flex;align-items:center;gap:6px}.scenario-builder__timeline-cluster-priority,.scenario-builder__timeline-cluster-priority-input.ant-input-number{width:40px;min-width:40px}.scenario-builder__timeline-cluster-priority{height:24px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;padding:0;cursor:pointer}.scenario-builder__timeline-cluster-priority:hover,.scenario-builder__timeline-cluster-priority:focus-visible{border-color:#6f3ff599;background:#6f3ff51f;outline:none}.scenario-builder__timeline-cluster-priority-input.ant-input-number .ant-input-number-input{text-align:center;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;padding:0 1px}.scenario-builder__timeline-cluster-priority-input.ant-input-number{margin:0}.scenario-builder__timeline-cluster-handle{width:24px;height:24px;border-radius:var(--radius-s);border:none;background:var(--surface-2);color:var(--text-muted);padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:grab}.scenario-builder__timeline-cluster-handle:hover,.scenario-builder__timeline-cluster-handle:focus-visible{color:var(--text);background:#6f3ff51f;outline:none}.scenario-builder__timeline-cluster-handle.is-dragging,.scenario-builder__timeline-cluster-handle:active{cursor:grabbing}.scenario-builder__timeline-cluster:focus-visible{outline:1px solid rgba(111,63,245,.65);outline-offset:-1px;border-radius:4px}.scenario-builder__timeline-cluster strong{font-size:12px;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;user-select:none;-webkit-user-select:none}.scenario-builder__timeline-cluster.is-order-target{background:#6f3ff524;box-shadow:inset 0 0 0 1px #6f3ff573}.scenario-builder__cluster-badge.ant-badge .ant-badge-count{background:var(--accent);color:#fff;box-shadow:none;font-size:10px;font-weight:700;min-width:18px;height:18px;line-height:18px;border-radius:999px}.scenario-builder__timeline-lane{grid-column:2 / -1;background:var(--surface-2);position:relative;overflow:hidden;transition:background var(--transition),box-shadow var(--transition)}.scenario-builder__timeline-lane-drop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.scenario-builder__timeline-lane-content{position:relative;z-index:2;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--timeline-cell-width) - 1px),rgba(15,23,42,.1) calc(var(--timeline-cell-width) - 1px),rgba(15,23,42,.1) var(--timeline-cell-width))}.scenario-builder__timeline-lane.is-drop-target{background:#6f3ff524;box-shadow:inset 0 0 0 1px #6f3ff573}.scenario-builder__timeline-item{border:1px solid rgba(111,63,245,.35);border-radius:6px;background:#6f3ff524;color:var(--text);font-size:11px;font-weight:600;text-align:left;display:flex;align-items:center;gap:6px;padding:6px 10px;cursor:grab;position:absolute;z-index:3;height:30px;transition:border-color var(--transition),box-shadow var(--transition),opacity var(--transition)}.scenario-builder__timeline-item:active{cursor:grabbing}.scenario-builder__timeline-item.is-dragging{opacity:.84}.scenario-builder__timeline-item--drag-preview{position:fixed;top:-9999px;left:-9999px;pointer-events:none;margin:0;width:auto;min-width:180px;max-width:220px}.scenario-builder__timeline-item-icon{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:currentColor;flex-shrink:0}.scenario-builder__timeline-item:hover,.scenario-builder__timeline-item:focus-visible{border-color:#6f3ff5a6;box-shadow:var(--shadow-glow);outline:none}.scenario-builder__timeline-item-resize{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;opacity:0;transition:opacity var(--transition);z-index:4}.scenario-builder__timeline-item-resize:after{content:"";position:absolute;top:3px;bottom:3px;width:4px;left:50%;transform:translate(-50%);background:#ffffffa6;border-radius:2px}.scenario-builder__timeline-item-resize--start{left:0}.scenario-builder__timeline-item-resize--start:after{left:50%}.scenario-builder__timeline-item-resize--end{right:0}.scenario-builder__timeline-item-resize--end:after{left:50%}.scenario-builder__timeline-item:hover .scenario-builder__timeline-item-resize,.scenario-builder__timeline-item:focus-visible .scenario-builder__timeline-item-resize,.scenario-builder__timeline-item.is-resizing .scenario-builder__timeline-item-resize{opacity:1}:root[data-theme=light] .scenario-builder__timeline-lane-content{background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--timeline-cell-width) - 1px),rgba(15,23,42,.12) calc(var(--timeline-cell-width) - 1px),rgba(15,23,42,.12) var(--timeline-cell-width))}:root[data-theme=dark] .scenario-builder__timeline-lane-content{background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--timeline-cell-width) - 1px),rgba(148,163,184,.2) calc(var(--timeline-cell-width) - 1px),rgba(148,163,184,.2) var(--timeline-cell-width))}.scenario-builder__timeline-item[data-tone=info]{border-color:#00b6c259;background:#00b6c224}.scenario-builder__timeline-item[data-tone=accent]{border-color:#2f6fed59;background:#2f6fed24}.scenario-builder__timeline-item[data-tone=accent-2]{border-color:#8b5cf659;background:#8b5cf624}.scenario-builder__timeline-item[data-tone=support]{border-color:#22b07d59;background:#22b07d24}.scenario-builder__timeline-item[data-tone=warning]{border-color:#f59e0b5c;background:#f59e0b24}.scenario-builder__timeline-item[data-tone=danger]{border-color:#ef44445c;background:#ef444424}.scenario-builder__timeline-item[data-tone=purple]{border-color:#8b5cf65c;background:#8b5cf624}.scenario-builder__modal-form,.scenario-builder__drawer-form{display:grid;gap:var(--space-3)}.scenario-builder__drawer-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3)}.scenario-builder__drawer-copy{margin:0;font-size:13px;color:var(--text-muted)}.scenario-builder__drawer-form .ant-divider-horizontal{margin-top:var(--space-2);margin-bottom:var(--space-1)}.scenario-builder__field{display:grid;gap:6px}.scenario-builder__field .ant-select,.scenario-builder__field .ant-picker,.scenario-builder__field .ant-input,.scenario-builder__field .ant-input-number{width:100%}.scenario-builder__field-label{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--text-muted)}.scenario-builder__field-error{margin:0;font-size:12px;color:#dc2626}.scenario-builder__field-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.scenario-builder__number.ant-input-number{width:100%}.scenario-builder__switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);padding:9px 10px;background:var(--surface-2);color:var(--text)}.scenario-builder__weekday-picker{display:grid;gap:6px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2)}.scenario-builder__weekday-labels,.scenario-builder__weekday-checkboxes{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:center;justify-items:center}.scenario-builder__weekday-label{border:0;background:transparent;padding:0;font-family:inherit;font-size:11px;color:var(--text-muted);cursor:pointer}.scenario-builder__weekday-label.is-active{color:var(--text);font-weight:600}.scenario-builder__weekday-label:focus-visible{outline:1px solid var(--primary);outline-offset:2px}.scenario-builder__device-checks{display:grid;gap:8px;max-height:240px;overflow:auto;padding:2px 0}.scenario-builder__device-checks .ant-checkbox-wrapper{margin-inline-start:0;color:var(--text)}.scenario-builder__empty{display:grid;place-items:center;padding:var(--space-4);border-radius:var(--radius-s);border:1px dashed var(--border);background:var(--surface-2)}@media (max-width: 1200px){.scenario-builder__timeline-grid{grid-template-columns:240px repeat(var(--timeline-cols),minmax(var(--timeline-cell-width),var(--timeline-cell-width)))}}@media (max-width: 900px){.scenario-builder__header{flex-direction:column;align-items:flex-start}.scenario-builder__header-actions{width:100%;justify-content:flex-start}.scenario-builder__timeline-header-bottom{width:100%;flex-direction:column;align-items:flex-start}.scenario-builder__timeline-controls{width:100%;justify-content:flex-start;margin-left:0}.scenario-builder__field-grid{grid-template-columns:1fr}}.screen-builder-page{display:flex;flex-direction:column;gap:var(--space-3);min-height:0;height:100%}.screen-builder__header-main{flex:1;min-width:0}.screen-builder__title{display:inline-flex;align-items:center;line-height:28px;min-height:28px}.screen-builder__breadcrumb{margin-top:var(--space-1);margin-bottom:var(--space-1);font-size:12px}.screen-builder__breadcrumb-row{display:flex;align-items:center;column-gap:var(--space-9);row-gap:var(--space-2);flex-wrap:wrap}.screen-builder__breadcrumb .ant-breadcrumb-link{color:var(--text-muted)}.screen-builder__breadcrumb .ant-breadcrumb-link:hover{color:var(--primary)}.screen-builder__title-icon{opacity:1;font-size:14px;color:var(--text-muted);transform:translateY(1px);transition:color var(--transition)}.screen-builder__title .xms-title-button:hover .screen-builder__title-icon,.screen-builder__title .xms-title-button:focus-visible .screen-builder__title-icon{opacity:1;color:var(--text)}.screen-builder__title-input,.screen-builder__title-input.ant-input{width:min(360px,90vw);font-size:20px;font-weight:700;height:28px;line-height:28px;padding:0 8px;box-sizing:border-box}.screen-builder__title-input.ant-input-sm{height:28px;line-height:28px}.screen-builder__meta{margin:6px 0 0;font-size:12px;color:var(--text-muted)}.screen-builder__create-error{margin-top:6px;font-size:12px;color:#ff4d4f}.screen-builder__header-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.screen-builder{display:grid;grid-template-areas:"library preview properties" "timeline timeline timeline";grid-template-columns:minmax(220px,360px) minmax(0,1fr) minmax(260px,300px);grid-template-rows:minmax(0,1fr) fit-content(250px);gap:var(--space-3);flex:1;min-height:0}.screen-builder--empty{display:flex;align-items:center;justify-content:center;min-height:320px;border:1px dashed var(--border);border-radius:var(--radius-s);background:var(--surface)}.screen-builder__loading-title.ant-skeleton-input{width:min(320px,70vw);height:24px}.screen-builder__loading-panel{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);box-shadow:var(--shadow-soft);padding:var(--space-3)}.screen-builder__loading-panel .ant-skeleton-title{margin-block-end:var(--space-3)}.screen-builder__loading-panel--library{grid-area:library;min-height:320px}.screen-builder__loading-panel--preview{grid-area:preview;min-height:320px}.screen-builder__loading-panel--properties{grid-area:properties;min-height:320px}.screen-builder__loading-panel--timeline{grid-area:timeline;min-height:220px}.screen-input.ant-input-affix-wrapper,.screen-input .ant-input,.screen-input.ant-input{background:var(--surface-2);border-color:var(--border);color:var(--text)}:root[data-theme=light] .screen-input.ant-input-affix-wrapper,:root[data-theme=light] .screen-input .ant-input,:root[data-theme=light] .screen-input.ant-input{background:var(--surface-2)}.screen-input.ant-input-affix-wrapper .ant-input-prefix,.screen-input .ant-input-prefix{color:var(--text-muted)}.screen-button.ant-btn{border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);color:var(--text)}.screen-button.ant-btn:hover{color:var(--text);border-color:#6f3ff599;background:#6f3ff51f}.screen-button.ant-btn.ant-btn-dangerous,.screen-button.ant-btn.ant-btn-dangerous:not(:disabled){color:#ff4d4f;border-color:#ff4d4fbf}.screen-button.ant-btn.ant-btn-dangerous:hover,.screen-button.ant-btn.ant-btn-dangerous:focus-visible,.screen-button.ant-btn.ant-btn-dangerous:not(:disabled):hover,.screen-button.ant-btn.ant-btn-dangerous:not(:disabled):focus-visible{color:#fff;border-color:#ff4d4f;background:#ff4d4f}:root[data-theme=light] .screen-button.ant-btn{background:#fff}@media (max-width: 1200px){.screen-builder{grid-template-areas:"library preview" "properties preview" "timeline timeline";grid-template-columns:minmax(220px,260px) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr) 220px}}@media (max-width: 900px){.screen-builder__header{flex-direction:column;align-items:flex-start}.screen-builder{grid-template-areas:"preview" "library" "properties" "timeline";grid-template-columns:1fr;grid-template-rows:minmax(280px,1fr) auto auto 220px}}.screen-library{grid-area:library}.screen-library__body{display:grid;grid-template-rows:auto minmax(0,1fr) auto var(--folders-height, 180px);gap:var(--space-1);min-height:0;flex:1}.screen-library__folders{padding:var(--space-2);padding-top:0;overflow:hidden;flex:none;display:flex;flex-direction:column;min-height:0}.screen-library__section{display:flex;flex-direction:column;gap:var(--space-2);min-height:0;flex:1}.screen-library__section+.screen-library__section{border-top:1px dashed var(--border);padding-top:var(--space-2);margin-top:var(--space-2)}.screen-library__section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:13px;font-weight:600;color:var(--text-muted);padding:4px 6px;background:var(--surface);border-radius:var(--radius-s);border:1px solid transparent;cursor:pointer}.screen-library__section-header.is-selected{color:var(--text)}.screen-library__section-header:hover{background:#6f3ff514}.screen-library__section-header.is-drop{background:#6f3ff51f;border:1px dashed rgba(111,63,245,.35);color:var(--text)}.screen-library__section-label{display:inline-flex;align-items:center;gap:var(--space-2)}.screen-library__section-body{flex:1;min-height:0;padding-bottom:var(--space-1);border-radius:var(--radius-s);transition:background var(--transition),border-color var(--transition);border:1px solid transparent;position:relative;overflow-y:auto;padding-right:4px}.screen-library__section-body.is-drop{background:#6f3ff51a;border:1px dashed rgba(111,63,245,.35)}.screen-library__empty{font-size:12px;color:var(--text-muted);padding:var(--space-1) 0 var(--space-2)}.screen-library__group{display:grid;gap:var(--space-2)}.screen-library__group+.screen-library__group{border-top:1px dashed var(--border);padding-top:var(--space-2)}.screen-library__group-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;color:var(--text-muted)}.screen-library__splitter{height:14px;display:grid;place-items:center;cursor:row-resize;border-radius:999px;transition:background var(--transition);flex:none}.screen-library__splitter-handle{width:40px;height:4px;border-radius:999px;background:#e6ebff40}.screen-library__splitter.is-active,.screen-library__splitter:hover{background:#1ba0fb1f}:root[data-theme=light] .screen-library__splitter-handle{background:#06080c40}.screen-library__tree{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.screen-library__tree ul{list-style:none;margin:var(--space-1) 0 0 0;padding:0;display:grid;gap:var(--space-1)}.screen-library__node{display:flex;align-items:center;gap:var(--space-2);font-size:13px;color:var(--text);border-radius:6px;cursor:pointer;padding:var(--space-1);padding-left:calc(var(--folder-depth, 0) * 12px + 6px);transition:background var(--transition),border-color var(--transition);border:1px solid transparent;background:transparent;text-align:left;width:100%;font-family:inherit;position:relative;z-index:0}.screen-library__toggle{width:18px;height:18px;display:inline-grid;place-items:center;border-radius:4px;border:1px solid transparent;background:transparent;color:var(--text-muted);padding:0;cursor:pointer}.screen-library__toggle:hover{color:var(--text);background:#6f3ff514}.screen-library__toggle-placeholder{width:18px;height:18px;display:inline-block}.screen-library__node.is-sub{color:var(--text-muted)}.screen-library__node.is-selected{background:#6f3ff533;border:1px solid rgba(111,63,245,.25)}.screen-library__node:hover{background:#6f3ff514;z-index:5}.screen-library__node.is-drop{background:#6f3ff52e;border:1px dashed rgba(111,63,245,.45)}.screen-library__node--asset{font-size:12px;font-weight:600;padding:var(--space-1);padding-right:var(--space-2);padding-left:calc(var(--folder-depth, 0) * 12px + 3px)}.screen-library__node--asset:hover{color:var(--text)}.screen-library__node--asset.is-selected{color:var(--text);background:#6f3ff529;border:1px solid rgba(111,63,245,.2)}.screen-library__asset-icon{width:18px;height:18px;display:inline-grid;place-items:center;color:inherit}.screen-library__asset-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-library__add-button{margin-left:auto;opacity:0}.screen-library__section-add{margin-left:auto}.screen-library__node:hover .screen-library__add-button,.screen-library__node:focus-within .screen-library__add-button{opacity:1}.screen-library__rename{display:flex;align-items:center;gap:var(--space-1);flex:1}.screen-library__rename-input{flex:1}.screen-library__rename-actions{display:flex;align-items:center;gap:2px}.screen-library__error{font-size:10px;color:#f87171f2;margin-top:4px}.screen-library__error--indent{margin-left:22px}.screen-library__modal{display:grid;gap:var(--space-2)}.screen-library__modal label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.screen-library__preview{display:grid;gap:var(--space-1);margin-top:var(--space-1)}.screen-library__preview-header{display:flex;align-items:center;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.screen-library__preview-status{font-size:10px;text-transform:none;letter-spacing:normal;color:var(--text-muted)}.screen-library__preview-body{min-height:150px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);padding:var(--space-2);display:grid;place-items:center;overflow:hidden}.screen-library__preview-body.is-warning{border-color:#fbbf2473}.screen-library__preview-body img,.screen-library__preview-body video{width:100%;object-fit:cover;border-radius:var(--radius-s)}.screen-library__preview-fallback{display:flex;align-items:center;gap:var(--space-2);font-size:12px;color:var(--text-muted)}.screen-library__preview-fallback div{display:grid;gap:2px}.screen-library__preview-link{color:var(--text);font-size:12px;word-break:break-all}.screen-library__warning{font-size:12px;color:#fbbf24f2}.screen-library__hint{font-size:12px;color:var(--text-muted)}.screen-library__dot{width:6px;height:6px;border-radius:50%;background:#6f3ff580}.screen-library__count{margin-left:auto;font-size:10px;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-s);padding:2px 6px}.screen-library__filters{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2)}.screen-library__filter-label{display:inline-flex;align-items:center;justify-content:center;line-height:1}.screen-library__filter-label .anticon{line-height:1}.screen-segment .ant-segmented-item-label{display:flex;align-items:center;justify-content:center}.screen-segment.ant-segmented{background:var(--surface-2);border:1px solid var(--border)}:root[data-theme=light] .screen-segment.ant-segmented{background:var(--surface-2)}.screen-segment .ant-segmented-item{color:var(--text-muted)}.screen-segment .ant-segmented-item-selected{color:#fff;background:#6f3ff5b3;box-shadow:0 0 0 1px #6f3ff58c}@media (max-width: 900px){.screen-library__filters{grid-template-columns:1fr}}.screen-library__results{display:flex;flex-direction:column;gap:var(--space-1);overflow:hidden;min-height:0;flex:1;border-bottom:1px solid var(--border)}.screen-library__summary{font-size:12px;color:var(--text-muted);padding:var(--space-2)}.asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);overflow-y:auto;padding-right:4px;flex:1;min-height:0;align-content:start}.asset-card{border:1px solid var(--border);border-radius:var(--radius-s);padding:var(--space-2);display:grid;gap:var(--space-2);text-align:left;background:var(--surface-2);color:var(--text);cursor:pointer;transition:border-color var(--transition),transform var(--transition)}.asset-card:hover{border-color:#6f3ff580;transform:none}:root[data-theme=light] .asset-card{background:var(--surface-2)}.asset-card__thumb{height:64px;border-radius:var(--radius-s);display:grid;place-items:center;font-size:20px;color:#fff;overflow:hidden;position:relative}.asset-card__thumb img{width:100%;height:100%;object-fit:cover;display:block}.asset-card__duration{position:absolute;top:6px;right:6px;padding:2px 6px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.02em;color:#fff;background:#0b1220a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.asset-card__meta{display:grid;gap:2px}.asset-card__title{font-size:12px;font-weight:600}.asset-card__detail{font-size:10px;color:var(--text-muted)}.asset-card.is-active{border-color:#6f3ff5b3;box-shadow:0 0 0 1px #6f3ff54d}.asset-card--emerald .asset-card__thumb{background:linear-gradient(135deg,#00b6c2d9,#2f6fedb3)}.asset-card--sky .asset-card__thumb{background:linear-gradient(135deg,#6f3ff5e6,#2f6fedb3)}.asset-card--violet .asset-card__thumb{background:linear-gradient(135deg,#8b5cf6d9,#6f3ff5b3)}.asset-card--amber .asset-card__thumb{background:linear-gradient(135deg,#2f6fedcc,#00b6c2cc)}.asset-card--teal .asset-card__thumb{background:linear-gradient(135deg,#0e7490d9,#06b6d4cc)}.asset-grid,.screen-library__section-body{scrollbar-width:thin;scrollbar-color:rgba(230,235,255,.35) transparent}.asset-grid::-webkit-scrollbar,.screen-library__section-body::-webkit-scrollbar{width:6px;height:6px}.asset-grid::-webkit-scrollbar-track,.screen-library__section-body::-webkit-scrollbar-track{background:transparent}.asset-grid::-webkit-scrollbar-thumb,.screen-library__section-body::-webkit-scrollbar-thumb{background:#e6ebff59;border-radius:999px}:root[data-theme=light] .asset-grid,:root[data-theme=light] .screen-library__section-body{scrollbar-color:rgba(6,8,12,.25) transparent}:root[data-theme=light] .asset-grid::-webkit-scrollbar-thumb,:root[data-theme=light] .screen-library__section-body::-webkit-scrollbar-thumb{background:#06080c40}@media (max-width: 900px){.asset-grid{grid-template-columns:1fr}}.screen-library__row{display:flex;align-items:center;gap:var(--space-1)}.screen-library__row .screen-library__node{flex:1}.screen-library__row:hover .screen-library__add-button,.screen-library__row:focus-within .screen-library__add-button{opacity:1}.screen-preview{grid-area:preview;position:relative;overflow:hidden;margin:0;background:transparent;border:none;box-shadow:none}@media (min-width: 1024px){.screen-preview{margin:20px}}@media (min-width: 1920px){.screen-preview{margin:80px}}.screen-preview__header{align-items:flex-start}.screen-preview__actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.screen-preview__body{flex:1;justify-content:center;align-items:center;padding:0;background:transparent}.screen-preview__frame{width:100%;display:flex;align-items:center;justify-content:center;padding:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);box-shadow:var(--shadow-soft)}.screen-preview__canvas{position:relative;width:100%;height:auto;max-width:100%;max-height:100%;aspect-ratio:16 / 9;display:grid;place-items:center;overflow:hidden;transform-origin:center;animation:screen-preview-pop .24s ease}:root[data-theme=light] .screen-preview__canvas{background:linear-gradient(135deg,#fffffffa,#f0f3f9d9)}@keyframes screen-preview-pop{0%{opacity:.7;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.screen-preview__glow{position:absolute;inset:-20% 10% auto auto;width:200px;height:200px;background:radial-gradient(circle,rgba(111,63,245,.3),transparent 70%);filter:blur(8px);opacity:.8}.screen-preview__zone{position:absolute;border:1px dashed rgba(148,163,184,.4);background:#0f172a4d;display:grid;place-items:center;text-align:center;gap:2px;color:var(--text);padding:var(--space-2);overflow:hidden;cursor:pointer;transition:border-color var(--transition),background var(--transition);line-height:1.1}.screen-preview__zone:hover{border-color:#6f3ff580}.screen-preview__zone.has-asset{border-style:solid;background:#0f172a33}:root[data-theme=light] .screen-preview__zone{background:#f0f3f9cc;border-color:#0f172a2e}:root[data-theme=light] .screen-preview__zone.has-asset{background:#0f172a1a}.screen-preview__zone-empty{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:2px}.screen-preview__zone-empty div:first-child{font-size:14px;font-weight:600;padding-bottom:4px}.screen-preview__zone-empty div:last-child{font-size:12px;color:var(--text-muted)}.screen-preview__zone-media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:flex;align-items:center;justify-content:center;background:#0b122059;pointer-events:none}.screen-preview__zone-media img{width:100%;height:100%;object-fit:cover}.screen-preview__zone-fallback{display:grid;place-items:center;width:44px;height:44px;border-radius:999px;background:#0b122099;color:#fff;font-size:18px}.screen-preview__zone-meta{position:absolute;right:8px;bottom:8px;z-index:1;display:flex;flex-direction:column;gap:2px;text-align:left;padding:4px 6px;border-radius:6px;max-width:calc(100% - 16px);background:#0b1220b3;color:#fff;box-shadow:0 6px 16px #0b122059;pointer-events:none;transition:opacity var(--transition),transform var(--transition)}:root[data-theme=light] .screen-preview__zone-meta{background:#0f172ab8}.screen-preview__zone-meta.is-hidden{opacity:0;transform:translateY(4px)}.screen-preview__zone:hover .screen-preview__zone-meta.is-hidden{opacity:1;transform:translateY(0)}.screen-preview__zone-name{font-size:10px;text-transform:uppercase;letter-spacing:.12em;opacity:.7}.screen-preview__asset-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-preview__zone.is-active{border-color:#6f3ff5cc;background:#6f3ff529}.screen-preview__zone.is-drop{border-color:#2f6fedbf;background:#2f6fed2e}.screen-preview__zone.is-overlay{border-color:#8b5cf699}.screen-preview__badge{position:absolute;top:10px;left:10px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;background:#0f172a99;color:var(--text-muted);padding:4px 8px;border-radius:var(--radius-s)}:root[data-theme=light] .screen-preview__badge{background:#ffffffe6}.screen-properties{grid-area:properties}.screen-properties__body{overflow-y:auto;padding-right:6px;flex:1;scrollbar-width:thin;scrollbar-color:rgba(230,235,255,.35) transparent}:root[data-theme=light] .screen-properties__body{scrollbar-color:rgba(6,8,12,.25) transparent}.screen-properties__body::-webkit-scrollbar{width:8px}.screen-properties__body::-webkit-scrollbar-track{background:transparent}.screen-properties__body::-webkit-scrollbar-thumb{background:#6f3ff566;border-radius:999px;border:2px solid transparent;background-clip:content-box}.screen-properties__body::-webkit-scrollbar-thumb:hover{background:#6f3ff599;background-clip:content-box}.screen-properties__section{display:grid;gap:var(--space-2)}.screen-properties__section+.screen-properties__section{border-top:1px solid var(--border);padding-top:var(--space-3)}.screen-properties__section-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;color:var(--text)}.layout-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.layout-option{border:1px solid var(--border);border-radius:var(--radius-s);padding:var(--space-2);background:var(--surface-2);color:var(--text);display:grid;gap:6px;cursor:pointer;transition:border-color var(--transition)}.layout-option:hover{border-color:#6f3ff580}:root[data-theme=light] .layout-option{background:var(--surface-2)}.layout-option.is-active{border-color:#6f3ff5cc}.layout-option__preview{position:relative;width:100%;padding-top:56%;border-radius:1px;overflow:hidden;--layout-gap: 1px}.layout-option__zone{position:absolute;border-radius:1px;background:#6f3ff547;box-sizing:border-box;left:calc(var(--zone-x) * 1% + var(--layout-gap));top:calc(var(--zone-y) * 1% + var(--layout-gap));width:calc(var(--zone-w) * 1% - var(--layout-gap) * 2);height:calc(var(--zone-h) * 1% - var(--layout-gap) * 2)}.layout-option__zone.is-overlay{background:#8b5cf666}.layout-option__label{font-size:11px;text-align:left}.screen-properties__card{border-radius:var(--radius-s);border:1px solid var(--border);padding:var(--space-3);background:var(--surface-2);display:grid;gap:var(--space-3)}:root[data-theme=light] .screen-properties__card{background:var(--surface-2)}.screen-properties__asset{display:grid;grid-template-columns:auto 1fr;gap:var(--space-2);align-items:center;color:var(--text)}.screen-properties__asset p{margin:0;font-weight:600;font-size:13px}.screen-properties__asset span{font-size:11px;color:var(--text-muted)}.screen-properties__hints{font-size:12px;color:var(--text-muted)}.asset-chip{font-size:10px;font-weight:700;text-transform:uppercase;padding:4px 8px;border-radius:var(--radius-s);color:#fff;letter-spacing:.12em}.asset-chip--emerald{background:#00b6c2d9}.asset-chip--sky{background:#2f6fedd9}.asset-chip--violet{background:#8b5cf6d9}.asset-chip--amber{background:#6f3ff5d9}.asset-chip--teal{background:#0e7490d9}.screen-properties__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.screen-properties__grid label,.screen-properties__slider label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:6px}.screen-properties__error{display:block;margin-top:6px;font-size:10px;color:#f87171f2}.screen-properties__rename-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px}.screen-properties__rename-actions{display:inline-flex;align-items:center;gap:2px}.screen-properties__rename-actions .ant-btn{color:var(--text-muted)}.screen-properties__rename-actions .ant-btn:not(:disabled):hover,.screen-properties__rename-actions .ant-btn:not(:disabled):focus-visible{color:var(--primary);background:#6f3ff51f}.screen-properties__actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.screen-properties__actions--right{justify-content:flex-end}.screen-properties__meta-lines{margin-top:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-s);padding:var(--space-2);display:grid;gap:6px;background:var(--surface)}.screen-properties__name-display{font-size:13px;color:var(--text);padding-bottom:4px}.screen-properties__meta-line{font-size:12px;color:var(--text-muted);word-break:break-word}.screen-properties__zone-title{margin:0;font-size:13px;font-weight:600}.screen-properties__zone-subtitle{margin:0;font-size:11px;color:var(--text-muted)}@media (max-width: 1200px){.layout-options{grid-template-columns:1fr}}.screen-timeline{grid-area:timeline}.screen-timeline__header{align-items:flex-start}.screen-timeline__header .xms-panel__eyebrow,.screen-timeline__header .screen-panel__eyebrow{padding-top:var(--space-3);padding-left:var(--space-3)}.xms-panel__header.screen-timeline__header{padding:0;gap:0px;border-bottom:none}.xms-panel__body.screen-timeline__body{padding-top:0}.screen-timeline__controls{padding-right:var(--space-3)}.screen-timeline__body{display:flex;flex-direction:column;gap:var(--space-2);min-height:0;overflow:hidden}.screen-timeline__scroll{display:flex;flex-direction:column;gap:6px;flex:1;min-height:0;overflow:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:rgba(230,235,255,.35) transparent;--timeline-label-width: 72px}.screen-timeline__canvas{display:flex;flex-direction:column;gap:6px;min-height:0;min-width:calc(var(--timeline-label-width, 72px) + var(--timeline-width, 600px));position:relative}.screen-timeline__scroll::-webkit-scrollbar{width:6px;height:6px}.screen-timeline__scroll::-webkit-scrollbar-track{background:transparent}.screen-timeline__scroll::-webkit-scrollbar-thumb{background:#e6ebff59;border-radius:999px}:root[data-theme=light] .screen-timeline__scroll{scrollbar-color:rgba(6,8,12,.25) transparent}:root[data-theme=light] .screen-timeline__scroll::-webkit-scrollbar-thumb{background:#06080c40}.screen-timeline__ruler{display:grid;grid-template-columns:var(--timeline-label-width, 72px) 1fr;gap:var(--space-1);align-items:center;padding:2px 0 4px;border-bottom:1px solid var(--border);font-size:11px;color:var(--text-muted);position:sticky;top:0;z-index:2;background:var(--surface)}.screen-timeline__ruler-track{position:relative;height:16px;width:var(--timeline-width, 600px)}.screen-timeline__tick{position:absolute;top:0;height:100%;border-left:1px solid rgba(148,163,184,.35)}.screen-timeline__tick span{position:absolute;top:-2px;left:4px;font-size:9px;color:var(--text-muted)}.screen-timeline__playhead{position:absolute;top:-14px;bottom:0;width:2px;background:#ffffffe6;box-shadow:0 0 0 1px #0f172a40;pointer-events:none;z-index:3}.screen-timeline__playhead:after{content:"";position:absolute;top:2px;left:50%;transform:translate(-50%);width:10px;height:10px;border-radius:999px;background:#fffffff2;box-shadow:0 2px 8px #0f172a4d}.screen-timeline__tracks{display:grid;gap:2px;min-height:0;padding-bottom:2px}.screen-timeline__track{display:grid;grid-template-columns:var(--timeline-label-width, 72px) 1fr;gap:4px;align-items:center}.screen-timeline__track.is-active .screen-timeline__lane{box-shadow:0 0 0 1px #6f3ff540}.screen-timeline__label{font-size:13px;color:var(--text);display:flex;justify-content:space-between;align-items:center;gap:4px;position:sticky;left:0;z-index:1;background:var(--surface);padding:1px 4px;border-radius:5px;cursor:pointer}.screen-timeline__label .ant-tag{margin-inline-end:0;padding:0 4px;font-size:13px;line-height:1em}.screen-timeline__label--ruler{font-size:12px;text-transform:uppercase;letter-spacing:.18em;cursor:default}.screen-timeline__lane{position:relative;height:40px;border-radius:5px;background:var(--surface-2);overflow:hidden}.screen-timeline__lane-drop{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}:root[data-theme=light] .screen-timeline__lane.is-drop,.screen-timeline__lane.is-drop{border-color:#2f6fedb3;background:#2f6fed24}:root[data-theme=light] .screen-timeline__lane{background:var(--surface-2)}.screen-timeline__lane-content{position:relative;height:100%;width:var(--timeline-width, 600px)}.screen-timeline__item{position:absolute;top:2px;bottom:2px;border-radius:4px;padding:0 4px;font-size:11px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:grab;border:none;-webkit-user-select:none;user-select:none;transition:left .14s ease,width .14s ease,box-shadow .14s ease}.screen-timeline__item:active{cursor:grabbing}.screen-timeline__item.is-dragging{opacity:.85;transition:none;z-index:2}.screen-timeline__item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-timeline__handle{position:absolute;top:0;bottom:0;width:8px;opacity:0;transition:opacity var(--transition)}.screen-timeline__handle:after{content:"";position:absolute;top:3px;bottom:3px;width:2px;left:50%;transform:translate(-50%);background:#ffffffa6;border-radius:2px}.screen-timeline__handle--left{left:0;cursor:ew-resize}.screen-timeline__handle--right{right:0;cursor:ew-resize}.screen-timeline__item:hover .screen-timeline__handle,.screen-timeline__item.is-active .screen-timeline__handle{opacity:1}.screen-timeline__item.is-active{box-shadow:0 0 0 2px #6f3ff599}.screen-timeline__item--video{background:linear-gradient(135deg,#6f3ff5e6,#2f6fedcc)}.screen-timeline__item--image{background:linear-gradient(135deg,#00b6c2d9,#2f6fedcc)}.screen-timeline__item--webpage{background:linear-gradient(135deg,#0e7490d9,#06b6d4cc)}@media (max-width: 900px){.screen-timeline__scroll{--timeline-label-width: 64px}}@keyframes ambientGlow{0%{opacity:.7;background-position:10% 15%}50%{opacity:1;background-position:80% 30%}to{opacity:.75;background-position:20% 20%}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes cardReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
