:root{--accent:#4cc2ff;--accent-solid:#0f6cbd;--accent-solid-hover:#115ea3;--accent-soft:#4cc2ff29;--acrylic:#1e1e22ad;--mica:#17171bd1;--surface-1:#202024;--surface-2:#1a1a1e;--surface-3:#26262b;--border:#ffffff17;--border-soft:#ffffff0f;--text:#f1f1f4;--text-soft:#aeb0bc;--text-faint:#7d7f8c;--r-sm:4px;--r-md:8px;--r-lg:12px;--r-xl:18px;--shadow-window:0 24px 70px #0000008c, 0 2px 10px #00000059;--shadow-flyout:0 16px 50px #00000080, 0 1px 4px #0000004d;--hover-overlay:#ffffff14;--hover-overlay-strong:#ffffff1f}:root[data-theme=light]{--accent:#0f6cbd;--accent-solid:#0f6cbd;--accent-solid-hover:#115ea3;--accent-soft:#0f6cbd1f;--acrylic:#ffffffc7;--mica:#f9f9fbe6;--surface-1:#f6f6f8;--surface-2:#fff;--surface-3:#eef0f4;--border:#0000001a;--border-soft:#0000000f;--text:#1b1b1f;--text-soft:#53555f;--text-faint:#797c88;--shadow-window:0 24px 60px #0000002e, 0 2px 8px #0000001a;--shadow-flyout:0 16px 44px #00000029, 0 1px 4px #00000014;--hover-overlay:#0000000f;--hover-overlay-strong:#00000017}:root[data-theme=light] body{background:#dfe3ea}:root[data-theme=light] .wallpaper{background:radial-gradient(900px 700px at 12% 18%,#78aaff8c,#0000 60%),radial-gradient(1000px 800px at 85% 12%,#a082ff66,#0000 55%),radial-gradient(1100px 900px at 75% 85%,#3cc8c852,#0000 55%),radial-gradient(800px 700px at 15% 90%,#ff82aa47,#0000 55%),linear-gradient(160deg,#cfd8e8 0%,#d7dcef 45%,#cdd2df 100%)}:root[data-theme=light] .desktop-icon,:root[data-theme=light] .desktop-icon-label{color:#1b1b1f;text-shadow:0 1px 3px #ffffff80}:root[data-theme=light] .desktop-icon:hover{background:#00000014}:root[data-theme=light] ::-webkit-scrollbar-thumb{background:#0000002e}:root[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#0000004d}*{box-sizing:border-box}html,body,#root{height:100%}body{color:var(--text);-webkit-font-smoothing:antialiased;background:#000;margin:0;font-family:Segoe UI Variable,Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;transition:background .2s;overflow:hidden}::selection{background:var(--accent-soft);color:var(--text)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff29 padding-box padding-box;border:2px solid #0000;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#ffffff47 padding-box padding-box}button{cursor:pointer;font-family:inherit}.glass{background:var(--acrylic);-webkit-backdrop-filter:blur(28px)saturate(150%);border:1px solid var(--border)}.desktop{width:100vw;height:100vh;position:relative;overflow:hidden}.desktop-icons,.desktop-icon,.taskbar,.start-menu,.context-menu,.win-titlebar,.lock-screen{-webkit-user-select:none;user-select:none}.win-titlebar .win-title{-webkit-user-select:text;user-select:text}.wallpaper{filter:saturate(1.1);background:radial-gradient(900px 700px at 12% 18%,#4c96ff8c,#0000 60%),radial-gradient(1000px 800px at 85% 12%,#785aff73,#0000 55%),radial-gradient(1100px 900px at 75% 85%,#1ebebe59,#0000 55%),radial-gradient(800px 700px at 15% 90%,#ff5a9647,#0000 55%),linear-gradient(160deg,#0b0e1a 0%,#0d1224 45%,#0a0c16 100%);position:absolute;inset:0}.wallpaper:after{content:"";background:radial-gradient(#0000 40%,#00000059 100%);position:absolute;inset:0}.desktop-icons{z-index:5;flex-direction:column;gap:6px;display:flex;position:absolute;top:16px;left:16px}.desktop-icon{border-radius:var(--r-sm);color:#fff;text-align:center;background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:6px;width:96px;padding:8px 4px;display:flex}.desktop-icon:hover{background:var(--hover-overlay)}.desktop-icon.selected{background:#4cc2ff38;border-color:#4cc2ff66}.desktop-icon-glyph{color:#fff;border-radius:11px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 3px 10px #0006,inset 0 1px #ffffff2e}.desktop-icon-label{text-shadow:0 1px 3px #000c;word-break:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%;font-size:.72rem;line-height:1.2}.context-menu{z-index:4000;border-radius:var(--r-md);min-width:200px;box-shadow:var(--shadow-flyout);flex-direction:column;padding:6px;animation:.12s ease-out popIn;display:flex;position:fixed}.context-menu button{color:var(--text);border-radius:var(--r-sm);text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:8px 10px;font-size:.82rem;display:flex}.context-menu button:hover{background:var(--hover-overlay)}.context-menu button:disabled{color:var(--text-soft);opacity:.5;cursor:not-allowed}.context-menu button:disabled:hover{background:0 0}.ctx-sep{background:var(--border);height:1px;margin:4px 2px}.taskbar{z-index:3000;border-bottom:none;border-left:none;border-right:none;align-items:center;gap:6px;height:52px;padding:0 10px;display:flex;position:fixed;bottom:0;left:0;right:0}.taskbar-center{align-items:center;gap:4px;max-width:min(58vw,780px);display:flex;position:absolute;left:50%;transform:translate(-50%)}.taskbar-tray{align-items:center;gap:2px;margin-left:auto;display:flex}.taskbar-track{scroll-behavior:smooth;scrollbar-width:none;align-items:center;gap:2px;max-width:480px;display:flex;overflow-x:auto}.taskbar-track::-webkit-scrollbar{display:none}.taskbar-scroll-btn{color:var(--text-soft);border-radius:var(--r-sm);background:0 0;border:none;flex:none;justify-content:center;align-items:center;width:22px;height:40px;display:flex}.taskbar-scroll-btn:hover{background:var(--hover-overlay);color:var(--text)}.taskbar-icon{color:var(--text-soft);border-radius:var(--r-sm);background:0 0;border:none;flex:none;justify-content:center;align-items:center;width:42px;height:40px;transition:background .12s;display:flex;position:relative}.taskbar-icon:hover{background:var(--hover-overlay);color:var(--text)}.taskbar-icon.active{background:var(--hover-overlay-strong);color:var(--text)}.taskbar-icon.active:after{content:"";background:var(--accent);border-radius:2px;width:16px;height:3px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.taskbar-icon.open:not(.active):after{content:"";background:var(--text-faint);border-radius:2px;width:6px;height:3px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.taskbar-icon.start{color:var(--text)}.taskbar-icon.labeled{width:auto;color:var(--text);border-radius:999px;gap:7px;padding:0 12px 0 9px;font-size:.76rem}.taskbar-icon .taskbar-label{white-space:nowrap}.run-dot{display:none}.search-pill{color:var(--text-soft);background:#ffffff0f;gap:8px;padding:0 14px 0 10px;font-size:.8rem;border-radius:999px!important;width:auto!important}.search-pill:hover{background:#ffffff1a}.tray-btn{color:var(--text-soft);border-radius:var(--r-sm);background:0 0;border:none;justify-content:center;align-items:center;width:30px;height:40px;display:flex}.tray-btn:hover{background:var(--hover-overlay);color:var(--text)}.tray-btn:disabled{opacity:.4;cursor:not-allowed}.tray-btn:disabled:hover{color:var(--text-soft);background:0 0}.tray-clock-wrap{position:relative}.tray-clock{color:var(--text);border-radius:var(--r-sm);background:0 0;border:none;flex-direction:column;align-items:flex-end;padding:4px 10px;font-size:.74rem;line-height:1.25;display:flex}.tray-clock:hover{background:var(--hover-overlay)}.tray-clock .date{color:var(--text-faint);font-size:.68rem}.show-desktop{border:none;border-left:1px solid var(--border-soft);background:0 0;width:8px;height:40px;margin-left:6px}.show-desktop:hover{background:var(--hover-overlay)}.launcher-icon{background:linear-gradient(135deg, var(--accent), var(--accent-solid));color:#fff;border-radius:7px;justify-content:center;align-items:center;display:inline-flex}.flyout-scrim{z-index:2900;background:0 0;position:fixed;inset:0}.start-menu.glass{background:var(--surface-1);-webkit-backdrop-filter:none}.start-menu{border-radius:var(--r-xl);width:620px;max-width:92vw;max-height:74vh;box-shadow:var(--shadow-flyout);z-index:3100;flex-direction:column;margin-left:calc(-1*min(310px,46vw));padding:22px 22px 14px;display:flex;position:fixed;bottom:62px;left:50%;overflow:hidden}.start-search{border:1px solid var(--border);color:var(--text-soft);background:#ffffff12;border-radius:999px;align-items:center;gap:10px;margin-bottom:18px;padding:9px 16px;display:flex}.start-search input{color:var(--text);background:0 0;border:none;outline:none;width:100%;font-size:.84rem}.link-btn{color:var(--text-soft);background:0 0;border:none;font-size:.76rem}.link-btn:hover{color:var(--text)}.start-menu-list{flex:1;padding:0 12px 8px 2px;overflow-y:auto}.start-group{margin-bottom:14px}.start-group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:0 6px 6px;font-size:.68rem;font-weight:700}.start-rows{grid-template-columns:repeat(2,1fr);gap:2px 10px;display:grid}.start-row{color:var(--text);border-radius:var(--r-sm);text-align:left;background:0 0;border:none;align-items:center;gap:10px;min-width:0;padding:8px;font-size:.8rem;display:flex}.start-row span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.start-row:hover{background:var(--hover-overlay)}.start-row-icon{color:#fff;border-radius:9px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:flex;box-shadow:0 2px 6px #00000059}.start-empty{text-align:center;color:var(--text-faint);padding:24px 0;font-size:.82rem}.start-footer{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;margin-top:10px;padding:12px 4px 4px;display:flex}.start-user-wrap{position:relative}.start-user{color:var(--text);border-radius:var(--r-md);background:0 0;border:none;align-items:center;gap:10px;padding:6px 8px;font-size:.82rem;display:flex}.start-user:hover{background:var(--hover-overlay)}.start-user-menu{min-width:180px;position:absolute;bottom:calc(100% + 6px);left:0}.start-user .avatar{background:var(--accent-solid);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.68rem;font-weight:600;display:flex}.start-footer-actions{gap:4px;display:flex}.start-version{color:var(--text-faint);white-space:nowrap;padding:0 6px;font-size:.7rem}.version-banner{z-index:4400;width:max-content;max-width:calc(100vw - 32px);color:var(--text);background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-flyout);align-items:center;gap:10px;margin:0 auto;padding:8px 12px;font-size:13px;display:flex;position:fixed;top:8px;left:0;right:0}.version-banner .x{color:var(--text-soft);cursor:pointer;background:0 0;border:none;font-size:16px;line-height:1}.calendar-flyout{border-radius:var(--r-lg);width:260px;box-shadow:var(--shadow-flyout);z-index:3100;padding:16px;position:fixed;bottom:62px;right:10px}.calendar-date{color:var(--text-soft);font-size:.78rem}.calendar-month{margin:2px 0 12px;font-size:.95rem;font-weight:600}.calendar-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:6px;font-size:.74rem;display:grid}.calendar-grid .dow{color:var(--text-faint);font-weight:600}.calendar-grid .day{color:var(--text);border-radius:50%;padding:4px 0}.calendar-grid .day.today{background:var(--accent-solid);color:#fff;font-weight:700}.calendar-grid .day.empty{visibility:hidden}.os-window{background:var(--mica);-webkit-backdrop-filter:blur(24px)saturate(160%);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-window);flex-direction:column;overflow:hidden;display:flex!important}.os-window.active{border-color:#ffffff29;box-shadow:0 28px 80px #0000009e,0 0 0 1px #4cc2ff2e}.os-window:not(.active) .win-titlebar-row{opacity:.72}.os-window.minimized{display:none!important}.os-window-inner{flex-direction:column;width:100%;height:100%;min-height:0;transition:opacity .14s,transform .14s;animation:.16s cubic-bezier(.2,.8,.3,1) windowOpen;display:flex}.os-window-inner.minimized{opacity:0;pointer-events:none;transform:scale(.92)translateY(24px)}@keyframes windowOpen{0%{opacity:0;transform:scale(.94)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.win-titlebar-row{border-bottom:1px solid var(--border-soft);background:#ffffff08;flex:none;justify-content:space-between;align-items:stretch;height:38px;display:flex}.win-titlebar{cursor:grab;flex:1;align-items:center;min-width:0;padding:0 4px 0 12px;display:flex}.win-titlebar:active{cursor:grabbing}.win-title{color:var(--text);align-items:center;gap:8px;font-size:.78rem;display:flex;overflow:hidden}.win-title span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.win-title svg{color:var(--accent);flex:none}.win-controls{flex:none;height:100%;display:flex}.win-btn{width:44px;height:38px;color:var(--text-soft);background:0 0;border:none;justify-content:center;align-items:center;transition:background .1s;display:flex}.win-btn:hover{background:var(--hover-overlay);color:var(--text)}.win-btn.close:hover{color:#fff;background:#e81123}.win-body{background:var(--surface-1);flex:1;min-height:0;position:relative;overflow:hidden}.app-scroll{flex-direction:column;padding:20px 22px;font-size:.84rem;display:flex;position:absolute;inset:0;overflow:hidden auto}.app-header{flex:none}.app-header h2{margin:0 0 4px;font-size:1.2rem;font-weight:600}.app-header p{color:var(--text-soft);max-width:820px;margin:0 0 12px;line-height:1.5}.app-scroll>.kpi-row,.app-scroll>.panel:not(.grid-panel){flex:none}.app-scroll>.panel.grid-panel{flex-direction:column;flex:0 auto;min-height:0;margin-bottom:0;display:flex}.app-scroll>.panel.grid-panel+.panel:not(.grid-panel-minor){flex:none;margin-top:16px}.app-scroll>.panel.grid-panel-minor{flex-direction:column;flex:1 1 0;min-height:130px;margin-top:16px;margin-bottom:0;display:flex}.chip-row{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.chip-row.wrap{margin-top:4px}.chip{background:var(--surface-3);border:1px solid var(--border);color:var(--text-soft);border-radius:999px;padding:5px 12px;font-size:.74rem}.chip.active{background:var(--accent-solid);color:#fff;border-color:var(--accent-solid)}.chip.removable{align-items:center;gap:6px;padding-right:6px;display:inline-flex}.chip-x{color:var(--text-faint);background:0 0;border:none;border-radius:999px;padding:2px;display:flex}.chip-x:hover{color:#ff7a8a;background:#ff7a8a2e}.dept-add-row{gap:8px;margin-bottom:14px;display:flex}.dept-input{background:var(--surface-3);border:1px solid var(--border);max-width:280px;color:var(--text);border-radius:var(--r-sm);flex:1;padding:7px 10px;font-size:.8rem}.perm-role-picker{align-items:center;gap:10px;margin:4px 0 14px;display:flex}.perm-role-picker label{color:var(--text-soft);font-size:.8rem}.perm-role-picker select{min-width:200px}.perm-cell{cursor:pointer}.perm-cell:hover{background:var(--hover-overlay)}.perm-cell .dash{color:var(--text-faint)}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px;display:grid}.kpi-row.wrap{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.kpi-tile{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 14px}.kpi-tile.with-icon{align-items:flex-start;gap:12px;display:flex}.kpi-icon{border-radius:var(--r-sm);background:var(--accent-soft);width:36px;height:36px;color:var(--accent);flex:none;justify-content:center;align-items:center;display:flex}.kpi-label{color:var(--text-soft);margin-bottom:2px;font-size:.72rem}.kpi-value{font-size:1.15rem;font-weight:600}.kpi-trend{margin-top:2px;font-size:.68rem}.kpi-trend.up{color:#6bdd8a}.kpi-trend.down{color:#ff7a8a}.panel{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:16px;padding:14px}.panel-header{align-items:center;gap:8px;margin-bottom:12px;font-size:.82rem;font-weight:600;display:flex}.panel-header.spread{justify-content:space-between}.panel-header .soft{color:var(--text-faint);font-size:.74rem;font-weight:400}.panel-header-toggle{width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}.panel-header-toggle span{align-items:center;gap:8px;display:flex}.panel-header-toggle:hover{color:var(--accent)}.panel-header-toggle[aria-expanded=false],.kpi-panel .kpi-row{margin-bottom:0}.toolbar{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.toolbar-left,.toolbar-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.search-input{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-sm);width:230px;color:var(--text-faint);align-items:center;gap:8px;padding:6px 10px;display:flex}.search-input input{color:var(--text);background:0 0;border:none;outline:none;width:100%;font-size:.78rem}.select-sm,select{background:var(--surface-3);border:1px solid var(--border);color:var(--text);border-radius:var(--r-sm);padding:6px 8px;font-size:.78rem}.btn{border-radius:var(--r-sm);color:var(--text);background:var(--surface-3);border:1px solid #0000;align-items:center;gap:6px;padding:7px 14px;font-size:.78rem;display:inline-flex}.btn.sm{padding:6px 11px;font-size:.76rem}.btn-outline{border-color:var(--border);color:var(--text);background:0 0}.btn-outline:hover{background:var(--hover-overlay)}.btn-primary{background:var(--accent-solid);color:#fff}.btn-primary:hover{background:var(--accent-solid-hover)}.btn-danger{color:#1a0d0f;background:#ff7a8a;font-weight:600}.btn-danger:hover{background:#ff6478}.dd{display:inline-block;position:relative}.dd-menu{z-index:60;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-md);min-width:190px;box-shadow:var(--shadow-flyout);flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 6px)}.dd-menu.dd-end{right:0}.dd-menu.dd-start{left:0}.dd-menu button{color:var(--text);text-align:left;border-radius:var(--r-sm);background:0 0;border:none;padding:8px 10px;font-size:.78rem}.dd-menu button:hover{background:var(--hover-overlay)}.dd-menu button.dd-disabled{color:var(--text-soft);opacity:.5;cursor:not-allowed}.dd-menu button.dd-disabled:hover{background:0 0}.grid-wrap{flex-direction:column;flex:0 auto;min-height:0;display:flex}.grid-table-scroll{flex:0 auto;min-height:0;overflow:auto}.data-grid{border-collapse:collapse;width:100%;font-size:.78rem}.data-grid thead th{z-index:1;background:var(--surface-2);text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);border-bottom:1px solid var(--border);white-space:nowrap;padding:8px 10px;font-size:.66rem;font-weight:600;position:sticky;top:0}.data-grid td{border-bottom:1px solid var(--border-soft);white-space:nowrap;padding:9px 10px}.data-grid tbody tr:hover{background:#ffffff0a}.data-grid.dense td,.data-grid.dense th{padding:4px 8px}.data-grid.dense .icon-btn{width:21px;height:21px}.data-grid.dense .row-actions{gap:2px}.col-check{width:32px}.col-actions{width:96px}.data-grid .col-actions{z-index:2;background:var(--surface-2);box-shadow:inset 0 -1px 0 var(--border-soft);position:sticky;right:0}.data-grid thead th.col-actions{z-index:3;box-shadow:inset 0 -1px 0 var(--border);top:0}.data-grid tbody tr:hover .col-actions{background-image:linear-gradient(var(--hover-overlay), var(--hover-overlay))}.grid-table-scroll.has-hidden-left .data-grid .col-actions{box-shadow:inset 0 -1px 0 var(--border-soft), inset 1px 0 0 var(--border), -8px 0 8px -8px #00000073}.grid-table-scroll.has-hidden-left .data-grid thead th.col-actions{box-shadow:inset 0 -1px 0 var(--border), inset 1px 0 0 var(--border), -8px 0 8px -8px #00000073}.empty-row{text-align:center;color:var(--text-faint);padding:24px!important}.pill{border:1px solid #0000;border-radius:999px;padding:3px 10px;font-size:.68rem;font-weight:600;display:inline-block}.pill-success{color:#6bdd8a;background:#6bdd8a26;border-color:#6bdd8a4d}.pill-warning{color:#ffca4a;background:#ffca4a26;border-color:#ffca4a4d}.pill-danger{color:#ff7a8a;background:#ff7a8a26;border-color:#ff7a8a4d}.pill-danger-soft{color:#d99aa2;background:#ff7a8a14;border-color:#ff7a8a2e}.pill-info{color:#4cc2ff;background:#4cc2ff26;border-color:#4cc2ff4d}.pill-accent{color:#7ed3ff;background:#4cc2ff33;border-color:#4cc2ff59}.pill-neutral{color:var(--text-soft);border-color:var(--border);background:#ffffff14}.row-actions{gap:4px;display:flex}.icon-btn{border-radius:var(--r-sm);width:26px;height:26px;color:var(--text-soft);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--hover-overlay);color:var(--text)}.icon-btn.danger:hover{color:#ff7a8a;background:#ff7a8a26}.icon-btn.success:hover{color:#6bdd8a;background:#6bdd8a26}.grid-footer{color:var(--text-faint);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:8px;padding:10px 2px 2px;font-size:.72rem;display:flex}.pager{align-items:center;gap:8px;display:flex}.pager button{background:var(--surface-3);border:1px solid var(--border);color:var(--text-soft);border-radius:var(--r-sm);align-items:center;gap:4px;padding:4px 10px;font-size:.72rem;display:flex}.pager button:not(:disabled):hover{background:var(--hover-overlay);color:var(--text)}.pager button:disabled{opacity:.4}.pager-page{font-variant-numeric:tabular-nums}.data-grid.matrix td.center{text-align:center}.check-yes{color:#6bdd8a}.field{flex-direction:column;gap:5px;margin-bottom:14px;display:flex}.filter-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 16px;display:grid}.json-upload-textarea{margin-top:6px;font-family:SFMono-Regular,Consolas,Menlo,monospace;font-size:.76rem}.field label{color:var(--text-soft);font-size:.72rem;font-weight:600}.field input,.field select,.field textarea{background:var(--surface-3);border:1px solid var(--border);color:var(--text);border-radius:var(--r-sm);outline:none;width:100%;max-width:100%;padding:7px 9px;font-family:inherit;font-size:.8rem}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.field input:disabled,.field textarea:disabled{opacity:.55}.field .hint{color:var(--text-faint);font-size:.66rem}.field .hint.current-file{color:var(--text-soft)}.ms-chips{flex-wrap:wrap;align-items:center;gap:5px;margin-bottom:2px;display:flex}.ms-chip{border:1px solid var(--accent-solid);background:var(--accent-soft);color:var(--text);cursor:pointer;text-align:left;border-radius:999px;align-items:center;gap:5px;max-width:100%;padding:3px 8px;font-family:inherit;font-size:.7rem;font-weight:600;display:inline-flex}.ms-chip:hover{color:#ff7a8a;border-color:#ff7a8a}.ms-chip svg{flex:none}.ms-clear{color:var(--text-faint);cursor:pointer;background:0 0;border:none;padding:3px 4px;font-family:inherit;font-size:.68rem;text-decoration:underline}.ms-clear:hover{color:var(--text)}.ms-list{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-3);max-height:208px;margin-top:5px;overflow:hidden auto}.ms-option{cursor:pointer;border-bottom:1px solid var(--border-soft);align-items:flex-start;gap:8px;min-width:0;padding:5px 9px;font-size:.76rem;display:flex}.ms-option:last-child{border-bottom:none}.ms-option:hover{background:var(--hover-overlay)}.ms-option.selected{color:var(--text);font-weight:600}.ms-option input{width:15px;height:15px;accent-color:var(--accent-solid);flex:none;margin:1px 0 0;padding:0}.ms-option span{overflow-wrap:anywhere;min-width:0}.ms-empty{color:var(--text-faint);text-align:center;padding:10px;font-size:.72rem}.ms-bulk{gap:4px;margin:2px 0;display:flex}.ms-clear:disabled{opacity:.45;cursor:default;text-decoration:none}.ss-wrap{position:relative}.ss-current{background:var(--surface-3);border:1px solid var(--border);width:100%;color:var(--text);border-radius:var(--r-sm);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;font-family:inherit;font-size:.8rem;display:flex}.ss-current:focus-visible{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}.ss-current:disabled{opacity:.55;cursor:default}.ss-value{overflow-wrap:anywhere;min-width:0}.ss-placeholder{color:var(--text-faint)}.ss-stale{color:var(--text-faint);font-size:.7rem;font-style:normal}.ss-caret{color:var(--text-faint);flex:none;font-size:.7rem}.ss-panel{margin-top:5px}.ss-option{text-align:left;width:100%;color:var(--text-soft);border:none;border-bottom:1px solid var(--border-soft);cursor:pointer;overflow-wrap:anywhere;background:0 0;padding:6px 9px;font-family:inherit;font-size:.76rem;display:block}.ss-option:last-child{border-bottom:none}.ss-option:hover{background:var(--hover-overlay);color:var(--text)}.ss-option.selected{color:var(--text);background:var(--accent-soft);font-weight:600}.field.field-invalid .ss-current{border-color:#ff7a8a}.password-wrap{align-items:center;display:flex;position:relative}.password-wrap input{padding-right:32px}.password-eye{color:var(--text-faint);cursor:pointer;background:0 0;border:none;padding:4px;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.password-eye:hover{color:var(--text)}.field.mini{margin-bottom:0}.required-mark{color:#ff7a8a;font-weight:700}.field-error{color:#ff7a8a;font-size:.68rem}.field.field-invalid input,.field.field-invalid select,.field.field-invalid textarea{border-color:#ff7a8a}.field-stack{flex-direction:column;display:flex}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;display:grid}.field-grid>.field{min-width:0}.color-field{align-items:center;gap:8px;display:flex}.color-field input[type=color]{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);cursor:pointer;flex:none;width:36px;height:30px;padding:2px}.color-field-hex{flex:1}.field-toggle{flex-flow:wrap;align-items:center;gap:10px;margin-bottom:12px}.toggle-label{color:var(--text);font-size:.8rem}.toggle-hint{flex-basis:100%;margin-left:48px}.switch{flex:none;width:38px;height:20px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{background:var(--surface-3);border:1.5px solid var(--border);border-radius:999px;transition:background .15s;position:absolute;inset:0}.slider:before{content:"";background:var(--text-soft);border-radius:50%;width:14px;height:14px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.switch input:checked+.slider{background:var(--accent-solid);border-color:var(--accent-solid)}.switch input:checked+.slider:before{background:#fff;transform:translate(17px)}.field-check{color:var(--text);align-items:center;gap:8px;padding:4px 0;font-size:.8rem;display:flex}.field-check input{accent-color:var(--accent-solid);width:15px;height:15px}.yesno-group{gap:18px;padding-top:2px;display:flex}.yesno-option{color:var(--text);cursor:pointer;align-items:center;gap:6px;font-size:.8rem;display:flex}.yesno-option input{accent-color:var(--accent-solid);cursor:pointer;width:15px;height:15px;margin:0}.rcs-content-editor{flex-direction:column;gap:12px;display:flex}.rcs-content-toolbar{justify-content:flex-end;display:flex}.rcs-content-layout{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.rcs-content-types{flex-direction:column;flex:1.3 340px;gap:10px;min-width:280px;display:flex}.rcs-content-layout.with-preview .rcs-content-types{flex:1.3 340px}.rcs-content-type{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);overflow:hidden}.rcs-content-header{align-items:center;gap:10px;padding:10px 12px;display:flex}.rcs-content-title{color:var(--text);font-size:.82rem;font-weight:600}.rcs-content-body{flex-direction:column;gap:10px;padding:0 12px 12px;display:flex}.rcs-field{flex-direction:column;gap:4px;display:flex}.rcs-field label{color:var(--text-soft);font-size:.68rem;font-weight:600}.rcs-field input,.rcs-field select,.rcs-field textarea{background:var(--surface-3);border:1px solid var(--border);color:var(--text);border-radius:var(--r-sm);outline:none;padding:6px 8px;font-family:inherit;font-size:.78rem}.rcs-field input:focus,.rcs-field select:focus,.rcs-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.rcs-field-toggle{flex-direction:row;align-items:center;gap:8px}.rcs-field-toggle span{color:var(--text);font-size:.78rem}.rcs-repeatable-item{border:1px dashed var(--border);border-radius:var(--r-sm);flex-direction:column;gap:8px;padding:10px;display:flex}.rcs-repeatable-item-header{color:var(--text-soft);justify-content:space-between;align-items:center;font-size:.72rem;font-weight:600;display:flex}.rcs-preview{flex:300px;min-width:260px;position:sticky;top:0}.rcs-preview-label{color:var(--text-soft);margin-bottom:8px;font-size:.72rem;font-weight:600}.rcs-preview-phone{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);flex-direction:column;gap:10px;min-height:200px;padding:14px;display:flex}.rcs-bubble{background:var(--accent-soft);max-width:85%;color:var(--text);white-space:pre-wrap;word-break:break-word;border-radius:14px;align-self:flex-start;padding:9px 13px;font-size:.8rem;line-height:1.4}.rcs-bubble-media{padding:4px}.rcs-bubble-media img{border-radius:10px;max-width:100%;display:block}.rcs-card{border:1px solid var(--border);background:var(--surface-3);border-radius:12px;align-self:flex-start;width:220px;max-width:100%;overflow:hidden}.rcs-card img{object-fit:cover;background:var(--surface-1);width:100%;height:110px;display:block}.rcs-card-body{flex-direction:column;gap:4px;padding:10px;display:flex}.rcs-card-title{color:var(--text);font-size:.8rem;font-weight:600}.rcs-card-desc{color:var(--text-soft);font-size:.72rem;line-height:1.4}.rcs-carousel{gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.rcs-carousel-card{flex:none}.rcs-chips{flex-wrap:wrap;gap:6px;display:flex}.rcs-chip{border:1px solid var(--accent-solid);color:var(--accent-solid);border-radius:999px;align-items:center;gap:5px;padding:5px 12px;font-size:.74rem;font-weight:600;display:inline-flex}.rcs-chip-action{border-style:solid;border-color:var(--border);color:var(--text);background:var(--surface-3)}.rcs-placeholder{color:var(--text-faint);font-style:italic;font-weight:400}.rcs-card-horizontal{width:300px;max-width:100%;display:flex}.rcs-card-horizontal img{width:110px;height:100%;min-height:84px}.rcs-card-small{width:160px}.rcs-attachment{color:var(--text-soft);background:var(--surface-3);word-break:break-all;border-radius:10px;align-items:center;gap:7px;padding:9px 12px;font-size:.76rem;display:flex}.import-preview{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:4px;display:flex}.tpl-vars{flex-direction:column;gap:12px;display:flex}.tpl-vars code{background:var(--surface-3);border-radius:4px;padding:1px 5px;font-size:.74rem}.tpl-var-row{align-items:flex-start;gap:10px;display:flex}.tpl-var-row .field{flex:1;min-width:0}.tpl-var-row .icon-btn{flex:none;margin-top:22px}.rcs-var-chips{flex-wrap:wrap;align-items:center;gap:5px;margin-top:5px;display:flex}.rcs-var-chip{border:1px dashed var(--border);color:var(--text-soft);cursor:pointer;background:0 0;border-radius:999px;padding:2px 9px;font-family:SFMono-Regular,Consolas,Menlo,monospace;font-size:.7rem}.rcs-var-chip:hover{border-color:var(--accent-solid);color:var(--accent-solid)}.rcs-var-warning{color:#ffb454;margin-top:5px;font-size:.7rem}.rcs-card-suggestions{border-top:1px solid var(--border);border-left:2px solid var(--border);margin-top:10px;padding-top:8px;padding-left:10px}.rcs-content-issues{flex-direction:column;gap:4px;margin:0 0 10px;display:flex}.rcs-content-issues:empty{display:none}.rcs-budget{border:1px solid var(--border);--budget-accent:var(--accent);border-radius:6px;flex-direction:column;gap:5px;padding:8px 10px;display:flex}.rcs-budget[data-state=near]{--budget-accent:#ffb454}.rcs-budget[data-state=over]{--budget-accent:#ff6b6b}.rcs-budget-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.rcs-budget-label{text-transform:uppercase;letter-spacing:.06em;opacity:.7;font-size:.72rem}.rcs-budget-figure{font-variant-numeric:tabular-nums;color:var(--budget-accent);font-size:.78rem}.rcs-budget-track{background:var(--border);border-radius:999px;height:4px;overflow:hidden}.rcs-budget-fill{background:var(--budget-accent);border-radius:999px;height:100%;display:block}.rcs-card-chips{border-top:1px solid var(--border);gap:4px;margin-top:8px;padding-top:6px}.api-config{flex-direction:column;gap:16px;display:flex}.api-config-toptabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;padding-bottom:12px;display:flex}.api-config-body{align-items:flex-start;gap:20px;display:flex}.api-config-nav{flex-direction:column;flex:none;gap:2px;width:110px;display:flex}.api-config-main{flex:1;min-width:0}.api-config-section-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;margin-bottom:2px;padding-bottom:10px;display:flex}.api-config-section-header h4{margin:0;font-size:.84rem;font-weight:600}.api-config-json{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface-3);width:100%;color:var(--text);resize:vertical;padding:10px 12px;font-family:SFMono-Regular,Consolas,Menlo,monospace;font-size:.76rem;line-height:1.5}.api-config-json:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}.api-config-cardpanel{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);flex-direction:column;flex:1;gap:14px;min-width:0;padding:16px;display:flex}.api-config-cardpanel .hint{color:var(--text-faint);font-size:.72rem}.api-config-muted{text-align:center;border:1px dashed var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-soft);flex-direction:column;align-items:center;gap:10px;padding:40px 24px;display:flex}.api-config-muted svg{color:var(--text-faint)}.api-config-muted p{max-width:420px;margin:0;font-size:.82rem}.api-config-bodytypes{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.api-config-bodytype-btn{border:1px solid var(--border);background:var(--surface-3);color:var(--text-soft);border-radius:15px;padding:4px 14px;font-size:.76rem;font-weight:600}.api-config-bodytype-btn:hover{color:var(--text)}.api-config-bodytype-btn.active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-solid)}.api-config-subtabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:10px;display:flex}.secret-field{align-items:center;gap:4px;display:flex}.secret-field input{letter-spacing:.04em;flex:1;min-width:0;font-family:ui-monospace,Consolas,monospace}.secret-field input.secret-revealed{letter-spacing:normal}.global-loader{z-index:4500;color:var(--accent);cursor:progress;background:#0000002e;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.global-loader svg{filter:drop-shadow(0 2px 6px #00000059)}:root[data-theme=light] .global-loader{background:#ffffff59}.global-loader-box{flex-direction:column;align-items:center;gap:10px;display:flex}.global-loader-text{color:var(--text);border-radius:var(--r-md);background:var(--surface-1);border:1px solid var(--border);box-shadow:var(--shadow-flyout);padding:4px 10px;font-size:13px}.global-loader .btn{cursor:pointer}.dialog-scrim{z-index:200;background:#00000073;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.dialog-panel{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;max-width:480px;height:560px;max-height:100%;box-shadow:var(--shadow-flyout);flex-direction:column;display:flex;overflow:hidden}.dialog-panel.large{max-width:760px;height:640px}.dialog-panel.xlarge{max-width:1120px;height:680px}.dialog-panel.confirm{max-width:400px;height:auto}.dialog-panel.api-log-viewer{max-width:1100px;height:620px}.json-viewer-body{flex:1;min-height:0;display:flex;overflow:hidden}.json-viewer-pane{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.json-viewer-pane+.json-viewer-pane{border-left:1px solid var(--border)}.json-viewer-pane-header{color:var(--text-soft);border-bottom:1px solid var(--border-soft);flex:none;padding:10px 14px;font-size:.78rem;font-weight:600}.json-viewer-pre{white-space:pre-wrap;word-break:break-word;min-height:0;color:var(--text);flex:1;margin:0;padding:14px;font-family:SFMono-Regular,Consolas,Menlo,monospace;font-size:.76rem;overflow:auto}.confirm-body{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:8px 22px 22px;display:flex}.confirm-icon{background:var(--surface-3);width:44px;height:44px;color:var(--text-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.confirm-icon.danger{color:#ff7a8a;background:#ff7a8a26}.confirm-body p{color:var(--text-soft);margin:0;font-size:.82rem;line-height:1.5}.dialog-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:16px 18px;display:flex}.dialog-header h3{margin:0;font-size:1rem;font-weight:600}.dialog-header p{color:var(--text-soft);margin:4px 0 0;font-size:.76rem}.dialog-header-actions{flex:none;align-items:center;gap:6px;display:flex}.dialog-body{flex:1;min-height:0;padding:16px 18px;overflow-y:auto}.dialog-body.split{min-height:0;padding:0;display:flex}.dialog-pills{border-right:1px solid var(--border);flex-direction:column;flex:none;gap:2px;width:200px;padding:10px;display:flex;overflow-y:auto}.pill-nav{color:var(--text-soft);text-align:left;border-radius:var(--r-sm);background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;font-size:.78rem;display:flex}.pill-nav:hover{background:var(--hover-overlay)}.pill-nav.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.pill-letter{background:#ffffff14;border-radius:4px;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:.62rem;display:inline-flex}.pill-nav.active .pill-letter{background:var(--accent-solid);color:#fff}.pill-nav.has-error{color:#ff7a8a}.pill-nav .pill-error-dot{background:#ff7a8a;border-radius:50%;flex:none;width:7px;height:7px;margin-left:auto}.pill-nav.horizontal{border-radius:999px;padding:6px 14px}.dialog-fields{flex:1;min-height:0;padding:16px 20px;overflow-y:auto}.dialog-fields h4{margin:0 0 12px;font-size:.84rem}.tab-strip{border-bottom:1px solid var(--border);gap:4px;padding:10px 18px 0;display:flex;overflow-x:auto}.tab-btn{color:var(--text-soft);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 12px;font-size:.78rem}.tab-btn:hover{color:var(--text)}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.kv-table{border-collapse:collapse;width:100%}.kv-table td{border-bottom:1px solid var(--border-soft);padding:7px 4px;font-size:.8rem}.kv-table td.k{color:var(--text-soft);width:220px}.kv-table td.v{font-weight:500}.ctl-meta{margin-bottom:12px}.ctl-diff{border-collapse:collapse;table-layout:fixed;width:100%}.ctl-diff th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft);border-bottom:1px solid var(--border);padding:6px;font-size:.72rem}.ctl-diff th:first-child{width:26%}.ctl-diff td{border-bottom:1px solid var(--border-soft);vertical-align:top;overflow-wrap:anywhere;padding:7px 6px;font-size:.8rem}.ctl-diff td.ctl-field{color:var(--text-soft);font-family:ui-monospace,Consolas,monospace;font-size:.75rem}.ctl-diff tr.ctl-changed td{background:color-mix(in srgb, var(--accent) 10%, transparent)}.ctl-diff tr.ctl-changed td.ctl-field{color:var(--text);font-weight:600}.ctl-json{white-space:pre-wrap;word-break:break-word;max-height:260px;margin:0;font-size:.72rem;overflow:auto}.provider-status-scroll{overflow-x:auto}.provider-status-table .col-actions{z-index:1;white-space:nowrap;background:var(--surface-1);box-shadow:inset 1px 0 0 var(--border-soft);position:sticky;right:0}.empty-state{color:var(--text-faint);flex-direction:column;align-items:center;gap:10px;padding:50px 0;display:flex}.empty-state p{margin:0;font-size:.82rem}.dialog-footer{border-top:1px solid var(--border);align-items:center;gap:8px;padding:12px 18px;display:flex}.dialog-footer .spacer{flex:1}.dialog-footer .hint{color:var(--text-faint);font-size:.68rem}.dialog-footer .hint.error{color:#ff7a8a;align-items:center;gap:5px;display:flex}.btn:disabled{opacity:.6;cursor:default}.dash-grid{grid-template-columns:2fr 1fr;gap:16px;margin-bottom:4px;display:grid}.dash-grid.two{grid-template-columns:1.3fr 1fr}.chart-panel{flex-direction:column;display:flex}.chart-box{height:220px;position:relative}.chart-box.small{height:200px}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;display:grid}.tile-grid.dashboard{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}.live-tile{aspect-ratio:1.05;border-radius:var(--r-md);color:#fff;border:none;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:10px;font-size:.68rem;font-weight:600;transition:transform .1s,filter .1s;display:flex}.live-tile:hover{filter:brightness(1.1);transform:translateY(-2px)}.t1{background:linear-gradient(135deg,#2c7be5,#1b57ad)}.t2{background:linear-gradient(135deg,#22a35e,#146b3c)}.t3{background:linear-gradient(135deg,#c23bd1,#7d1f88)}.t4{background:linear-gradient(135deg,#e6472e,#a3301f)}.t5{background:linear-gradient(135deg,#e6942e,#a3611c)}.t6{background:linear-gradient(135deg,#7d5fe0,#4c33a3)}.t7{background:linear-gradient(135deg,#1cb8c4,#0f7d86)}.t8{background:linear-gradient(135deg,#5f6fe0,#37409e)}.t9{background:linear-gradient(135deg,#0f9e8e,#0b6b60)}.t10{background:linear-gradient(135deg,#d1a72e,#93731a)}.t11{background:linear-gradient(135deg,#d94f8c,#9c3163)}.t12{background:linear-gradient(135deg,#5a5f6b,#33363d)}.activity-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.activity-list li{border-bottom:1px solid var(--border-soft);align-items:flex-start;gap:10px;padding:9px 2px;display:flex}.activity-list li:last-child{border-bottom:none}.activity-list svg{color:var(--accent);flex:none;margin-top:2px}.activity-list b{font-size:.78rem;font-weight:600;display:block}.activity-list span{color:var(--text-faint);margin-top:1px;font-size:.7rem;display:block}.app-scroll>.admin-layout{flex:auto;grid-template-columns:220px 1fr;align-items:stretch;gap:16px;min-height:0;display:grid}.admin-nav{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);flex-direction:column;align-content:flex-start;gap:2px;padding:8px;display:flex;overflow-y:auto}.admin-nav-item{color:var(--text-soft);border-radius:var(--r-sm);text-align:left;background:0 0;border:none;flex:none;align-items:center;gap:10px;padding:9px 10px;font-size:.8rem;display:flex}.admin-nav-item:hover{background:var(--hover-overlay);color:var(--text)}.admin-nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.admin-content{flex-direction:column;min-height:0;margin-bottom:0;display:flex;overflow-y:auto}.admin-content>.panel-header,.admin-content>.settings-groups,.admin-content>.btn,.admin-content>.chip-row{flex:none}.settings-groups{grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:16px;display:grid}.settings-group-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);margin-bottom:10px;font-size:.7rem;font-weight:700}.filter-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.filter-row .field select{width:130px}.apply-btn{height:32px}.report-pills{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.toast{z-index:5000;background:var(--surface-3);border:1px solid var(--border);width:max-content;color:var(--text);border-radius:var(--r-md);box-shadow:var(--shadow-flyout);align-items:center;gap:8px;margin:0 auto;padding:10px 16px;font-size:.8rem;display:flex;position:fixed;bottom:76px;left:0;right:0}.toast svg{color:#6bdd8a}@keyframes popIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toolbar-right .hint{align-items:center;gap:5px;display:flex}.login-screen{justify-content:center;align-items:center;display:flex}.login-card{border-radius:var(--r-lg);width:100%;max-width:360px;box-shadow:var(--shadow-flyout);flex-direction:column;padding:28px 26px;display:flex;position:relative}.login-brand{align-items:center;gap:12px;margin-bottom:22px;display:flex}.login-logo{border-radius:var(--r-md);background:var(--accent-solid);color:#fff;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:.95rem;font-weight:700;display:flex}.login-brand h1{margin:0;font-size:1.05rem}.login-brand p{color:var(--text-soft);margin:2px 0 0;font-size:.74rem}.login-error{margin-bottom:10px}.login-submit{justify-content:center;gap:8px;margin-top:6px}.login-card-wide{max-width:420px}.login-back{justify-content:center;gap:8px;margin-top:8px}.login-forgot{align-self:center;margin-top:12px;font-size:.78rem}.twofa-prompt{align-items:center;gap:6px;margin:0 0 14px;display:flex}.twofa-setup{flex-direction:column;align-items:center;gap:10px;margin-bottom:14px;display:flex}.twofa-steps{color:var(--text-soft);align-self:stretch;margin:0;padding-left:18px;font-size:.78rem}.twofa-steps li{margin:2px 0}.twofa-qr{border-radius:var(--r-md);width:200px;height:200px;image-rendering:pixelated;background:#fff}.twofa-key{flex-direction:column;align-items:center;gap:4px;display:flex}.twofa-key code{letter-spacing:.04em;-webkit-user-select:all;user-select:all;word-break:break-all;text-align:center;font-size:.82rem}.lock-clock{text-align:center;color:#fff;text-shadow:0 2px 10px #00000080;position:absolute;top:14%;left:50%;transform:translate(-50%)}.lock-time{font-size:3.4rem;font-weight:600;line-height:1.1}.lock-date{opacity:.85;margin-top:4px;font-size:1rem}.lock-user p{align-items:center;gap:6px;display:flex}.lock-signout{justify-content:center;width:100%;margin-top:8px}.user-tray{position:relative}.user-btn{gap:6px;width:auto;padding:0 10px}.user-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:.76rem;overflow:hidden}.taskbar-tray .user-menu{min-width:190px;position:absolute;inset:auto 0 48px auto}.user-menu-info{border-bottom:1px solid var(--border);margin-bottom:4px;padding:8px 10px 10px}.user-menu-name{font-size:.84rem;font-weight:600}.user-menu-role{color:var(--text-soft);margin-top:2px;font-size:.7rem}.notif-tray,.notif-btn{position:relative}.notif-badge{background:var(--danger,#e5484d);color:#fff;text-align:center;pointer-events:none;border-radius:999px;min-width:15px;height:15px;padding:0 4px;font-size:.62rem;font-weight:600;line-height:15px;position:absolute;top:6px;right:1px}.taskbar-tray .notif-panel{width:360px;max-width:calc(100vw - 32px);max-height:60vh;padding:0;position:absolute;inset:auto 0 48px auto;overflow:hidden}.notif-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:.82rem;font-weight:600;display:flex}.notif-toggle{color:var(--text-soft);align-items:center;gap:6px;font-size:.75rem;font-weight:400;display:flex}.notif-toggle input{width:13px;height:13px}.notif-list{flex-direction:column;max-height:calc(60vh - 42px);padding:6px;display:flex;overflow-y:auto}.notif-empty{color:var(--text-soft);align-items:center;gap:8px;padding:14px 10px;font-size:.8rem;display:flex}.context-menu .notif-row{align-items:flex-start;width:100%}.notif-row.unread .notif-title{font-weight:600}.notif-icon{color:var(--accent);flex:none;margin-top:2px}.notif-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notif-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notif-meta{color:var(--text-faint);font-size:.72rem}.notif-status{background:var(--hover-overlay);color:var(--text-soft);border-radius:999px;flex:none;padding:1px 7px;font-size:.68rem}.notif-status.new{background:var(--accent);color:#fff}.notif-status.done{opacity:.7}.cop-body{flex-direction:column;gap:6px;max-height:50vh;padding:4px 18px 14px;display:flex;overflow-y:auto}.cop-note{color:var(--text-soft);align-items:center;gap:8px;padding:6px 0;font-size:.82rem;display:flex}.cop-row{border-radius:var(--r-sm);cursor:pointer;align-items:center;gap:10px;padding:7px 8px;font-size:.84rem;display:flex}.cop-row:hover{background:var(--hover-overlay)}.cop-row.disabled{cursor:default;opacity:.65}.cop-row input{flex:none;width:15px;height:15px}.cop-name{flex:1;min-width:0}.cop-state{background:var(--hover-overlay);color:var(--text-soft);border-radius:999px;padding:1px 7px;font-size:.7rem}.cop-error{color:var(--danger,#e5484d);font-size:.8rem}.data-grid th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.data-grid th.sortable:hover{color:var(--text)}.data-grid th .sort-ind{vertical-align:-1px;margin-left:4px}.data-grid tr.filter-row th{padding-top:2px;padding-bottom:6px;font-weight:400}.col-filter{align-items:center;min-width:70px;display:flex;position:relative}.col-filter input,.col-filter select{background:var(--surface-3);border:1px solid var(--border);width:100%;color:var(--text);border-radius:var(--r-sm);padding:3px 18px 3px 6px;font-family:inherit;font-size:.7rem}.col-filter-clear{color:var(--text-faint);cursor:pointer;background:0 0;border:none;padding:2px;display:flex;position:absolute;right:2px}.status-toggle{align-items:center;gap:6px;display:inline-flex}.status-toggle .switch-label{color:var(--text-soft);font-size:.72rem}.conn-pill{border:1px solid var(--border);border-radius:999px;margin-left:6px;padding:1px 6px;font-size:.62rem}.conn-pill.active{color:#3fb950;border-color:#3fb950}.conn-pill.inactive{color:#ff7a8a;border-color:#ff7a8a}.link-btn{color:var(--accent);cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none;align-items:center;gap:4px;padding:0;text-decoration:underline;display:inline-flex}.confirm-input{padding:0 18px 8px}.panel-subtoolbar{justify-content:flex-end;margin:4px 0 8px;display:flex}
