:root{--accent: #0078d4;--bg-panel: rgba(18, 22, 35, .92);--border: rgba(255, 255, 255, .12);--text: #f3f7ff;--muted: #9fb0cc;--danger: #c42b1c}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;font-family:Segoe UI,system-ui,sans-serif;color:var(--text)}body{background:#08121f}body.light{--bg-panel: rgba(247, 249, 253, .95);--border: rgba(11, 31, 54, .12);--text: #132033;--muted: #5a6c84;background:#dbe7f6}button,input,select,textarea{font:inherit}select{color:var(--text);background-color:#151c2af2}select option{color:var(--text);background:#111a2a}body.light select{color:#132033;background-color:#fffffff5}body.light select option{color:#132033;background:#fff}.app-shell{width:100%;height:100%;position:relative}.desktop-react{position:absolute;top:0;right:0;bottom:54px;left:0;background:var(--desktop-bg);overflow:hidden}.desktop-react:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#ffffff0a,#00000014);pointer-events:none}.desktop-icon-react{position:relative;z-index:1;width:88px;margin:16px 0 0 16px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px;border-radius:10px;border:1px solid transparent;background:transparent;color:#fff}.desktop-icon-react:hover{background:#ffffff14;border-color:#ffffff29}.desktop-icon-react span{font-size:34px}.desktop-icon-react small{text-align:center}.window-react{position:absolute;top:72px;left:110px;width:min(960px,calc(100vw - 180px));height:min(680px,calc(100vh - 140px));min-width:560px;min-height:360px;max-width:calc(100vw - 24px);max-height:calc(100vh - 78px);resize:both;border:1px solid var(--border);border-radius:14px;background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 18px 60px #00000073;overflow:hidden}.window-react.active{outline:1px solid color-mix(in srgb,var(--accent) 55%,white 45%)}.window-titlebar-react{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid var(--border);background:#ffffff08;cursor:grab}.window-titlebar-react button{width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:inherit}.window-content-react{height:calc(100% - 42px);overflow:auto}.taskbar-react{position:absolute;left:0;right:0;bottom:0;height:54px;display:flex;align-items:center;gap:8px;padding:0 10px;background:#0e131ee0;border-top:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.taskbar-start,.taskbar-search,.task-app,.ghost-btn,.primary-btn,.danger-btn,.start-app-react,.search-result-react{border:1px solid var(--border);background:#ffffff0d;color:inherit;border-radius:10px;cursor:pointer}.taskbar-start,.task-app{width:40px;height:40px}.task-app.active{background:color-mix(in srgb,var(--accent) 28%,rgba(255,255,255,.08))}.taskbar-search{padding:10px 14px}.taskbar-open-apps{display:flex;gap:6px}.taskbar-userbox{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:13px}.start-menu-react,.search-panel-react{position:absolute;bottom:64px;left:14px;width:320px;padding:14px;background:var(--bg-panel);border:1px solid var(--border);border-radius:14px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 20px 40px #00000059;display:flex;flex-direction:column;gap:8px}.start-app-react,.search-result-react{padding:12px;display:flex;align-items:center;gap:10px}.login-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;background:#050a12b8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center}.login-card-react{width:min(420px,92vw);padding:28px;border-radius:16px;background:var(--bg-panel);border:1px solid var(--border);box-shadow:0 20px 50px #00000059;display:flex;flex-direction:column;gap:12px}.login-card-react label{display:flex;flex-direction:column;gap:6px;font-size:13px}.login-card-react input,.form-grid-react input,.form-grid-react select,.form-grid-react textarea,.search-field{background:#ffffff0f;color:inherit;border:1px solid var(--border);border-radius:10px;padding:10px 12px;outline:none}.login-card-react button,.primary-btn{background:var(--accent);border-color:transparent;color:#fff;padding:10px 14px}.primary-btn.secondary{background:#295e87}.danger-btn{background:#c42b1c2e;color:#ffb0a9;border-color:#c42b1c59;padding:8px 12px}.ghost-btn{padding:8px 12px}.small{padding:6px 10px;font-size:12px}.error-box,.login-hint,.message-inline{font-size:12px;color:var(--muted)}.error-box{color:#ff9e9e}.management-page{padding:18px}.page-header{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.page-header h2{margin:0 0 4px}.page-header p{margin:0;color:var(--muted)}.search-field{width:240px}.search-field.short{width:180px}.staff-form-layout{display:grid;grid-template-columns:180px 1fr;gap:16px;margin-bottom:16px}.image-preview-panel{border:1px solid var(--border);border-radius:12px;background:#ffffff0a;padding:10px}.image-preview-panel.compact{width:150px;height:120px}.image-preview-panel.expanded{width:180px;min-height:230px}.preview-large{width:100%;max-width:150px;height:190px;object-fit:cover;border-radius:10px;border:1px solid var(--border);display:block}.preview-compact{width:100%;height:90px;object-fit:cover;border-radius:10px;border:1px solid var(--border);display:block}.table-avatar-circle{width:36px;height:36px;object-fit:cover;border-radius:50%;border:1px solid var(--border);display:block}.top-left{align-self:start;justify-self:start}.image-fallback,.table-avatar-circle.empty{display:flex;align-items:center;justify-content:center;background:#ffffff0a;color:var(--muted)}.image-fallback.large{min-height:190px;flex-direction:column;gap:8px;border:1px dashed var(--border);border-radius:10px}.image-fallback.compact{min-height:90px;flex-direction:column;gap:6px;border:1px dashed var(--border);border-radius:10px;text-align:center}.placeholder-icon{font-size:22px;opacity:.8}.form-grid-react{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px}.form-grid-react textarea{min-height:90px;grid-column:span 2;resize:vertical}.checkbox-line{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#ffffff0a}.action-row-react{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.data-table-react{width:100%;border-collapse:collapse}.data-table-react th,.data-table-react td{padding:10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.row-actions{display:flex;gap:8px}.perm{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px}.perm.super{background:#c42b1c2e;color:#ffb0a9}.perm.admin{background:#ca77002e;color:#ffd18d}.perm.user{background:#0078d42e;color:#9cd4ff}.settings-layout-react{display:grid;grid-template-columns:220px 1fr;height:100%}.settings-sidebar-react{border-right:1px solid var(--border);padding:12px;display:flex;flex-direction:column;gap:8px}.settings-sidebar-react button{border:1px solid transparent;background:transparent;color:inherit;border-radius:10px;padding:10px 12px;text-align:left}.settings-sidebar-react button.active,.settings-sidebar-react button:hover{background:#ffffff0f;border-color:var(--border)}.settings-main-react{padding:16px}.settings-card-react{border:1px solid var(--border);background:#ffffff0a;border-radius:14px;padding:16px}.settings-card-react p{color:var(--muted)}.settings-stack-react{display:flex;flex-direction:column;gap:12px}.swatches,.accent-row-react{display:flex;gap:10px;flex-wrap:wrap}.swatch,.accent-dot{width:28px;height:28px;border-radius:50%;border:2px solid transparent;background:linear-gradient(135deg,#081222,#302f80)}.swatch.active,.accent-dot.active{border-color:#fff}.boot-screen{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:#08121f;color:var(--muted)}@media(max-width:1024px){.staff-form-layout,.settings-layout-react,.form-grid-react{grid-template-columns:1fr}.form-grid-react textarea{grid-column:span 1}}.boot-screen:after{content:"";width:30px;height:30px;border:3px solid rgba(255,255,255,.12);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}.login-card-react input:focus,.form-grid-react input:focus,.form-grid-react select:focus,.form-grid-react textarea:focus,.search-field:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent);outline:none}.data-table-react tbody tr:hover{background:#ffffff09}body.light .data-table-react tbody tr:hover{background:#00000009}button{transition:background .15s ease,border-color .15s ease,opacity .15s ease}button:disabled{opacity:.45;cursor:not-allowed}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff47}body.light ::-webkit-scrollbar-thumb{background:#0000002e}body.light ::-webkit-scrollbar-thumb:hover{background:#00000052}.settings-sidebar-react button.active{background:color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.06));border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.taskbar-clock{font-size:12px;color:var(--muted);white-space:nowrap}.straf-grid{margin-bottom:14px}.status-pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px}.status-pill.done{background:#107c1033;color:#a9f3a9}.status-pill.progress{background:#0078d433;color:#9cd4ff}.status-pill.todo{background:#ca770033;color:#ffd18d}.compact-table th,.compact-table td{padding:8px 10px;font-size:13px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:10px;margin-bottom:14px}.stats-grid.two-cols{grid-template-columns:repeat(2,minmax(280px,1fr))}.stats-tabs{display:flex;gap:8px;margin-bottom:12px}.stats-tabs button{border:1px solid var(--border);background:#ffffff0d;color:inherit;border-radius:10px;padding:8px 12px}.stats-tabs button.active{background:color-mix(in srgb,var(--accent) 28%,rgba(255,255,255,.08))}.filter-row{padding:10px;border:1px solid var(--border);border-radius:12px;background:#ffffff08}.filter-select{min-width:175px;background:linear-gradient(180deg,#ffffff14,#ffffff0a);color:inherit;border:1px solid var(--border);border-radius:10px;padding:9px 34px 9px 12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 16px) 52%,calc(100% - 11px) 52%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.filter-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.inline-number{width:92px;background:#ffffff0f;color:inherit;border:1px solid var(--border);border-radius:8px;padding:6px 8px}body.light .filter-row{background:#ffffff8c}body.light .filter-select{background:linear-gradient(180deg,#fffffff2,#f5f8fce6)}@media(max-width:1024px){.stats-grid,.stats-grid.two-cols{grid-template-columns:1fr}}
