.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: "Montserrat", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";--font-display: "League Spartan", "Montserrat", 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]{--bg: #0b0f16;--surface: #111827;--surface-2: #0f172a;--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]{--bg: #f6f7fb;--surface: #ffffff;--surface-2: #f0f3f9;--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}.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(139,92,246,.4);background:#8b5cf61f;color:var(--text);padding:10px 12px;font-size:13px;font-weight:600}:root[data-theme=light] .form-error{background:#8b5cf629}.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:var(--accent-2)}.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:600;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)}.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-header{display:grid;gap:var(--space-3)}.page-kicker{text-transform:uppercase;letter-spacing:.22em;font-size:10px;font-weight:700;color:var(--text-muted)}.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;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)}:root[data-theme=light] .search-input.ant-input-affix-wrapper{background:var(--surface-2)}.search-input.ant-input-affix-wrapper-focused{border-color:var(--primary);box-shadow:0 0 0 2px #6f3ff533;background:var(--surface)}:root[data-theme=light] .search-input.ant-input-affix-wrapper-focused{background:#fff}.search-input .ant-input{background:transparent;color:var(--text);padding:0}.search-input .ant-input::placeholder{color:var(--text-muted)}.search-input .ant-input-prefix{color:var(--text-muted)}.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}.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)}:root[data-theme=light] .search-item{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}}.recent-edits{display:grid;gap:var(--space-2)}.recent-edits__title{margin:0;font-size:10px;font-weight:700;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:11px;font-weight:600;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-view{display:grid;gap:var(--space-4)}.deployment-collapse{background:transparent;border:none}.deployment-collapse .ant-collapse-item{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);overflow:hidden;margin-bottom:var(--space-4)}:root[data-theme=light] .deployment-collapse .ant-collapse-item{background:#fff}.deployment-collapse .ant-collapse-header{padding:var(--space-3)}.deployment-collapse .ant-collapse-content{background:transparent;border-top:1px solid var(--border)}.deployment-collapse .ant-collapse-content-box{padding:var(--space-3)}.deployment-collapse .ant-collapse-item:last-child{margin-bottom:0}.deployment-card{border-radius:var(--radius-m);border:1px solid var(--border);background:var(--surface);padding:var(--space-4);box-shadow:var(--shadow-soft)}:root[data-theme=light] .deployment-card{background:#fff}.deployment-header{display:flex;justify-content:space-between;gap:var(--space-3);align-items:center}.deployment-actions{display:flex;align-items:center;gap:var(--space-2)}.deployment-device-link{background:transparent;border:none;color:var(--text);font-weight:700;font-size:12px;text-decoration:underline;cursor:pointer;padding:0}.deployment-device-link:hover,.deployment-device-link:focus-visible{color:var(--primary)}.deployment-toggle{border:1px solid var(--border);background:transparent;color:var(--text);padding:5px 10px;border-radius:var(--radius-s);font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;cursor:pointer;transition:border-color var(--transition),color var(--transition)}.deployment-toggle:hover,.deployment-toggle:focus-visible{border-color:#6f3ff599}.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)}: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 .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 .scenario-schedule{margin-top:var(--space-3);padding:var(--space-3);border-radius:var(--radius-s);border:1px dashed var(--border);background:var(--surface-2);display:grid;gap:var(--space-2)}:root[data-theme=light] .deployments-view .scenario-schedule{background:var(--surface-2)}.deployments-view .scenario-schedule__label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--text-muted)}.deployments-view .schedule-input{width:100%;padding:10px 12px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:14px;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}:root[data-theme=light] .deployments-view .schedule-input{background:var(--surface-2)}.deployments-view .schedule-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #6f3ff533;background:var(--surface)}:root[data-theme=light] .deployments-view .schedule-input:focus{background:#fff}.deployments-view .scenario-schedule__actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.deployments-view .schedule-save,.deployments-view .schedule-cancel{border-radius:var(--radius-s);padding:6px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;cursor:pointer;border:1px solid transparent}.deployments-view .schedule-save{background:var(--primary);color:#fff}.deployments-view .schedule-save:disabled{opacity:.5;cursor:not-allowed}.deployments-view .schedule-cancel{background:transparent;border-color:var(--border);color:var(--text)}.deployments-view .schedule-cancel:hover,.deployments-view .schedule-cancel:focus-visible{border-color:#6f3ff599}.modal--devices{width:min(960px,94vw)}.device-modal{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:var(--space-5)}.device-panel{display:grid;gap:var(--space-3);padding-right:var(--space-4);border-right:1px solid var(--border)}.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-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{display:grid;gap:var(--space-4)}.device-search-row{display:flex;align-items:center;gap:var(--space-3)}.device-search.ant-input{flex:1;padding:10px 12px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:14px;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}:root[data-theme=light] .device-search.ant-input{background:var(--surface-2)}.device-search.ant-input:focus,.device-search.ant-input-focused{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #6f3ff533;background:var(--surface)}:root[data-theme=light] .device-search.ant-input:focus,:root[data-theme=light] .device-search.ant-input-focused{background:#fff}.device-search.ant-input::placeholder{color:var(--text-muted)}.device-count{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);white-space:nowrap}.device-list .ant-list-items{display:grid;gap:var(--space-3)}.device-list .ant-list-item{border-block-end:none}.device-row{display:flex;align-items:center;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);transition:border-color var(--transition),background var(--transition)}:root[data-theme=light] .device-row{background:var(--surface-2)}.device-row:hover,.device-row:focus-within{border-color:#6f3ff580;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-remove{border:none;background:transparent;color:var(--text);width:28px;height:28px;border-radius:var(--radius-s);display:grid;place-items:center;opacity:0;transform:translate(6px);transition:opacity var(--transition),transform var(--transition),background var(--transition);cursor:pointer}.device-row:hover .device-remove,.device-row:focus-within .device-remove{opacity:1;transform:translate(0)}.device-remove:hover,.device-remove:focus-visible{background:#6f3ff529}.device-remove svg{width:16px;height:16px}@media (max-width: 980px){.deployment-header{flex-direction:column;align-items:flex-start}.deployment-actions{width:100%;justify-content:space-between}.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;border-radius:var(--radius-s);border-color:var(--border);background:var(--surface-2)}:root[data-theme=light] .scenario-search.ant-input-affix-wrapper{background:var(--surface-2)}.scenario-search .ant-input{background:transparent;color:var(--text);padding:0}.scenario-search .ant-input::placeholder{color:var(--text-muted)}.scenario-search .ant-input-prefix{color:var(--text-muted)}.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%}}.screen-builder-page{display:flex;flex-direction:column;gap:var(--space-3);min-height:0;height:100%}.screen-builder__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) 0}.screen-builder__eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:700;color:var(--text-muted);margin:0 0 6px}.screen-builder__title{margin:0;font-size:20px;font-weight:700;color:var(--text);display:inline-flex;align-items:center;line-height:28px;min-height:28px}.screen-builder__title-button{display:inline-flex;align-items:center;gap:8px;padding:0;background:transparent;border:none;color:inherit;font:inherit;cursor:pointer;line-height:28px;min-height:28px}.screen-builder__title-button:focus-visible{outline:1px dotted rgba(111,63,245,.8);outline-offset:4px}.screen-builder__title-text{text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:transparent;text-decoration-thickness:1px;text-underline-offset:4px}.screen-builder__title-button:hover .screen-builder__title-text,.screen-builder__title-button:focus-visible .screen-builder__title-text{text-decoration-color:currentColor}.screen-builder__title-icon{opacity:0;font-size:14px;color:var(--text-muted);transform:translateY(1px);transition:opacity var(--transition),color var(--transition)}.screen-builder__title-button:hover .screen-builder__title-icon,.screen-builder__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__header-actions{display:flex;gap:var(--space-2)}.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);min-height:660px;flex:1;min-height:0}.screen-panel{display:flex;flex-direction:column;min-height:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);overflow:hidden}:root[data-theme=light] .screen-panel{background:#fff}.screen-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{text-transform:uppercase;letter-spacing:.18em;font-size:10px;color:var(--text-muted)}.screen-panel__title{margin:0;font-size:14px;font-weight:700;color:var(--text)}.screen-panel__body{padding:var(--space-3);overflow:hidden;display:flex;flex-direction:column;gap:var(--space-3);min-height:0;flex:1}.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}: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;min-height:120px;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;box-shadow:var(--shadow-soft)}@media (min-width: 800px){.screen-preview{margin:var(--space-8)}}@media (min-width: 1024px){.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}.screen-preview__canvas{flex:1;position:relative;min-height:320px;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;left: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__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 .screen-panel__eyebrow{padding-top:var(--space-3);padding-left:var(--space-3)}.screen-panel__header.screen-timeline__header{padding:0;gap:0px;border-bottom:none}.screen-panel__body.screen-timeline__body{padding-top:0}.screen-timeline__controls{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;padding-right:var(--space-3)}.screen-timeline__zoom-label{font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted)}.screen-timeline__zoom-slider{width:160px}.screen-timeline__controls .ant-tag{margin-inline-end:0;padding:0 6px;font-size:10px;line-height:18px}.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--website{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}}
