html{font-size:clamp(1rem,.75rem + .3125vw,1.25rem)}:root{--schedule-scale: 1;--schedule-cell-min-width: calc(10rem * var(--schedule-scale));--clr-primary: #6366f1;--clr-primary-dark: #4338ca;--clr-primary-light: #818cf8;--clr-accent: #a78bfa;--clr-success: #10b981;--clr-warning: #f59e0b;--clr-danger: #ef4444;--clr-danger-dark: #b91c1c;--bg-page: #f1f5f9;--bg-card: #ffffff;--bg-card-hover: #fafbff;--bg-input: #f8fafc;--border-color: rgba(99, 102, 241, .12);--border-strong: rgba(99, 102, 241, .25);--text-primary: #0f172a;--text-secondary: #64748b;--text-muted: #94a3b8;--shadow-sm: 0 1px 3px rgba(99,102,241,.08), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(99,102,241,.12), 0 2px 6px rgba(0,0,0,.06);--shadow-lg: 0 10px 40px rgba(99,102,241,.15), 0 4px 12px rgba(0,0,0,.08);--shadow-glow: 0 0 20px rgba(99,102,241,.25);--radius-sm: .5rem;--radius-md: .875rem;--radius-lg: 1.25rem;--radius-xl: 1.75rem;--transition: .25s cubic-bezier(.4,0,.2,1)}.dark{--bg-page: #0b0f1a;--bg-card: rgba(15,23,42,.85);--bg-card-hover: rgba(30,41,59,.9);--bg-input: rgba(30,41,59,.7);--border-color: rgba(148,163,184,.08);--border-strong: rgba(148,163,184,.18);--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 20px rgba(0,0,0,.4), 0 0 0 1px rgba(148,163,184,.06);--shadow-lg: 0 16px 48px rgba(0,0,0,.5), 0 0 0 1px rgba(148,163,184,.08);--shadow-glow: 0 0 30px rgba(99,102,241,.2)}:root{--card-bg: var(--bg-card);--text-color: var(--text-primary);--bg-color: var(--bg-page);--sidebar-bg: var(--bg-input)}body{font-family:Vazirmatn,Vazirmatn Fallback,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-page);color:var(--text-primary);transition:background-color var(--transition),color var(--transition)}.bg-gray-100,.dark .bg-gray-900{background-color:var(--bg-page)!important}.bg-white,.dark .bg-gray-800{background-color:var(--bg-card)!important}.bg-blue-500,.bg-blue-600,.bg-blue-700,.bg-indigo-500,.bg-indigo-600,.bg-indigo-700{background-color:var(--clr-primary)!important}.hover\:bg-blue-600:hover,.hover\:bg-blue-700:hover,.hover\:bg-indigo-600:hover,.hover\:bg-indigo-700:hover{background-color:var(--clr-primary-dark)!important}.border-blue-500,.border-indigo-500{border-color:var(--clr-primary)!important}.text-blue-500,.text-blue-600,.text-indigo-500,.text-indigo-600{color:var(--clr-primary)!important}.text-blue-700,.text-indigo-700{color:var(--clr-primary-dark)!important}.ring-indigo-500,.ring-blue-500{--tw-ring-color: var(--clr-primary) !important}.text-gray-400{color:#6b7280!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--clr-primary)}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}#app-loader{background:radial-gradient(ellipse at center,color-mix(in srgb,var(--clr-primary) 8%,transparent) 0%,var(--bg-page) 70%);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.dark #app-loader{background:radial-gradient(ellipse at center,color-mix(in srgb,var(--clr-primary) 15%,transparent),#0b0f1a 70%)}.loader-spinner{border:3px solid color-mix(in srgb,var(--clr-primary) 15%,transparent);width:48px;height:48px;border-radius:50%;border-top-color:var(--clr-primary);border-right-color:var(--clr-accent);animation:spin .9s cubic-bezier(.4,0,.2,1) infinite;box-shadow:0 0 16px color-mix(in srgb,var(--clr-primary) 25%,transparent)}.dark .loader-spinner{border-color:color-mix(in srgb,var(--clr-primary) 10%,transparent);border-top-color:var(--clr-primary-light);border-right-color:var(--clr-accent)}#app-loader .bg-indigo-600{box-shadow:0 10px 20px -5px color-mix(in srgb,var(--clr-primary) 45%,transparent)!important}@keyframes spin{to{transform:rotate(360deg)}}header.from-blue-600,header.bg-gradient-to-l.from-blue-600{background:linear-gradient(135deg,var(--header-c-dark, var(--clr-primary-dark)) 0%,var(--header-c, var(--clr-primary)) 100%)!important;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-lg);backdrop-filter:blur(10px)}header.from-teal-600,header.bg-gradient-to-l.from-teal-600{background:linear-gradient(135deg,var(--header-c-dark, var(--clr-primary-dark)) 0%,var(--header-c, var(--clr-primary)) 100%)!important;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-lg);backdrop-filter:blur(10px)}header h1{font-size:1.6rem;font-weight:800;letter-spacing:-.02em;text-shadow:0 2px 8px rgba(0,0,0,.2)}#dashboard-view>header.header-asymmetric,header.header-asymmetric{border-radius:20px 20px 20px 64px!important;padding-top:44px!important;padding-bottom:18px!important;margin-top:28px}.header-logo-badge{position:absolute;top:-24px;left:20px;width:56px;height:56px;border-radius:50%;object-fit:cover;border:3px solid var(--bg-page);box-shadow:var(--shadow-lg);background:var(--bg-card);z-index:5}@media(max-width:640px){header.header-asymmetric{border-radius:20px 20px 20px 40px!important;padding-top:34px!important;padding-bottom:14px!important;margin-top:22px}.header-logo-badge{top:-18px;left:12px}}.dashboard-card,.bg-white.p-6.rounded-lg,.bg-white.p-4.rounded-lg{background:var(--bg-card);border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-md);border:1px solid var(--border-color);transition:box-shadow var(--transition),border-color var(--transition)}.dashboard-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-strong)}.dark .dashboard-card,.dark .bg-white.p-6.rounded-lg,.dark .bg-white.p-4.rounded-lg{background:var(--bg-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color)}.dark .bg-white.dark\:bg-gray-800.p-6.rounded-lg.shadow-md{background:var(--bg-card)!important}button,[type=button],[type=submit]{transition:all var(--transition);font-family:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem 1rem;font-size:.875rem;font-weight:700;line-height:1.5;border:none;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:all var(--transition)}.btn:focus-visible{outline:2px solid var(--clr-primary);outline-offset:2px}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-primary{background:linear-gradient(135deg,var(--clr-primary),var(--clr-primary-dark));color:#fff;box-shadow:0 2px 8px #6366f159}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--clr-primary-dark),var(--clr-primary-dark));box-shadow:0 4px 14px #6366f180;transform:translateY(-1px)}.btn-secondary{background:var(--bg-input);color:var(--text-secondary);box-shadow:inset 0 0 0 1px var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--border-strong)}.dark .btn-secondary{background:#94a3b81f}.dark .btn-secondary:hover:not(:disabled){background:#94a3b833}.btn-danger{background:linear-gradient(135deg,var(--clr-danger),#dc2626);color:#fff;box-shadow:0 2px 8px #ef44444d}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,var(--clr-danger-dark));box-shadow:0 4px 14px #ef444473;transform:translateY(-1px)}.btn-success{background:linear-gradient(135deg,var(--clr-success),#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 14px #10b98173;transform:translateY(-1px)}.bg-blue-500{background:linear-gradient(135deg,var(--clr-primary),var(--clr-primary-dark))!important;box-shadow:0 2px 8px #6366f159!important;border:none;font-weight:600}.hover\:bg-blue-600:hover{background:linear-gradient(135deg,var(--clr-primary-dark),var(--clr-primary-dark))!important;box-shadow:0 4px 14px #6366f180!important;transform:translateY(-1px)}.bg-green-500{background:linear-gradient(135deg,#10b981,#059669)!important;box-shadow:0 2px 8px #10b9814d!important}.hover\:bg-green-600:hover{background:linear-gradient(135deg,#059669,#047857)!important;box-shadow:0 4px 14px #10b98173!important;transform:translateY(-1px)}.bg-red-500{background:linear-gradient(135deg,#ef4444,#dc2626)!important;box-shadow:0 2px 8px #ef44444d!important}.hover\:bg-red-600:hover{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;box-shadow:0 4px 14px #ef444473!important;transform:translateY(-1px)}.bg-indigo-500{background:linear-gradient(135deg,var(--clr-primary),var(--clr-primary-dark))!important;box-shadow:0 2px 8px #6366f159!important}.hover\:bg-indigo-600:hover{background:linear-gradient(135deg,var(--clr-primary-dark),var(--clr-primary-dark))!important;box-shadow:0 4px 14px #6366f180!important;transform:translateY(-1px)}.bg-purple-500{background:linear-gradient(135deg,#a855f7,#9333ea)!important;box-shadow:0 2px 8px #a855f74d!important}.hover\:bg-purple-600:hover{background:linear-gradient(135deg,#9333ea,#7e22ce)!important;box-shadow:0 4px 14px #a855f773!important;transform:translateY(-1px)}.bg-teal-500{background:linear-gradient(135deg,#14b8a6,#0d9488)!important;box-shadow:0 2px 8px #14b8a64d!important}.hover\:bg-teal-600:hover{background:linear-gradient(135deg,#0d9488,#0f766e)!important;transform:translateY(-1px)}.bg-teal-600{background:linear-gradient(135deg,#0d9488,#0f766e)!important;box-shadow:0 2px 8px #14b8a64d!important}.hover\:bg-teal-700:hover{background:linear-gradient(135deg,#0f766e,#115e59)!important;transform:translateY(-1px)}.bg-gray-500{background:linear-gradient(135deg,#6b7280,#4b5563)!important;box-shadow:0 2px 6px #0003!important}.hover\:bg-gray-600:hover{background:linear-gradient(135deg,#4b5563,#374151)!important;transform:translateY(-1px)}.bg-yellow-500{background:linear-gradient(135deg,#f59e0b,#d97706)!important;box-shadow:0 2px 8px #f59e0b4d!important}.hover\:bg-yellow-600:hover{background:linear-gradient(135deg,#d97706,#b45309)!important;transform:translateY(-1px)}.bg-red-600{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;box-shadow:0 2px 8px #dc26264d!important}.hover\:bg-red-700:hover{background:linear-gradient(135deg,#b91c1c,#991b1b)!important;transform:translateY(-1px)}.bg-white\/90{background:#ffffffeb!important;backdrop-filter:blur(8px);box-shadow:0 2px 8px #00000026!important;color:#3730a3!important;font-weight:700;border:1px solid rgba(255,255,255,.4)}.hover\:bg-white:hover{background:#fff!important;box-shadow:0 4px 14px #0003!important;transform:translateY(-1px)}.dark .bg-gray-700{background:#374151cc!important}.dark .hover\:bg-gray-600:hover{background:#4b5563e6!important}.bg-white\/20{background:#ffffff26!important;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2)}.hover\:bg-white\/30:hover{background:#ffffff40!important}input[type=text],input[type=password],input[type=email],input[type=search],input[type=number],input[type=date],input[type=time],input[type=datetime-local],input[type=url],select,textarea{background-color:var(--bg-input)!important;border:1.5px solid var(--border-color)!important;border-radius:var(--radius-sm)!important;color:var(--text-primary)!important;transition:border-color var(--transition),box-shadow var(--transition),background-color var(--transition);outline:none!important}input:focus,select:focus,textarea:focus{border-color:var(--clr-primary)!important;box-shadow:0 0 0 3px #6366f126!important;background-color:var(--bg-card)!important}.dark input[type=text],.dark input[type=password],.dark input[type=email],.dark input[type=search],.dark input[type=number],.dark input[type=date],.dark input[type=time],.dark input[type=datetime-local],.dark input[type=url],.dark select,.dark textarea{background-color:#0f172a99!important;border-color:#94a3b81f!important;color:#f1f5f9!important}.dark input:focus,.dark select:focus,.dark textarea:focus{background-color:#1e293bcc!important;border-color:var(--clr-primary-light)!important;box-shadow:0 0 0 3px #6366f133!important}select option{background-color:var(--bg-card);color:var(--text-primary)}.bg-gray-200{background-color:var(--bg-input)!important}.dark .bg-gray-700{background-color:#0f172a80!important}input.peer:checked~.peer-checked\:bg-blue-600{background-color:var(--clr-primary)!important}.tabbar{display:flex;gap:.25rem;overflow-x:auto;border-bottom:1px solid var(--border-color);scrollbar-width:none;-ms-overflow-style:none}.tabbar::-webkit-scrollbar{display:none}.tabbar.fade-left:not(.fade-right){-webkit-mask-image:linear-gradient(to right,transparent 0,#000 28px);mask-image:linear-gradient(to right,transparent 0,#000 28px)}.tabbar.fade-right:not(.fade-left){-webkit-mask-image:linear-gradient(to left,transparent 0,#000 28px);mask-image:linear-gradient(to left,transparent 0,#000 28px)}.tabbar.fade-left.fade-right{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%)}.tab-btn{position:relative;display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1.5;white-space:nowrap;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;border-radius:var(--radius-sm) var(--radius-sm) 0 0;cursor:pointer;transition:color var(--transition),border-color var(--transition),background-color var(--transition)}.tab-btn:hover{color:var(--clr-primary);background:color-mix(in srgb,var(--clr-primary) 7%,transparent)}.tab-btn:focus-visible{outline:2px solid var(--clr-primary);outline-offset:-2px}.tab-btn.active{color:var(--clr-primary-dark);border-bottom-color:var(--clr-primary);font-weight:700;background:transparent}.dark .tab-btn{color:#cbd5e1}.dark .tab-btn:hover{color:var(--clr-primary-light)}.dark .tab-btn.active{color:var(--clr-primary-light);border-bottom-color:var(--clr-primary-light)}.admin-tab{position:relative;display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0;padding:.625rem 1.5rem;font-size:.9375rem;font-weight:600;line-height:1.5;white-space:nowrap;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;border-radius:var(--radius-sm) var(--radius-sm) 0 0;cursor:pointer;transition:color var(--transition),border-color var(--transition),background-color var(--transition);letter-spacing:.01em}.admin-tab:hover{color:var(--clr-primary);background:color-mix(in srgb,var(--clr-primary) 7%,transparent)}.admin-tab:focus-visible{outline:2px solid var(--clr-primary);outline-offset:-2px}.admin-tab.active{color:var(--clr-primary-dark);border-color:var(--clr-primary);font-weight:700;background:transparent}.admin-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--clr-primary),var(--clr-accent));border-radius:2px 2px 0 0}.dark .admin-tab{color:#cbd5e1}.dark .admin-tab:hover{color:var(--clr-primary-light)}.dark .admin-tab.active{color:var(--clr-primary-light);border-color:var(--clr-primary-light)}.theme-preset-btn{display:flex;align-items:center;gap:.5rem;padding:.35rem .6rem;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-card);cursor:pointer;transition:all var(--transition);font-size:.78rem;color:var(--text-secondary)}.theme-preset-btn:hover{border-color:var(--clr-primary);color:var(--text-primary);transform:translateY(-1px)}.theme-preset-btn .tp-sw{display:inline-flex}.theme-preset-btn .tp-sw>span{width:14px;height:14px;border-radius:50%;display:inline-block;margin-inline-start:-5px;box-shadow:0 0 0 1.5px var(--bg-card)}.theme-preset-btn .tp-sw>span:first-child{margin-inline-start:0}.personnel-panel-tab{-webkit-tap-highlight-color:transparent}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:50;max-height:90vh;overflow-y:auto;border-radius:var(--radius-xl)!important;box-shadow:var(--shadow-lg),0 0 0 1px var(--border-color);border:1px solid var(--border-color)}.dark .modal{background:linear-gradient(135deg,#0f172af7,#1e293bf7)!important;border-color:#94a3b81a}#password-confirm-modal .modal,#password-confirm-modal .modal-backdrop{z-index:100}#delegate-task-modal .modal{z-index:110}#delegate-task-modal .modal-backdrop{z-index:105}.tfa-boxes{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:20px}.tfa-divider{width:10px;height:2px;border-radius:2px;background:var(--border-strong);flex:0 0 auto}.tfa-box{position:relative;width:44px;height:54px;flex:0 0 auto;border-radius:var(--radius-sm);background:var(--bg-input);border:1.5px solid var(--border-color);transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition),background var(--transition)}.tfa-input{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;background:transparent;border:0;outline:0;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.375rem;font-weight:700;color:var(--text-primary);caret-color:var(--clr-primary);border-radius:inherit}.tfa-box--filled{border-color:var(--border-strong);background:var(--bg-card)}.tfa-box--active,.tfa-box:focus-within{border-color:var(--clr-primary);transform:translateY(-2px);box-shadow:0 0 0 3px color-mix(in srgb,var(--clr-primary) 20%,transparent)}.tfa-box--tap .tfa-input{animation:tfa-pop .28s cubic-bezier(.2,1.3,.3,1)}@keyframes tfa-pop{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}.tfa-boxes--error .tfa-box{border-color:var(--clr-danger);background:color-mix(in srgb,var(--clr-danger) 8%,var(--bg-input))}.tfa-boxes--error .tfa-input{color:var(--clr-danger)}.tfa-boxes--error{animation:tfa-shake .45s cubic-bezier(.36,.07,.19,.97)}@keyframes tfa-shake{10%{transform:translate(-6px)}22%{transform:translate(5px)}34%{transform:translate(-5px)}46%{transform:translate(4px)}58%{transform:translate(-3px)}70%{transform:translate(2px)}to{transform:translate(0)}}.tfa-boxes--success .tfa-box{border-color:var(--clr-success);background:color-mix(in srgb,var(--clr-success) 10%,var(--bg-input))}.tfa-boxes--success .tfa-input{color:var(--clr-success)}@media(prefers-reduced-motion:reduce){.tfa-box,.tfa-box--tap .tfa-input{animation:none!important;transition-duration:.01ms!important}.tfa-boxes--error{animation:none!important}}.modal-backdrop{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:40}.table-container{transition:font-size var(--transition);border-radius:var(--radius-lg);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}#schedule-head th{background:linear-gradient(135deg,#1e1b4b,#312e81)!important;color:#e0e7ff!important;font-weight:700;letter-spacing:.03em;padding:.9rem .75rem;font-size:.8rem;text-transform:uppercase}.dark #schedule-head th{background:linear-gradient(135deg,#0f172a,#1e1b4b)!important;color:#a5b4fc!important;border-bottom:1px solid rgba(99,102,241,.2)}#schedule-body td{height:64px;min-width:var(--schedule-cell-min-width);vertical-align:top;transition:background-color var(--transition);border-color:var(--border-color)!important}#schedule-body tr:hover>td{background-color:#6366f10a}.dark #schedule-body tr:hover>td{background-color:#6366f112}.cell-msg-light{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:.25rem;border:0;background:transparent;cursor:pointer;line-height:0}.cell-msg-dot{width:.55rem;height:.55rem;border-radius:9999px;background:#dc2626;box-shadow:0 0 #dc2626b3;animation:cell-msg-blink 1.3s ease-in-out infinite}.cell-msg-light:hover .cell-msg-dot{background:#b91c1c}@keyframes cell-msg-blink{0%{opacity:1;box-shadow:0 0 #dc262699}70%{opacity:.45;box-shadow:0 0 0 6px #dc262600}to{opacity:1;box-shadow:0 0 #dc262600}}@media(prefers-reduced-motion:reduce){.cell-msg-dot{animation:none}}.off-gap{display:inline-flex;align-items:center;gap:.25rem;flex-shrink:0;font-size:.66rem;font-weight:700;line-height:1}.off-gap-dot{width:.5rem;height:.5rem;border-radius:9999px;background:currentColor;animation:off-gap-pulse 2.4s ease-in-out infinite}.off-gap--good{color:#16a34a}.off-gap--warn{color:#ea580c}.off-gap--bad{color:#dc2626}.off-gap--bad .off-gap-dot{animation-duration:1.1s}@keyframes off-gap-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}@media(prefers-reduced-motion:reduce){.off-gap-dot{animation:none}}.prev-week-shift{font-size:.66rem;font-weight:400;opacity:.38;white-space:nowrap;flex-shrink:0;color:inherit}.sticky-col{position:sticky;right:0;z-index:10}#schedule-body td.sticky-col{background:linear-gradient(135deg,#eef2ff,#e0e7ff)!important;border-left:2px solid rgba(99,102,241,.2)!important;font-weight:700;color:#3730a3}.dark #schedule-body td.sticky-col{background:linear-gradient(135deg,#1e1b4be6,#312e81b3)!important;border-left-color:#6366f140!important;color:#a5b4fc!important}#schedule-head th.sticky-col{background:linear-gradient(135deg,#1e1b4b,#312e81)!important;border-left:2px solid rgba(255,255,255,.1)!important}.schedule-cell-container{position:relative;width:100%;height:100%;display:flex;flex-direction:column}.schedule-cell-view{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:56px;padding:6px;border-radius:10px;font-weight:700;cursor:pointer;background:linear-gradient(145deg,var(--shift-color-light, #f8fafc),var(--shift-color-dark, #e2e8f0));transition:transform var(--transition),box-shadow var(--transition);border:1px solid rgba(255,255,255,.5);box-shadow:0 2px 6px #0000000f}.schedule-cell-view:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 6px 16px #0000001f}.shift-picker{position:fixed;z-index:9999;width:260px;max-width:calc(100vw - 16px);background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 12px 32px #0000002e;padding:8px;display:flex;flex-direction:column;gap:6px;font-family:inherit}.dark .shift-picker{background:#1f2937;border-color:#374151;box-shadow:0 12px 32px #00000080}.shift-picker[hidden]{display:none}.shift-picker-search{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #e2e8f0;border-radius:9px;background:#f8fafc}.dark .shift-picker-search{background:#111827;border-color:#374151}.shift-picker-search svg{width:15px;height:15px;color:#94a3b8;flex-shrink:0}.shift-picker-input{flex:1;border:none;background:transparent;outline:none;font-size:.85rem;color:inherit;min-width:0}.shift-picker-list{display:flex;flex-direction:column;gap:3px;max-height:300px;overflow-y:auto;margin:0 -2px;padding:0 2px}.shift-picker-item{display:flex;align-items:center;gap:10px;padding:7px 9px;border-radius:9px;cursor:pointer;transition:background var(--transition)}.shift-picker-item:hover{background:#f1f5f9}.dark .shift-picker-item:hover{background:#374151}.shift-picker-item.selected{background:#eff6ff}.dark .shift-picker-item.selected{background:#3b82f62e}.shift-picker-item .dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.shift-picker-item .info{flex:1;min-width:0;display:flex;flex-direction:column}.shift-picker-item .nm{font-size:.85rem;font-weight:600;line-height:1.25}.shift-picker-item .tm{font-size:.72rem;color:#64748b;line-height:1.3}.dark .shift-picker-item .tm{color:#9ca3af}.shift-picker-item .tm .nextday{color:#94a3b8}.shift-picker-item .chk{color:#2563eb;flex-shrink:0;display:flex}.shift-picker-item .chk svg{width:16px;height:16px}.dark .shift-picker-item .chk{color:#60a5fa}.shift-picker-week{display:flex;align-items:center;gap:4px;padding:3px 8px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;font-size:.68rem;color:#64748b;cursor:pointer;flex-shrink:0;transition:all var(--transition)}.shift-picker-week svg{width:12px;height:12px}.shift-picker-week:hover{background:#2563eb;border-color:#2563eb;color:#fff}.dark .shift-picker-week{background:#1f2937;border-color:#4b5563;color:#9ca3af}.dark .shift-picker-week:hover{background:#3b82f6;border-color:#3b82f6;color:#fff}.shift-picker-footer{border-top:1px solid #e2e8f0;padding-top:6px}.dark .shift-picker-footer{border-color:#374151}.shift-picker-remove{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border:none;background:transparent;border-radius:9px;font-size:.82rem;color:#dc2626;cursor:pointer;transition:background var(--transition)}.shift-picker-remove svg{width:14px;height:14px}.shift-picker-remove:hover{background:#fef2f2}.dark .shift-picker-remove{color:#f87171}.dark .shift-picker-remove:hover{background:#dc262626}.bulk-personnel-check,#bulk-select-all{width:18px;height:18px;accent-color:#6366f1;cursor:pointer;flex-shrink:0}.bulk-head-check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none}.bulk-row-selected>.sticky-col,.bulk-row-selected>td{background:#6366f124!important}#bulk-select-btn.bulk-active{background:#4338ca;box-shadow:0 0 0 3px #6366f159}#bulk-action-bar{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:9998;max-width:calc(100vw - 16px);background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 14px 40px #00000038;padding:10px 14px;animation:bulkBarUp .18s ease-out}.dark #bulk-action-bar{background:#1f2937;border-color:#374151;box-shadow:0 14px 40px #0000008c}@keyframes bulkBarUp{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.bulk-bar-inner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}.bulk-count{font-weight:700;font-size:.9rem;white-space:nowrap}.bulk-days{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.bulk-days-label{font-size:.8rem;opacity:.7;margin-inline-end:2px}.bulk-day-chip{min-width:34px;padding:4px 8px;border:1px solid #cbd5e1;border-radius:8px;background:#f8fafc;color:#475569;font-size:.78rem;cursor:pointer;transition:all .12s}.bulk-day-chip:hover{border-color:#6366f1}.bulk-day-chip.on{background:#6366f1;border-color:#6366f1;color:#fff}.dark .bulk-day-chip{background:#111827;border-color:#4b5563;color:#cbd5e1}.dark .bulk-day-chip.on{background:#6366f1;border-color:#6366f1;color:#fff}.bulk-apply{padding:7px 16px;border-radius:9px;border:none;background:#6366f1;color:#fff;font-weight:700;font-size:.85rem;cursor:pointer;transition:background .12s}.bulk-apply:hover:not(:disabled){background:#4f46e5}.bulk-apply:disabled{opacity:.45;cursor:not-allowed}.bulk-delete{padding:7px 14px;border-radius:9px;border:1px solid #ef4444;background:transparent;color:#ef4444;font-weight:700;font-size:.85rem;cursor:pointer;transition:all .12s}.bulk-delete:hover:not(:disabled){background:#ef4444;color:#fff}.bulk-delete:disabled{opacity:.45;cursor:not-allowed}.bulk-clear,.bulk-exit{padding:7px 12px;border-radius:9px;border:1px solid #cbd5e1;background:transparent;color:inherit;font-size:.82rem;cursor:pointer}.bulk-clear:hover,.bulk-exit:hover{background:#94a3b826}.dark .bulk-clear,.dark .bulk-exit{border-color:#4b5563}.shift-name{font-size:.85rem}.shift-time{font-size:.72rem;opacity:.75;margin-top:2px}.dashboard-card{background:var(--bg-card);padding:1.75rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color);border-top:3px solid var(--clr-primary);transition:box-shadow var(--transition),border-color var(--transition),transform var(--transition)}.dashboard-card>h2,.dashboard-card>.flex>h2{color:var(--clr-primary)}#personnel-panel-view main>div,#personnel-panel-view .dashboard-card{min-width:0}.dashboard-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-strong);transform:translateY(-3px)}.dark .dashboard-card{background:linear-gradient(135deg,#0f172ae6,#1e293bcc);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}#daily-status-container{border-radius:var(--radius-lg)!important;border:1px solid var(--border-color)!important;box-shadow:var(--shadow-md)!important;padding:1.25rem!important}.status-row{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}:root{--status-cell-min-h: 3.3rem;--status-cell-min-w: 140px}.status-header{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:var(--status-cell-min-h);font-weight:700;padding:.6rem 1.2rem;border-radius:var(--radius-md);min-width:150px;text-align:center;font-size:1rem;letter-spacing:.02em}.personnel-status-btn{display:inline-flex;align-items:center;gap:.5rem;box-sizing:border-box;min-height:var(--status-cell-min-h);min-width:var(--status-cell-min-w);padding:.55rem 1.1rem;border-radius:var(--radius-md);font-weight:600;transition:all var(--transition);cursor:pointer;font-size:.9rem;border:1px solid transparent;box-shadow:var(--shadow-sm)}.personnel-status-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.status-indicator{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 2px #fff6}.personnel-status-off{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:var(--status-cell-min-h);min-width:var(--status-cell-min-w);padding:.55rem 1.1rem;border-radius:var(--radius-md);font-weight:500;color:#b91c1c;font-size:.9rem;border:1px dashed var(--border-color)}.dark .personnel-status-off{color:#fecaca}.status-not-clocked-in{animation:pulse-bg 2s infinite;color:#991b1b;font-weight:700}.status-overdue-return{animation:pulse-bg-overdue 1.5s infinite;color:#991b1b;font-weight:700}.dark .status-not-clocked-in,.dark .status-overdue-return{color:#fecaca}.dark .status-not-clocked-in{animation-name:pulse-bg-dark}.dark .status-overdue-return{animation-name:pulse-bg-overdue-dark}@keyframes pulse-bg{0%{background-color:#fee2e2;box-shadow:0 0 #ef444466}50%{background-color:#fca5a5;box-shadow:0 0 0 5px #ef444400}to{background-color:#fee2e2;box-shadow:0 0 #ef444400}}@keyframes pulse-bg-overdue{0%,to{background-color:#fee2e2}50%{background-color:#f87171}}@keyframes pulse-bg-dark{0%,to{background-color:#450a0a}50%{background-color:#7f1d1d}}@keyframes pulse-bg-overdue-dark{0%,to{background-color:#450a0a}50%{background-color:#b91c1c}}.personnel-timer-display{padding:.85rem 1rem;border-radius:var(--radius-md);text-align:center;font-weight:600;background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:var(--text-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:all var(--transition);letter-spacing:.02em}.dark .personnel-timer-display{background:linear-gradient(135deg,#1e293bcc,#0f172a99);color:#94a3b8;border-color:var(--border-color)}.personnel-timer-display.on-rest{background:linear-gradient(135deg,#fffbeb,#fef3c7);color:#92400e;border-color:#f59e0b4d;box-shadow:0 2px 8px #f59e0b26}.dark .personnel-timer-display.on-rest{background:linear-gradient(135deg,#422006cc,#78350f66);color:#fde68a}.personnel-timer-display.on-rest.overdue{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#b91c1c;border-color:#ef44444d;animation:pulse-bg-overdue 1.5s infinite}.dark .personnel-timer-display.on-rest.overdue{background:linear-gradient(135deg,#450a0ae6,#7f1d1d99);color:#fecaca}.personnel-timer-display.status-pending{background:linear-gradient(135deg,#fff7ed,#ffedd5);color:#9a3412;border-color:#f9731640}.dark .personnel-timer-display.status-pending{background:linear-gradient(135deg,#431407cc,#7c2d1266);color:#fed7aa}#task-board-container,#personnel-task-board-container{display:grid;grid-auto-flow:column;grid-auto-columns:290px;gap:1rem;overflow-x:auto;padding:1.25rem;min-height:60vh;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.dark #task-board-container,.dark #personnel-task-board-container{background:linear-gradient(135deg,#0b0f1a,#0f172a);border-color:var(--border-color)}#personnel-task-board-container{grid-auto-flow:row;grid-auto-columns:unset;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));overflow-x:visible;min-height:unset}.task-column{display:flex;flex-direction:column;gap:.75rem;background:#ffffffb3;backdrop-filter:blur(8px);border-radius:var(--radius-md);padding:.75rem;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.dark .task-column{background:#1e293b99;border-color:#94a3b814}.task-column-header{display:flex;justify-content:space-between;align-items:center;padding:.4rem .5rem;font-weight:700;font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.dark .task-column-header{color:#94a3b8}.task-column-header .task-count{font-size:.75rem;padding:.15rem .55rem;border-radius:99px;background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent));color:#fff;font-weight:700}.task-list{flex-grow:1;display:flex;flex-direction:column;gap:.6rem;padding:.2rem;overflow-y:auto;min-height:80px;max-height:62vh}.task-card{position:relative;background:var(--bg-card);border-radius:var(--radius-md);padding:.85rem 1rem;box-shadow:var(--shadow-sm);border-left-width:4px;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition);border-top:1px solid var(--border-color);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.dark .task-card{background:linear-gradient(135deg,#1e293bf2,#0f172acc);border-top-color:#94a3b814;border-right-color:#94a3b814;border-bottom-color:#94a3b814}.task-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.task-card-ghost{opacity:.55;background:#6366f114!important;border:2px dashed var(--clr-primary, #6366f1)!important;box-shadow:none!important}.dark .task-card-ghost{background:#6366f129!important}.task-card-chosen{box-shadow:var(--shadow-lg)!important;transform:scale(1.02)}.task-card-dragging,.task-card-fallback{box-shadow:0 14px 30px #0000003d,0 4px 10px #0000001f!important;transform:rotate(2.5deg) scale(1.06)!important;cursor:grabbing!important;opacity:.98!important;z-index:9999;transition:box-shadow .15s ease,transform .15s ease!important}@keyframes task-card-drop-bounce{0%{transform:scale(1.04)}55%{transform:scale(.98)}to{transform:scale(1)}}.task-card-dropped{animation:task-card-drop-bounce .28s cubic-bezier(.34,1.56,.64,1)}.task-list.sortable-fallback{pointer-events:none}.task-card .task-title{font-weight:700;margin-bottom:.4rem;font-size:.9rem}.task-card.task-unread{border-inline-start-width:6px;box-shadow:var(--shadow-md)}.task-card.task-unread .task-title{font-size:1.05rem;font-weight:800;color:var(--text-primary)}.dark .task-card.task-unread{box-shadow:0 4px 18px #00000073}.task-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;font-size:.72rem;color:var(--text-muted)}.task-card .assignee-name{font-weight:600;color:var(--text-secondary)}.task-card .due-date.overdue{color:var(--clr-danger);font-weight:700}.dark .task-card .due-date.overdue{color:#fca5a5}.priority-high{border-left-color:var(--clr-danger)!important}.priority-medium{border-left-color:var(--clr-warning)!important}.priority-low{border-left-color:var(--clr-success)!important}.input-error{border-color:var(--clr-danger, #ef4444)!important;box-shadow:0 0 0 2px #ef444440!important}.task-eval-row{display:flex;justify-content:flex-end;margin-top:.5rem}.task-evaluate-btn{font-size:.68rem;font-weight:700;padding:.22rem .7rem;border-radius:999px;cursor:pointer;transition:all var(--transition);background:#6366f11a;color:#4f46e5;border:1px solid rgba(99,102,241,.35)}.task-evaluate-btn:hover{background:#6366f12e}.task-evaluate-btn.evaluated{background:#eab30824;color:#b45309;border-color:#eab30873}.dark .task-evaluate-btn{color:#a5b4fc}.dark .task-evaluate-btn.evaluated{color:#fbbf24}.task-move-edge{position:absolute;top:0;bottom:0;width:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;opacity:0;cursor:pointer;transition:all var(--transition)}.task-move-edge.left{left:0}.task-move-edge.right{right:0}.task-card:hover .task-move-edge,.task-card:hover .task-link-btn{opacity:1}.task-move-edge:hover{background:#6366f114;border-radius:6px}.dark .task-move-edge:hover{background:#ffffff14}.task-move-edge svg{width:16px;height:16px;color:#6b7280;opacity:0;transition:opacity var(--transition)}.task-card:hover .task-move-edge svg{opacity:1}.task-move-edge:disabled{opacity:0!important;cursor:not-allowed}.task-link-btn{position:absolute;top:4px;right:4px;opacity:0;transition:opacity var(--transition);background:#ffffffd9;border:1px solid #e2e8f0;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer}.dark .task-link-btn{background:#0f172acc;border-color:#94a3b826}.task-link-btn:hover{background:#e0e7ff}.dark .task-link-btn:hover{background:#6366f133}.task-link-btn svg{width:14px;height:14px;color:#6b7280}@media(max-width:768px){#personnel-panel-view{padding:.5rem!important}#personnel-task-board-container{display:flex!important;flex-direction:column!important;overflow-x:hidden!important;grid-auto-flow:unset!important;min-height:unset!important;padding:.75rem!important;gap:.75rem!important}#personnel-task-board-container .task-column{width:100%!important;min-width:unset!important}#personnel-task-board-container .task-list{max-height:none!important;overflow-y:visible!important}#task-board-container{display:flex!important;flex-direction:column!important;overflow-x:hidden!important;grid-auto-flow:unset!important;grid-auto-columns:unset!important;padding:.75rem!important;gap:.75rem!important;min-height:unset!important}#task-board-container .task-column{width:100%!important;min-width:unset!important}#task-board-container .task-list{max-height:none!important;overflow-y:visible!important}.dashboard-card{padding:1rem!important}}#task-board-container::-webkit-scrollbar,#personnel-task-board-container::-webkit-scrollbar,.task-list::-webkit-scrollbar{height:6px;width:6px}#task-board-container::-webkit-scrollbar-track,#personnel-task-board-container::-webkit-scrollbar-track,.task-list::-webkit-scrollbar-track{background:transparent}#task-board-container::-webkit-scrollbar-thumb,#personnel-task-board-container::-webkit-scrollbar-thumb,.task-list::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:99px}.task-board-view-btn.active{background:var(--bg-card);color:var(--clr-primary-dark);box-shadow:var(--shadow-sm)}.dark .task-board-view-btn.active{color:var(--clr-primary-light)}#task-calendar-container .tc-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}#task-calendar-container .tc-day-header{text-align:center;font-weight:700;font-size:.75rem;color:var(--text-secondary);padding-bottom:4px}#task-calendar-container .tc-cell{min-height:110px;border-radius:var(--radius-md);border:1px solid var(--border-color);padding:6px;background:var(--bg-card);display:flex;flex-direction:column;gap:3px;overflow:hidden;transition:box-shadow var(--transition)}#task-calendar-container .tc-cell.empty{background:transparent;border-color:transparent}#task-calendar-container .tc-cell.today{border-color:var(--clr-primary);border-width:2px}#task-calendar-container .tc-date-num{font-size:.75rem;font-weight:700;color:var(--text-secondary);margin-bottom:2px}#task-calendar-container .tc-task-chip{font-size:.7rem;padding:2px 6px;border-radius:6px;color:#fff;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:transform .12s ease}#task-calendar-container .tc-task-chip:hover{transform:scale(1.04)}#task-calendar-container .tc-more{font-size:.65rem;color:var(--text-secondary);cursor:pointer;padding:0 2px}#task-calendar-container .tc-more:hover{color:var(--clr-primary)}#task-editor-modal .modal{direction:rtl;text-align:right}.attachment-thumbnail{position:relative;border-radius:var(--radius-sm);overflow:hidden}.attachment-thumbnail img{width:100%;height:100%;object-fit:cover}.attachment-delete-btn{flex-shrink:0;background:#ef4444;color:#fff;border:none;border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:700;cursor:pointer;opacity:1;position:static}.attachment-delete-btn svg{width:12px;height:12px}.attachment-upload-progress{position:absolute;bottom:0;left:0;right:0;background:#0009;color:#fff;text-align:center;font-size:.7rem;padding:2px 0}.request-card-container{position:relative}.delete-request-btn{position:absolute;top:8px;left:8px;padding:4px;border-radius:99px;color:#9ca3af;transition:all var(--transition)}.delete-request-btn:hover{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#ef4444;transform:scale(1.1)}.dark .delete-request-btn:hover,.dark .delete-notification-btn:hover{background:#7f1d1d66;color:#fca5a5}#notification-drawer{background:var(--bg-card);border-left:1px solid var(--border-color)}.notif-item{background:transparent;transition:background .15s}.notif-item:hover{background:#6366f10d}.notif-item:hover .delete-notification-btn{opacity:1!important}.notif-unread{background:#6366f112}.dark .notif-unread{background:#6366f11f}.notif-dot{position:absolute;top:50%;right:.25rem;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:var(--clr-primary);flex-shrink:0}.notif-msg{color:var(--text-main)}.notif-time{color:var(--text-muted)}.delete-notification-btn{color:var(--text-muted);transition:opacity .15s,background .15s,color .15s;border-radius:50%;padding:4px}.delete-notification-btn:hover{background:#ef44441a;color:#ef4444}.message-to-admin-btn svg{transition:fill var(--transition)}.message-to-admin-btn:hover svg{fill:var(--clr-primary)}.swim-lane-group{margin-bottom:12px}.swim-lane-label{font-size:.6875rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;padding:4px 8px;background:#0000000a;border-radius:6px;margin-bottom:6px;letter-spacing:.05em}.dark .swim-lane-label{background:#ffffff0f}#task-checklist-container li{padding:4px 0}#task-checklist-container .checklist-toggle{cursor:pointer;accent-color:var(--clr-primary)}.task-type-option-btn{transition:border-color .15s,background .15s,transform .1s}.task-type-option-btn:hover{transform:translateY(-1px)}.task-type-option-btn.selected-task-type{border-color:var(--clr-primary)!important;background:#6366f11a!important;color:var(--clr-primary);font-weight:700;box-shadow:0 0 0 3px #6366f126}.dark .task-type-option-btn.selected-task-type{background:#6366f133!important}.leave-card-body{display:none;max-height:0;overflow:hidden;transition:max-height .5s ease-in-out}.leave-card-body.is-open{display:grid;max-height:1000px}.leave-card-header.is-open svg{transform:rotate(180deg)}.leave-card-body .table-container{max-height:300px;overflow-y:auto}.month-container{break-inside:avoid}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.day-cell{display:flex;justify-content:center;align-items:center;aspect-ratio:1;border-radius:50%;font-size:.78rem;transition:background-color var(--transition),transform var(--transition)}.day-cell:not(.empty):not(.my-request).available{cursor:pointer;background-color:#e2e8f0}.dark .day-cell:not(.empty):not(.my-request).available{background-color:#1e293b}.day-cell:not(.empty):not(.my-request).available:hover{background-color:#6366f14d;transform:scale(1.15)}.day-cell.taken{background-color:#fca5a5;color:#b91c1c;font-weight:700;cursor:help}.dark .day-cell.taken{background-color:#7f1d1d;color:#fecaca}.day-cell.my-request{background-color:#a7f3d0;color:#065f46;font-weight:700}.dark .day-cell.my-request{background-color:#166534;color:#d1fae5}.day-cell.selected{background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent))!important;color:#fff!important;transform:scale(1.15);box-shadow:0 0 10px #6366f166}#admin-notification-indicator{position:absolute;top:-2px;right:-2px;width:1rem;height:1rem;font-size:.62rem;line-height:1rem;border-radius:9999px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;text-align:center;border:2px solid white;box-shadow:0 0 8px #ef444466;animation:pulse-dot 2s infinite}.dark #admin-notification-indicator{border-color:#0b0f1a}@keyframes pulse-dot{0%,to{box-shadow:0 0 #ef444480}50%{box-shadow:0 0 0 4px #ef444400}}.custom-time-input{-webkit-appearance:none;appearance:none}#time-picker-panel{border-radius:1rem!important;border:1px solid var(--border-color)!important;box-shadow:var(--shadow-lg)!important;backdrop-filter:blur(16px)}#time-picker-panel .time-picker-btn{padding:.55rem .35rem;border-radius:.65rem;text-align:center;cursor:pointer;transition:all var(--transition);background-color:#f8fafc;font-weight:700;font-size:.9rem;border:1px solid transparent}.dark #time-picker-panel .time-picker-btn{background-color:#1e293b99;color:#e2e8f0}#time-picker-panel .time-picker-btn:hover{background:#6366f11f;color:var(--clr-primary);border-color:#6366f159;transform:scale(1.06)}#time-picker-panel .time-picker-btn.selected{background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent));color:#fff;border-color:transparent;box-shadow:0 4px 10px #6366f166;transform:scale(1.04)}#time-picker-hours::-webkit-scrollbar,#time-picker-minutes::-webkit-scrollbar{width:5px}#time-picker-hours::-webkit-scrollbar-thumb,#time-picker-minutes::-webkit-scrollbar-thumb{background:#94a3b880;border-radius:10px}#attendance-filter-container{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:1rem;margin-bottom:1rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.dark #attendance-filter-container{background:linear-gradient(135deg,#0f172ab3,#1e293b80);border-color:var(--border-color)}#app{width:100%;max-width:100%;box-sizing:border-box}#dashboard-view>header,#personnel-panel-view>header{width:100%;border-radius:var(--radius-lg)!important}header h1{font-size:clamp(1.1rem,2.5vw,1.75rem);white-space:nowrap}#weekly-view,.table-container{width:100%}#admin-panel>div{width:100%}#settings-tab .max-w-2xl{max-width:100%!important}@media(max-width:640px){#app{padding:.5rem!important}header{padding:.75rem 1rem!important;border-radius:var(--radius-md)!important;flex-wrap:wrap;gap:.5rem}header h1{font-size:1.1rem}header img{width:3rem!important;height:3rem!important}header .flex.items-center.gap-4{gap:.4rem;flex-wrap:wrap}header button{font-size:.8rem;padding:.4rem .7rem!important}.dashboard-card{padding:1rem!important;border-radius:var(--radius-md)!important}.tabbar{-webkit-overflow-scrolling:touch}.admin-tab{font-size:.78rem;padding:.5rem .75rem!important}.tab-btn{font-size:.75rem;padding:.45rem .7rem}:root{--schedule-cell-min-width: calc(6.25rem * var(--schedule-scale))}.schedule-cell-view{height:44px;border-radius:8px}.shift-name{font-size:.72rem}.shift-time{font-size:.62rem}#schedule-head th{padding:.5rem .4rem;font-size:.65rem}#schedule-body td{height:52px}#schedule-view .flex.justify-between{flex-wrap:wrap;gap:.5rem}#attendance-filter-container{flex-direction:column;align-items:stretch}.grid.grid-cols-1.lg\:grid-cols-3{grid-template-columns:1fr!important}.modal{width:calc(100vw - 1.5rem)!important;max-width:calc(100vw - 1.5rem)!important;padding:1.25rem!important;border-radius:var(--radius-md)!important}}@media(min-width:641px)and (max-width:1023px){:root{--schedule-cell-min-width: calc(8.125rem * var(--schedule-scale))}.admin-tab{font-size:.85rem;padding:.6rem 1rem!important}.tab-btn{font-size:.8rem;padding:.55rem .9rem}}@media(min-width:1536px){#app{padding-left:2.5rem!important;padding-right:2.5rem!important}.dashboard-card{padding:2rem}}@media(min-width:1920px){#app{padding-left:4rem!important;padding-right:4rem!important}}.rounded-full.bg-red-500,.rounded-full.bg-green-500,.rounded-full.bg-blue-500{box-shadow:none!important;transform:none!important}h2.text-2xl.font-bold,h3.text-xl.font-semibold{letter-spacing:-.01em}.border-t.border-gray-300,.dark .border-t.border-gray-700{border-color:var(--border-color)!important}.peer-checked\:bg-blue-600:checked~div{background-color:var(--clr-primary)}.bg-gray-50.dark\:bg-gray-800\/50,.bg-gray-50{background:linear-gradient(135deg,#fafbff,#f8fafc)!important;border-radius:var(--radius-md)!important;border:1px solid var(--border-color)!important}.dark .bg-gray-50,.dark .dark\:bg-gray-800\/50{background:linear-gradient(135deg,#0f172a80,#1e293b4d)!important;border-color:var(--border-color)!important}#personnel-list li,#positions-list li,#shifts-list li{border-radius:var(--radius-sm)!important;transition:all var(--transition)!important;border:1px solid var(--border-color)!important}#personnel-list li:hover,#positions-list li:hover,#shifts-list li:hover{border-color:var(--border-strong)!important;box-shadow:var(--shadow-sm)!important;transform:translate(-2px)}.bg-gray-100.rounded-full{background:#e0e7ff!important;color:#3730a3!important}.dark .bg-gray-100.rounded-full{background:#6366f133!important;color:#a5b4fc!important}#error-container{border-radius:var(--radius-md)!important;border:1px solid rgba(239,68,68,.3)!important;background:linear-gradient(135deg,#fef2f2,#fee2e2)!important}.dark #error-container{background:linear-gradient(135deg,#450a0ab3,#7f1d1d66)!important}.bg-yellow-50.dark\:bg-yellow-900\/30{background:linear-gradient(135deg,#fffbeb,#fef3c7)!important;border:1px solid rgba(245,158,11,.25)!important;border-radius:var(--radius-sm)!important}.dark .dark\:bg-yellow-900\/30{background:linear-gradient(135deg,#42200680,#78350f4d)!important}.mention-tag{display:inline-block;background:#6366f11f;color:#6366f1;border-radius:4px;padding:0 4px;font-weight:600;font-size:.85em}.dark .mention-tag{background:#8b5cf633;color:#a78bfa}.task-share-btn{position:absolute;top:.4rem;left:2rem;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;background:#6366f11a;border:none;border-radius:4px;color:#6366f1;cursor:pointer;opacity:0;transition:opacity .2s,background .2s;z-index:2}.task-card:hover .task-share-btn{opacity:1}.task-share-btn:hover{background:#6366f133}.task-share-btn svg{width:.85rem;height:.85rem}.ms-picker{border:1px solid var(--border-color, #d1d5db);border-radius:.5rem;background:#fff;overflow:hidden}.dark .ms-picker{background:#374151;border-color:#4b5563}.ms-picker.ms-disabled{opacity:.7}.ms-chips{display:flex;flex-wrap:wrap;gap:.3rem;padding:.4rem;border-bottom:1px solid var(--border-color, #e5e7eb);min-height:2.1rem;align-items:center}.dark .ms-chips{border-color:#4b556399}.ms-chip{display:inline-flex;align-items:center;gap:.25rem;background:#e0e7ff;color:#4338ca;font-size:.72rem;font-weight:600;padding:.15rem .5rem;border-radius:999px}.dark .ms-chip{background:#4338ca59;color:#c7d2fe}.ms-chip-x{border:none;background:transparent;color:inherit;cursor:pointer;font-size:.95rem;line-height:1;padding:0;opacity:.7}.ms-chip-x:hover{opacity:1}.ms-empty{font-size:.75rem;color:#9ca3af}.ms-search{width:100%;border:none;outline:none;padding:.5rem;font-size:.8rem;background:transparent;color:inherit;border-bottom:1px solid var(--border-color, #e5e7eb)}.dark .ms-search{border-color:#4b556399}.ms-list{max-height:9.5rem;overflow-y:auto}.ms-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .55rem;font-size:.8rem;cursor:pointer;transition:background .12s}.ms-item:hover{background:#6366f114}.ms-item.ms-selected{background:#6366f11f}.ms-item input{width:1rem;height:1rem;accent-color:#6366f1;cursor:pointer}.ms-noresult{padding:.6rem;font-size:.75rem;color:#9ca3af;text-align:center}@media(max-width:640px){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}}.comment.comment-highlight{animation:commentFlash 1.6s ease-out;border-radius:.5rem}@keyframes commentFlash{0%,30%{background-color:#6366f138;box-shadow:0 0 0 3px #6366f140}to{background-color:transparent;box-shadow:none}}.contact-row-heartbeat{animation:contactHeartbeat 1s ease-in-out infinite;outline:2px solid var(--clr-danger);outline-offset:-2px}@keyframes contactHeartbeat{0%,to{background-color:var(--card-bg, transparent)}45%{background-color:color-mix(in srgb,var(--clr-danger) 25%,var(--card-bg, transparent))}}@media(prefers-reduced-motion:reduce){.contact-row-heartbeat{animation:none;background-color:color-mix(in srgb,var(--clr-danger) 25%,var(--card-bg, transparent))}}.comment{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:.6rem;padding:.6rem .75rem;box-shadow:0 1px 2px #0000000a}.dark .comment{background:#ffffff08;border-color:#ffffff14;box-shadow:none}.comment-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.35rem}.comment-author{font-weight:700;font-size:.8rem;color:#4338ca}.dark .comment-author{color:#a5b4fc}.comment-actions{display:flex;align-items:center;gap:.3rem;flex-shrink:0}.comment-time{font-size:.68rem;color:#9ca3af;white-space:nowrap}.comment-edited{margin-inline-start:.3rem;font-size:.62rem;color:#b0b4bb;font-style:italic}.comment-action-btn{background:transparent;border:none;cursor:pointer;font-size:.8rem;line-height:1;padding:.2rem;border-radius:.3rem;opacity:.6;transition:opacity .15s,background .15s}.comment-action-btn:hover{opacity:1;background:#6366f11f}.comment-action-btn.danger:hover{background:#ef444424}.comment-text{font-size:.82rem;line-height:1.65;color:#374151;word-break:break-word;white-space:pre-wrap}.dark .comment-text{color:#d1d5db}.comment-reactions{display:flex;align-items:center;gap:.3rem;margin-top:.4rem}.comment-reaction-btn{display:inline-flex;align-items:center;gap:.2rem;background:#0000000a;border:1px solid transparent;cursor:pointer;font-size:.72rem;line-height:1;padding:.2rem .45rem;border-radius:999px;color:#6b7280;transition:background .15s,border-color .15s,color .15s,transform .1s}.dark .comment-reaction-btn{background:#ffffff0f;color:#9ca3af}.comment-reaction-btn:hover{background:#6366f11f}.comment-reaction-btn:active{transform:scale(.92)}.comment-reaction-btn.active{background:#6366f126;border-color:#6366f166;color:#4338ca;font-weight:600}.dark .comment-reaction-btn.active{color:#a5b4fc}.comment-reaction-count{font-size:.68rem}.reply-jump{display:flex;flex-direction:column;align-items:stretch;gap:.1rem;width:100%;text-align:right;margin-bottom:.5rem;padding:.35rem .6rem;border-radius:.45rem;background:#6366f112;border-inline-start:3px solid #6366f1;cursor:pointer;transition:background .15s}.reply-jump:hover{background:#6366f126}.reply-jump-label{font-size:.68rem;color:#6366f1;font-weight:600}.dark .reply-jump-label{color:#a5b4fc}.reply-jump-author{font-weight:700}.reply-jump-snippet{font-size:.72rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.dark .reply-jump-snippet{color:#9ca3af}.edit-comment-form{margin-top:.5rem}.edit-comment-input{width:100%;padding:.4rem .5rem;font-size:.8rem;border-radius:.4rem;border:1px solid #d1d5db;background:#f9fafb;color:#111827}.dark .edit-comment-input{border-color:#4b5563;background:#374151;color:#e5e7eb}.edit-comment-form-actions{display:flex;gap:.4rem;margin-top:.4rem}.save-comment-btn,.cancel-edit-comment-btn{padding:.3rem .8rem;font-size:.72rem;border-radius:.35rem;color:#fff;border:none;cursor:pointer;transition:background .15s}.save-comment-btn{background:#4f46e5}.save-comment-btn:hover{background:#4338ca}.cancel-edit-comment-btn{background:#9ca3af}.cancel-edit-comment-btn:hover{background:#6b7280}.comment-children{margin-top:.55rem;padding-inline-start:.8rem;border-inline-start:2px solid rgba(99,102,241,.28);display:flex;flex-direction:column;gap:.55rem}.dark .comment-children{border-inline-start-color:#8b5cf652}.comment.comment-reply{padding:.5rem .65rem;background:#fbfbfe}.dark .comment.comment-reply{background:#ffffff05}.comment.comment-reply .comment-author{font-size:.75rem}.comment.comment-reply .comment-text{font-size:.78rem;line-height:1.6}.reply-orphan{display:flex;flex-direction:column;gap:.1rem;margin-bottom:.45rem;padding:.3rem .55rem;border-radius:.4rem;background:#6b728014;border-inline-start:3px solid #9ca3af}.reply-orphan-note{font-size:.62rem;color:#9ca3af;font-style:italic}.activity-log-wrap{margin-top:.25rem}.activity-log-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.5rem;padding:.55rem .7rem;border-radius:.55rem;border:1px solid rgba(0,0,0,.08);background:#fff;cursor:pointer;transition:background .15s,border-color .15s}.activity-log-toggle:hover{background:#f9fafb;border-color:#6366f159}.dark .activity-log-toggle{background:#ffffff0a;border-color:#ffffff17}.dark .activity-log-toggle:hover{background:#ffffff12}.activity-log-toggle-title{display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;color:#4b5563}.dark .activity-log-toggle-title{color:#d1d5db}.activity-log-count{min-width:1.1rem;height:1.1rem;padding:0 .3rem;display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:700;color:#4f46e5;background:#6366f11f;border-radius:999px}.dark .activity-log-count{color:#a5b4fc;background:#8b5cf633}.activity-log-chevron{color:#9ca3af;transition:transform .2s ease;flex-shrink:0}.activity-log-toggle.open .activity-log-chevron{transform:rotate(180deg)}.activity-log-body{margin-top:.5rem;max-height:15rem;overflow-y:auto;padding-inline-end:.2rem;display:flex;flex-direction:column;gap:.1rem}.activity-log-item{display:flex;gap:.55rem;align-items:flex-start;padding:.5rem .15rem;border-bottom:1px dashed rgba(0,0,0,.07)}.dark .activity-log-item{border-bottom-color:#ffffff14}.activity-log-item:last-child{border-bottom:none}.activity-log-icon{flex-shrink:0;width:1.6rem;height:1.6rem;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;border-radius:999px;background:#6366f11a}.dark .activity-log-icon{background:#8b5cf629}.activity-log-item[data-kind=create] .activity-log-icon{background:#10b98124}.activity-log-item[data-kind=edit] .activity-log-icon{background:#f59e0b29}.activity-log-item[data-kind=archive] .activity-log-icon{background:#6b728029}.activity-log-content{min-width:0;flex:1}.activity-log-text{font-size:.75rem;line-height:1.6;color:#374151;word-break:break-word}.dark .activity-log-text{color:#d1d5db}.activity-log-time{display:block;margin-top:.15rem;font-size:.65rem;color:#9ca3af}.activity-chip{display:inline-block;padding:0 .35rem;margin:0 .1rem;font-size:.9em;font-weight:600;border-radius:.3rem;background:#6366f11f;color:#4f46e5}.dark .activity-chip{background:#8b5cf633;color:#a5b4fc}.sa-toast-container{position:fixed;bottom:1.5rem;inset-inline-start:1.5rem;z-index:9999;display:flex;flex-direction:column;gap:.6rem;pointer-events:none;max-width:calc(100vw - 3rem)}.sa-toast{pointer-events:auto;cursor:pointer;display:flex;align-items:flex-start;gap:.7rem;min-width:240px;max-width:360px;background:var(--bg-card);border:1px solid var(--border-color);border-inline-start:4px solid var(--clr-success);box-shadow:var(--shadow-lg);border-radius:var(--radius-md);padding:.7rem .9rem;transform:translateY(16px);opacity:0;transition:opacity .3s ease,transform .3s cubic-bezier(.4,0,.2,1)}.sa-toast.show{transform:translateY(0);opacity:1}.sa-toast__icon{flex-shrink:0;width:1.9rem;height:1.9rem;display:flex;align-items:center;justify-content:center;font-size:1rem;border-radius:999px;background:#10b98124}.sa-toast__body{min-width:0;flex:1}.sa-toast__title{font-weight:700;font-size:.875rem;color:var(--text-primary);line-height:1.3}.sa-toast__text{font-size:.75rem;color:var(--text-secondary);margin-top:.15rem;word-break:break-word}th.schedule-head-today{background:linear-gradient(180deg,#6366f12e,#6366f10f)!important;box-shadow:inset 0 -3px 0 var(--clr-primary)}.dark th.schedule-head-today{background:linear-gradient(180deg,#818cf84d,#818cf81a)!important}.schedule-today-badge{display:inline-block;margin-top:.25rem;padding:.05rem .5rem;font-size:.62rem;font-weight:700;color:#fff;background:var(--clr-primary);border-radius:999px;letter-spacing:.02em}td.schedule-cell-today{background:#6366f10e}.dark td.schedule-cell-today{background:#818cf817}.status-indicator--pulse{position:relative}.status-indicator--pulse:after{content:"";position:absolute;inset:0;border-radius:50%;background-color:inherit;z-index:-1;animation:sa-ping 1.7s cubic-bezier(0,0,.2,1) infinite}@keyframes sa-ping{0%{transform:scale(1);opacity:.55}75%,to{transform:scale(2.6);opacity:0}}.personnel-status-btn.has-progress{flex-direction:column;align-items:stretch;justify-content:center;gap:.4rem}.personnel-status-btn.has-progress .ps-top{display:flex;align-items:center;gap:.5rem}.shift-progress{height:5px;border-radius:999px;background:#0000001a;overflow:hidden}.dark .shift-progress{background:#ffffff24}.shift-progress-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--clr-primary-light),var(--clr-primary));transition:width 1s linear,background .4s ease}.shift-progress--ending .shift-progress-fill{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.shift-progress--done .shift-progress-fill{background:linear-gradient(90deg,#34d399,#10b981)}.task-type-chip{position:relative;cursor:pointer}.task-type-chip .tt-dot{font-size:.85em;opacity:.65}.task-type-tip{position:absolute;bottom:calc(100% + 8px);inset-inline-start:50%;transform:translate(50%) translateY(4px);z-index:60;min-width:220px;max-width:340px;max-height:260px;overflow-y:auto;-webkit-overflow-scrolling:touch;text-align:right;padding:.6rem .75rem;border-radius:var(--radius-md);color:var(--text-primary);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s;white-space:normal;font-weight:400;background-color:var(--bg-card);background-image:linear-gradient(var(--bg-card) 40%,rgba(0,0,0,0)),linear-gradient(rgba(0,0,0,0),var(--bg-card) 60%),linear-gradient(to bottom,#00000029,#0000),linear-gradient(to top,#00000029,#0000);background-repeat:no-repeat;background-position:0 0,0 100%,0 0,0 100%;background-size:100% 24px,100% 24px,100% 10px,100% 10px;background-attachment:local,local,scroll,scroll;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.task-type-tip::-webkit-scrollbar{width:6px}.task-type-tip::-webkit-scrollbar-track{background:transparent}.task-type-tip::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.task-type-chip:hover .task-type-tip,.task-type-chip.tt-open .task-type-tip,.task-type-chip:focus-visible .task-type-tip{opacity:1;visibility:visible;transform:translate(50%) translateY(0);pointer-events:auto}.task-type-tip .tt-title{display:block;font-size:.72rem;color:var(--text-secondary);margin-bottom:.4rem;padding-bottom:.3rem;border-bottom:1px solid var(--border-color)}.task-type-tip .tt-row{display:flex;flex-direction:column;gap:.1rem;padding:.3rem 0;border-bottom:1px dashed var(--border-color)}.task-type-tip .tt-row:last-child{border-bottom:0;padding-bottom:0}.task-type-tip .tt-meta{font-size:.68rem;color:var(--text-secondary);font-variant-numeric:tabular-nums}.task-type-tip .tt-desc{font-size:.78rem;line-height:1.7;word-break:break-word}@media(max-width:640px){.task-type-tip{min-width:180px;max-width:74vw}}@media(prefers-reduced-motion:reduce){.task-type-tip{transition:none}}.sa-pager{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem;margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.sa-pager-info{font-size:.75rem;color:var(--text-secondary);font-variant-numeric:tabular-nums}.sa-pager-nav{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.sa-pager-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;padding:0 .55rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);font-size:.8rem;font-variant-numeric:tabular-nums;line-height:1;cursor:pointer;transition:var(--transition)}button.sa-pager-btn:hover{border-color:var(--clr-primary);color:var(--clr-primary-dark)}.dark button.sa-pager-btn:hover{color:var(--clr-primary-light)}.sa-pager-btn--active{background:var(--clr-primary-dark);border-color:var(--clr-primary-dark);color:#fff;font-weight:700;cursor:default}.dark .sa-pager-btn--active{color:#fff}.sa-pager-btn--disabled{opacity:.45;cursor:not-allowed;color:var(--text-secondary)}.sa-pager-gap{padding:0 .15rem;color:var(--text-secondary);font-size:.8rem;user-select:none}@media(prefers-reduced-motion:reduce){.sa-pager-btn{transition:none}}@keyframes sa-modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes sa-modal-pop-in{0%{opacity:0;transform:translate(-50%,-47%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.modal-backdrop{animation:sa-modal-backdrop-in .18s ease-out}.modal{animation:sa-modal-pop-in .25s cubic-bezier(.16,1,.3,1)}button:not(:disabled):active,[type=button]:not(:disabled):active,[type=submit]:not(:disabled):active{filter:brightness(.92)}@media(prefers-reduced-motion:reduce){.modal-backdrop,.modal{animation:none}button:active,[type=button]:active,[type=submit]:active{filter:none}}.icon-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.75rem;height:1.75rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--clr-primary) 12%,transparent);color:var(--clr-primary)}.dark .icon-badge{color:var(--clr-primary-light)}.icon-badge svg{width:1rem;height:1rem}.icon-inline{display:inline-flex;width:1.1rem;height:1.1rem;flex-shrink:0;vertical-align:-.2em}.hidden{display:none!important}.team-question-row--invalid{border-color:#ef4444!important;background:#ef44440f}#personnel-list>li,#teams-list>li,#positions-list>li,#shifts-list>li{content-visibility:auto;contain-intrinsic-size:auto 110px}#message-requests-list>li,#emergency-requests-list>li,#leave-requests-list>li,#yearly-leave-requests-list>li,#shift-swap-requests-list>li,#personnel-requests-list>li,#attendance-log-container>*{content-visibility:auto;contain-intrinsic-size:auto 160px}.leave-card{content-visibility:auto;contain-intrinsic-size:auto 96px}.task-card{content-visibility:auto;contain-intrinsic-size:auto 120px}#schedule-view .schedule-toolbar{position:sticky;top:var(--staging-banner-h, 0px);z-index:20;background:var(--bg-card)}#schedule-view .schedule-toolbar:hover{transform:none;box-shadow:var(--shadow-md)}.staging-banner{position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:center;gap:.6rem;flex-wrap:wrap;padding:.5rem 1rem;background:repeating-linear-gradient(135deg,#b45309 0 14px,#92400e 14px 28px);color:#fff7ed;font-size:.8rem;font-weight:500;line-height:1.7;text-align:center;box-shadow:0 1px 6px #00000040}.staging-banner[hidden]{display:none}.staging-banner strong{font-weight:700}.staging-banner__dot{width:.5rem;height:.5rem;border-radius:9999px;background:#fde68a;flex:none;animation:staging-pulse 1.8s ease-in-out infinite}.staging-banner__root{font-size:.7rem;opacity:.85;direction:ltr;unicode-bidi:isolate;padding:.05rem .4rem;border-radius:.3rem;background:#00000038}@keyframes staging-pulse{0%,to{opacity:1}50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.staging-banner__dot{animation:none}}#personnel-panel-view{--bg-page: #faf8f4;--bg-card: #ffffff;--bg-card-hover: #f2eee5;--bg-input: #f2eee5;--border-color: #e6e0d3;--border-strong: #d8d0bd;--text-primary: #201c15;--text-secondary: #756c5c;--text-muted: #a89d89;--clr-primary: #b96a1f;--clr-primary-dark: #96551a;--clr-primary-light: #d68b42;--shadow-sm: 0 1px 2px rgba(32,28,21,.05);--shadow-md: 0 8px 20px -12px rgba(32,28,21,.16);--shadow-lg: 0 14px 28px -14px rgba(32,28,21,.2);--radius-lg: 16px;background:var(--bg-page)}.dark #personnel-panel-view{--bg-page: #15130f;--bg-card: #1d1a14;--bg-card-hover: #241f17;--bg-input: #241f17;--border-color: #372f22;--border-strong: #4a4023;--text-primary: #f3efe5;--text-secondary: #ab9f89;--text-muted: #766c58;--clr-primary: #e0954a;--clr-primary-dark: #c97d38;--clr-primary-light: #eab27a;--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 8px 20px -12px rgba(0,0,0,.5);--shadow-lg: 0 14px 28px -14px rgba(0,0,0,.6)}#dashboard-view .dash-header,#personnel-panel-view .dash-header,#schedule-view .dash-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:10px 4px 26px}#dashboard-view .dash-brand,#personnel-panel-view .dash-brand,#schedule-view .dash-brand{display:flex;align-items:center;gap:12px;min-width:0}#dashboard-view .dash-brand-logo,#personnel-panel-view .dash-brand-logo,#schedule-view .dash-brand-logo{width:38px;height:38px;border-radius:10px;object-fit:cover;box-shadow:var(--shadow-sm);flex-shrink:0}#dashboard-view .dash-avatar,#personnel-panel-view .dash-avatar,#schedule-view .dash-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--clr-primary);flex-shrink:0}#dashboard-view .dash-avatar svg,#personnel-panel-view .dash-avatar svg,#schedule-view .dash-avatar svg{width:19px;height:19px}#dashboard-view .dash-brand-title,#personnel-panel-view .dash-brand-title,#schedule-view .dash-brand-title{font-size:1.0625rem;font-weight:700;margin:0;color:var(--text-primary);text-shadow:none;letter-spacing:-.01em}#dashboard-view .dash-brand-sub,#personnel-panel-view .dash-brand-sub,#schedule-view .dash-brand-sub{margin:2px 0 0;font-size:.78125rem;color:var(--text-secondary)}#dashboard-view .dash-header-actions,#personnel-panel-view .dash-header-actions,#schedule-view .dash-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}#dashboard-view .dash-icon-btn,#personnel-panel-view .dash-icon-btn,#schedule-view .dash-icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);transition:color var(--transition),border-color var(--transition),background var(--transition)}#dashboard-view .dash-icon-btn:hover,#personnel-panel-view .dash-icon-btn:hover,#schedule-view .dash-icon-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:var(--bg-card-hover)}#dashboard-view .dash-ping,#personnel-panel-view .dash-ping,#schedule-view .dash-ping{position:absolute;top:-4px;left:-4px;min-width:18px;height:18px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:18px;text-align:center;border-radius:999px;background:var(--clr-danger);color:#fff;border:2px solid var(--bg-card)}#dashboard-view .dash-btn,#personnel-panel-view .dash-btn,#schedule-view .dash-btn{display:inline-flex;align-items:center;gap:6px;border-radius:10px;padding:9px 18px;font-size:.84375rem;font-weight:700;border:1px solid transparent;transition:transform .12s ease,box-shadow var(--transition),background var(--transition),border-color var(--transition);white-space:nowrap}#dashboard-view .dash-btn-primary,#personnel-panel-view .dash-btn-primary,#schedule-view .dash-btn-primary{background:var(--clr-primary);color:#fff}#dashboard-view .dash-btn-primary:hover,#personnel-panel-view .dash-btn-primary:hover,#schedule-view .dash-btn-primary:hover{background:var(--clr-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}#dashboard-view .dash-btn-ghost,#personnel-panel-view .dash-btn-ghost,#schedule-view .dash-btn-ghost{background:var(--bg-card);border-color:var(--border-color);color:var(--text-primary)}#dashboard-view .dash-btn-ghost:hover,#personnel-panel-view .dash-btn-ghost:hover,#schedule-view .dash-btn-ghost:hover{border-color:var(--border-strong);background:var(--bg-card-hover)}#dashboard-view .dash-btn-danger,#personnel-panel-view .dash-btn-danger,#schedule-view .dash-btn-danger{background:var(--clr-danger);color:#fff}#dashboard-view .dash-btn-danger:hover,#personnel-panel-view .dash-btn-danger:hover,#schedule-view .dash-btn-danger:hover{filter:brightness(.92)}#dashboard-view .dash-section-label,#personnel-panel-view .dash-section-label,#schedule-view .dash-section-label,#admin-panel-modal .dash-section-label{margin:0 4px;font-size:.75rem;font-weight:700;color:var(--clr-primary);letter-spacing:.01em}#dashboard-view .dash-section-label+div,#personnel-panel-view .dash-section-label+div,#schedule-view .dash-section-label+div,#admin-panel-modal .dash-section-label+div{margin-top:8px!important}#dashboard-view .personnel-status-btn,#dashboard-view .status-header,#dashboard-view .personnel-status-off,#admin-panel-modal .personnel-status-btn,#admin-panel-modal .status-header,#admin-panel-modal .personnel-status-off{box-shadow:none;border:1px solid var(--border-color)}#dashboard-view .personnel-status-btn:hover,#admin-panel-modal .personnel-status-btn:hover{box-shadow:var(--shadow-sm)}#dashboard-view #view-schedule-btn{box-shadow:var(--shadow-sm)!important}#dashboard-view #view-schedule-btn:hover{box-shadow:var(--shadow-md)!important}#dashboard-view,#schedule-view,#admin-panel-modal{--t-hero-size: 36px;--t-hero-lh: 48px;--t-headline-lg: 24px;--t-headline-lg-lh: 34px;--t-headline-md: 20px;--t-headline-md-lh: 28px;--t-headline-sm: 18px;--t-headline-sm-lh: 26px;--t-caption: 12px;--t-caption-lh: 18px;--dash-gutter: 20px;--dash-margin: 32px;--dash-radius: 20px;--dash-radius-hero: 28px;--dash-radius-ctrl: 8px}@media(max-width:640px){#dashboard-view,#schedule-view{--t-hero-size: 26px;--t-hero-lh: 36px;--dash-margin: 16px}}.dark #dashboard-view .dash-widget,.dark #schedule-view .dash-widget,.dark #dashboard-view .dash-stat,.dark #schedule-view .dash-stat,.dark #dashboard-view .dash-hero,.dark #schedule-view .dash-hero{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}#dashboard-view .dash-hero,#schedule-view .dash-hero{position:relative;overflow:hidden;border-radius:var(--dash-radius-hero);border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-md);padding:26px var(--dash-margin);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}#dashboard-view .dash-hero:before,#schedule-view .dash-hero:before{content:"";position:absolute;inset:auto -60px -120px auto;width:320px;height:320px;border-radius:50%;background:linear-gradient(135deg,var(--clr-primary),var(--clr-primary-dark));opacity:.13;filter:blur(40px);pointer-events:none}#dashboard-view .dash-hero>*,#schedule-view .dash-hero>*{position:relative}#dashboard-view .dash-hero-title,#schedule-view .dash-hero-title{margin:0;font-size:var(--t-hero-size);line-height:var(--t-hero-lh);font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}#dashboard-view .dash-hero-sub,#schedule-view .dash-hero-sub{margin:4px 0 0;font-size:1rem;line-height:1.625rem;color:var(--text-secondary)}#dashboard-view .dash-hero-clock,#schedule-view .dash-hero-clock{font-size:var(--t-headline-lg);line-height:var(--t-headline-lg-lh);font-weight:700;letter-spacing:-.01em;color:var(--clr-primary);font-variant-numeric:tabular-nums}#dashboard-view .dash-hero-clock-label,#schedule-view .dash-hero-clock-label{margin:0;font-size:var(--t-caption);line-height:var(--t-caption-lh);letter-spacing:.02em;font-weight:500;color:var(--text-muted)}#dashboard-view .dash-bento,#schedule-view .dash-bento,#admin-panel-modal .dash-bento{display:grid;gap:var(--dash-gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start}#dashboard-view .dash-span-3,#schedule-view .dash-span-3,#admin-panel-modal .dash-span-3{grid-column:span 3}#dashboard-view .dash-span-4,#schedule-view .dash-span-4,#admin-panel-modal .dash-span-4{grid-column:span 4}#dashboard-view .dash-span-6,#schedule-view .dash-span-6,#admin-panel-modal .dash-span-6{grid-column:span 6}#dashboard-view .dash-span-8,#schedule-view .dash-span-8,#admin-panel-modal .dash-span-8{grid-column:span 8}#dashboard-view .dash-span-12,#schedule-view .dash-span-12,#admin-panel-modal .dash-span-12{grid-column:span 12}@media(max-width:1023px){#dashboard-view .dash-bento,#schedule-view .dash-bento,#admin-panel-modal .dash-bento{grid-template-columns:repeat(2,minmax(0,1fr))}#dashboard-view .dash-span-3,#schedule-view .dash-span-3,#admin-panel-modal .dash-span-3,#dashboard-view .dash-span-4,#schedule-view .dash-span-4,#admin-panel-modal .dash-span-4,#dashboard-view .dash-span-6,#schedule-view .dash-span-6,#admin-panel-modal .dash-span-6,#dashboard-view .dash-span-8,#schedule-view .dash-span-8,#admin-panel-modal .dash-span-8,#dashboard-view .dash-span-12,#schedule-view .dash-span-12,#admin-panel-modal .dash-span-12{grid-column:span 2}#dashboard-view .dash-bento--stats>.dash-span-3,#schedule-view .dash-bento--stats>.dash-span-3,#admin-panel-modal .dash-bento--stats>.dash-span-3{grid-column:span 1}}@media(max-width:640px){#dashboard-view .dash-bento,#schedule-view .dash-bento,#admin-panel-modal .dash-bento{grid-template-columns:minmax(0,1fr)}#dashboard-view .dash-bento>*,#schedule-view .dash-bento>*,#admin-panel-modal .dash-bento>*{grid-column:span 1!important}#dashboard-view .dash-bento--stats,#schedule-view .dash-bento--stats,#admin-panel-modal .dash-bento--stats{grid-template-columns:repeat(2,minmax(0,1fr))}#dashboard-view .dash-stat,#schedule-view .dash-stat,#admin-panel-modal .dash-stat{padding:14px}#dashboard-view .dash-stat-value,#schedule-view .dash-stat-value,#admin-panel-modal .dash-stat-value{font-size:1.75rem;line-height:2.25rem}}#dashboard-view .dash-widget,#schedule-view .dash-widget{border-radius:var(--dash-radius);border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}#dashboard-view .dash-widget:hover,#schedule-view .dash-widget:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-strong)}#dashboard-view .dash-widget>#daily-status-container,#schedule-view .dash-widget>#daily-status-container{border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important}#schedule-view .dash-widget>#weekly-view.table-container{border:0!important;box-shadow:none!important;border-radius:0!important}#dashboard-view .dash-widget-title,#schedule-view .dash-widget-title{font-size:var(--t-headline-md);line-height:var(--t-headline-md-lh);font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}#dashboard-view .dash-stat,#schedule-view .dash-stat,#admin-panel-modal .dash-stat{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:var(--dash-radius);border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}#dashboard-view .dash-stat:hover,#schedule-view .dash-stat:hover,#admin-panel-modal .dash-stat:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-strong)}#dashboard-view .dash-stat:after,#schedule-view .dash-stat:after,#admin-panel-modal .dash-stat:after{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:var(--stat-accent, var(--clr-primary))}#dashboard-view .dash-stat-head,#schedule-view .dash-stat-head,#admin-panel-modal .dash-stat-head{display:flex;align-items:center;gap:8px}#dashboard-view .dash-stat-icon,#schedule-view .dash-stat-icon,#admin-panel-modal .dash-stat-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--dash-radius-ctrl);color:var(--stat-accent, var(--clr-primary));background:color-mix(in srgb,var(--stat-accent, var(--clr-primary)) 14%,transparent);flex-shrink:0}#dashboard-view .dash-stat-icon svg,#schedule-view .dash-stat-icon svg,#admin-panel-modal .dash-stat-icon svg{width:17px;height:17px}#dashboard-view .dash-stat-label,#schedule-view .dash-stat-label,#admin-panel-modal .dash-stat-label{font-size:var(--t-caption);line-height:var(--t-caption-lh);letter-spacing:.02em;font-weight:500;color:var(--text-secondary)}#dashboard-view .dash-stat-value,#schedule-view .dash-stat-value,#admin-panel-modal .dash-stat-value{font-size:var(--t-hero-size);line-height:var(--t-hero-lh);font-weight:700;letter-spacing:-.02em;color:var(--text-primary);font-variant-numeric:tabular-nums}#dashboard-view .dash-stat-hint,#schedule-view .dash-stat-hint,#admin-panel-modal .dash-stat-hint{font-size:var(--t-caption);line-height:var(--t-caption-lh);color:var(--text-muted)}#dashboard-view .dash-btn-primary,#schedule-view .dash-btn-primary{background:linear-gradient(135deg,var(--clr-primary),var(--clr-primary-dark));border-radius:var(--dash-radius-ctrl)}#dashboard-view .dash-btn-primary:hover,#schedule-view .dash-btn-primary:hover{background:linear-gradient(135deg,var(--clr-primary-light),var(--clr-primary));box-shadow:var(--shadow-glow)}#dashboard-view .dash-btn-ghost,#schedule-view .dash-btn-ghost,#dashboard-view .dash-btn-danger,#schedule-view .dash-btn-danger,#dashboard-view .dash-icon-btn,#schedule-view .dash-icon-btn{border-radius:var(--dash-radius-ctrl)}#schedule-view #prev-week,#schedule-view #next-week{background:color-mix(in srgb,var(--clr-primary) 12%,var(--bg-card));border-color:color-mix(in srgb,var(--clr-primary) 35%,var(--border-color));color:var(--clr-primary)}#schedule-view #prev-week:hover,#schedule-view #next-week:hover{background:var(--clr-primary);border-color:var(--clr-primary);color:#fff}#dashboard-view :is(button,a,input,select,textarea):focus-visible,#schedule-view :is(button,a,input,select,textarea):focus-visible,#admin-panel-modal :is(button,a,input,select,textarea):focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--clr-primary) 20%,transparent);border-radius:var(--dash-radius-ctrl)}@media(prefers-reduced-motion:reduce){#dashboard-view .dash-widget:hover,#schedule-view .dash-widget:hover,#dashboard-view .dash-stat:hover,#schedule-view .dash-stat:hover,#admin-panel-modal .dash-stat:hover{transform:none}}#admin-panel-modal,#contact-panel-modal,#ticket-panel-modal{top:var(--staging-banner-h, 0px)}.yearly-leaves-pane.freeze:not(.hidden){display:flex;flex-direction:column;max-height:var(--yearly-pane-h, calc(100vh - 260px) );min-height:320px}.yearly-leaves-pane.freeze .yearly-leaves-list{flex:1 1 0;overflow-y:auto;min-height:160px;padding-bottom:.5rem}.yearly-leaves-pane.freeze .yearly-calendar-dock{flex:0 1 auto;min-height:180px;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color);background:var(--bg-card);display:flex;flex-direction:column}.yearly-leaves-pane.freeze .yearly-calendar-dock>div[id]{max-height:30vh;min-height:0;flex:1 1 auto}@media(max-width:767px),(max-height:620px){.yearly-leaves-pane.freeze:not(.hidden){display:block;max-height:none}.yearly-leaves-pane.freeze .yearly-leaves-list{overflow-y:visible}.yearly-leaves-pane.freeze .yearly-calendar-dock>div[id]{max-height:46vh}}.dash-stat{min-height:162px}.dash-stat--skeleton{opacity:.45}.dash-stat--skeleton .dash-stat-value{color:var(--text-secondary)}
