.login-split-page{--ease:cubic-bezier(.16, 1, .3, 1);background-color:var(--color-bg-surface);width:100%;min-height:100vh;font-family:var(--font-family-sans);color:var(--color-text-primary);display:flex}.login-sidebar{background:linear-gradient(160deg, var(--brand-forest) 0%, #14352f 100%);color:#fff;flex-direction:column;flex:1.15;padding:3.5rem 4rem;display:flex;position:relative;overflow:hidden}.sidebar-pattern{z-index:0;pointer-events:none;background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000000e6 0%,#00000040 75%,#0000 100%);mask-image:linear-gradient(#000000e6 0%,#00000040 75%,#0000 100%)}.sidebar-glow{z-index:0;pointer-events:none;background:radial-gradient(circle,#00e08a52 0%,#00e08a00 70%);width:30rem;height:30rem;position:absolute;top:-7rem;right:-9rem}.sidebar-inner{z-index:10;flex-direction:column;justify-content:space-between;height:100%;display:flex;position:relative}.sidebar-header{align-items:center;display:flex}.sidebar-logo-img{background-image:url(/InnField_Logo_Mint.svg);background-position:0;background-repeat:no-repeat;background-size:contain;width:150px;height:34px}.sidebar-eyebrow{font-family:var(--font-family-heading);font-size:var(--font-size-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--brand-mint);margin-bottom:1.5rem;padding-top:1.25rem;font-weight:700;display:inline-block;position:relative}.sidebar-eyebrow:before{content:"";border-radius:var(--radius-pill);background:var(--brand-mint);width:36px;height:3px;position:absolute;top:0;left:0}.sidebar-content{max-width:30rem}.sidebar-content h1{font-family:var(--font-family-heading);color:#fff;letter-spacing:-.02em;margin-bottom:1.25rem;font-size:3.25rem;font-weight:700;line-height:1.12}.text-highlight{color:var(--brand-mint)}.sidebar-content p{color:#ffffffd1;max-width:27rem;font-size:1.0625rem;line-height:1.65}.login-sidebar .sidebar-inner>div:last-child p{font-size:var(--font-size-sm);letter-spacing:.04em;color:#ffffff8c}.login-main{background-color:var(--color-bg-surface);flex:1;justify-content:center;align-items:center;padding:2.5rem;display:flex}.login-form-card{width:100%;max-width:27.5rem;box-shadow:none;background:0 0;border:none;padding:0}.sidebar-logo-img.mobile-only{display:none}.login-header h2{font-family:var(--font-family-heading);color:var(--color-text-primary);letter-spacing:-.02em;margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.login-header p{color:var(--color-text-secondary);font-size:var(--font-size-base);margin-bottom:2.25rem}.back-btn{color:var(--color-text-secondary);font-family:var(--font-family-heading);font-size:var(--font-size-sm);cursor:pointer;transition:color .2s var(--ease);background:0 0;border:none;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:0;font-weight:600;display:flex}.back-btn:hover{color:var(--color-brand-secondary)}.login-form{flex-direction:column;gap:1.25rem;display:flex}.form-field{flex-direction:column;gap:.5rem;display:flex}.form-field label{font-family:var(--font-family-heading);font-size:var(--font-size-xs);color:var(--color-text-secondary);letter-spacing:.1em;text-transform:uppercase;font-weight:700}.input-wrapper{align-items:center;display:flex;position:relative}.field-icon{color:var(--color-text-muted);pointer-events:none;transition:color .2s var(--ease);position:absolute;left:1rem}.form-input{background-color:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--border-radius-md);width:100%;height:3.25rem;font-family:var(--font-family-sans);font-size:var(--font-size-base);color:var(--color-text-primary);transition:border-color .2s var(--ease), background-color .2s var(--ease), box-shadow .2s var(--ease);padding:0 1rem 0 3rem}.form-input.code-input{letter-spacing:.3em;text-align:center;padding-left:1rem;font-weight:700}.form-input::placeholder{color:var(--color-text-muted)}.form-input:hover{border-color:var(--color-border-strong)}.form-input:focus{border-color:var(--color-brand-secondary);background-color:var(--color-bg-surface);box-shadow:var(--shadow-glow);outline:none}.input-wrapper:focus-within .field-icon{color:var(--color-brand-secondary)}.password-toggle{border-radius:var(--border-radius-sm);color:var(--color-text-muted);cursor:pointer;transition:color .2s var(--ease), background-color .2s var(--ease);background:0 0;border:none;justify-content:center;align-items:center;padding:.3rem;display:flex;position:absolute;right:.9rem}.password-toggle:hover{color:var(--color-text-primary);background:var(--color-bg-muted)}.otp-input-container{justify-content:space-between;gap:.625rem;margin:1.25rem 0 .5rem;display:flex}.otp-box{text-align:center;width:3.25rem;height:3.75rem;font-family:var(--font-family-heading);border:1px solid var(--color-border);background-color:var(--color-bg-subtle);color:var(--color-text-primary);border-radius:var(--border-radius-md);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);font-size:1.375rem;font-weight:700}.otp-box:focus{border-color:var(--color-brand-secondary);background-color:var(--color-bg-surface);box-shadow:var(--shadow-glow);outline:none}.otp-box:disabled{opacity:.5;cursor:not-allowed}.form-secondary-actions{justify-content:flex-end;display:flex}.text-link{cursor:pointer;font-size:var(--font-size-sm);color:var(--color-brand-secondary);transition:color .2s var(--ease);background:0 0;border:none;padding:0;font-weight:600}.text-link:hover{color:var(--color-brand-primary-hover);text-underline-offset:4px;text-decoration:underline}.login-submit-btn{border-radius:var(--radius-button);background-color:var(--color-accent-success);width:100%;height:3.25rem;font-family:var(--font-family-heading);font-size:var(--font-size-base);color:var(--brand-forest);cursor:pointer;transition:background-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);border:none;justify-content:center;align-items:center;gap:.375rem;margin-top:.5rem;font-weight:600;display:flex}body.dark-theme .login-submit-btn{color:var(--color-bg-base)}.login-submit-btn:hover:not(:disabled){background-color:var(--brand-mint);color:var(--brand-forest);transform:translateY(-1px);box-shadow:0 8px 20px #119b7240}.login-submit-btn:active:not(:disabled){box-shadow:none;transform:translateY(0)}.login-submit-btn:disabled{opacity:.55;cursor:not-allowed}.global-error-banner{background-color:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border);border-left:3px solid var(--color-accent-danger);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);margin-bottom:1.5rem;padding:.875rem 1rem}.error-message{font-size:var(--font-size-sm);color:var(--color-accent-danger);display:block}.success-state{text-align:center;flex-direction:column;align-items:center;padding:1rem 0;display:flex}.success-icon{background-color:var(--color-success-bg);border-radius:var(--border-radius-lg);color:var(--color-success-text);justify-content:center;align-items:center;margin-bottom:1.5rem;padding:1.5rem;display:flex}.success-state h2{font-family:var(--font-family-heading);color:var(--color-text-primary);margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.success-state p{color:var(--color-text-secondary);margin-bottom:2rem}.login-footer-text{text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted);justify-content:center;align-items:center;gap:.4rem;margin-top:2rem;display:flex}.login-footer-text .text-link{font-weight:600}.delay-1{opacity:0;animation-delay:.1s}.delay-2{opacity:0;animation-delay:.2s}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.animate-fade-in,.animate-slide-up,.login-form-card{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}}.login-split-page a:focus-visible,.login-split-page button:focus-visible{outline:2px solid var(--color-brand-secondary);outline-offset:2px}@media (width<=1200px){.sidebar-content h1{font-size:2.75rem}}@media (width<=1024px){.login-split-page{flex-direction:column}.login-sidebar{flex:none;padding:2.5rem 2rem 3rem}.sidebar-content h1{font-size:2.25rem}.login-sidebar .sidebar-inner>div:last-child{display:none}.login-main{padding:2rem 1.5rem 3rem}.sidebar-logo-img.mobile-only{display:none}}@media (width<=480px){.login-sidebar{padding:2rem 1.25rem 2.5rem}.sidebar-content h1{font-size:1.875rem}.sidebar-content p{font-size:var(--font-size-base)}.login-main{padding:1.75rem 1.25rem 2.5rem}.otp-box{width:2.75rem;height:3.25rem}}.sidebar{z-index:50;background:var(--color-brand-primary);width:260px;height:100vh;box-shadow:none;transition:width var(--transition-normal) cubic-bezier(.4, 0, .2, 1);border-right:1px solid #0000;flex-direction:column;flex-shrink:0;margin:0;padding:0;display:flex;position:fixed;top:0;left:0;overflow:hidden}body.dark-theme .sidebar{background:var(--color-bg-surface);border-right-color:var(--color-border)}.sidebar.collapsed{width:80px}.sidebar .sidebar-header{border-bottom:1px solid var(--color-on-brand-border);height:72px;transition:padding var(--transition-normal);justify-content:space-between;align-items:center;gap:.75rem;padding:0 1.25rem;display:flex}.sidebar.collapsed .sidebar-header{justify-content:center;padding:0}.sidebar.collapsed .logo-section{display:none}.sidebar .logo-section{align-items:center;gap:.75rem;display:flex;overflow:hidden}.sidebar .sidebar-logo{width:125px;height:125px;transition:background-color var(--transition-normal);background-color:#fff;flex-shrink:0;-webkit-mask-image:url(/InnField_Logo_White.svg);mask-image:url(/InnField_Logo_White.svg);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.sidebar .sidebar-brand{font-family:var(--font-family-heading);color:var(--color-on-brand-text);letter-spacing:-.01em;white-space:nowrap;font-size:1.25rem;font-weight:700}.sidebar .collapse-toggle{color:var(--color-on-brand-text-muted);cursor:pointer;border-radius:var(--border-radius-sm);transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:flex}.sidebar .collapse-toggle:hover{color:var(--color-on-brand-text);background:#ffffff1a}.sidebar .sidebar-scrollable{scrollbar-width:thin;scrollbar-color:#ffffff2e transparent;flex:1;padding:1.25rem .75rem;overflow-y:auto}.sidebar .sidebar-scrollable::-webkit-scrollbar{width:4px}.sidebar .sidebar-scrollable::-webkit-scrollbar-track{background:0 0}.sidebar .sidebar-scrollable::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:#ffffff2e;border:none}.sidebar .sidebar-scrollable::-webkit-scrollbar-thumb:hover{background:#ffffff52}.sidebar .sidebar-section{margin-bottom:1.5rem}.sidebar .sidebar-section-title{font-family:var(--font-family-sans);font-size:var(--font-size-xs);text-transform:uppercase;color:var(--color-on-brand-text-muted);letter-spacing:.12em;white-space:nowrap;margin-bottom:.6rem;padding:0 1rem;font-weight:700}.sidebar .sidebar-section ul{flex-direction:column;gap:.125rem;list-style:none;display:flex}.sidebar .nav-link{border-radius:var(--border-radius-md);color:var(--color-on-brand-text-muted);font-weight:500;font-size:var(--font-size-sm);transition:background-color var(--transition-fast), color var(--transition-fast);justify-content:space-between;align-items:center;padding:.7rem 1rem;text-decoration:none;display:flex;position:relative}.sidebar .nav-link-content{align-items:center;gap:.875rem;width:100%;min-width:0;display:flex}.sidebar.collapsed .nav-link-content{justify-content:center;gap:0}.sidebar .nav-link-content span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar .chevron-icon{opacity:0;transition:opacity var(--transition-fast), transform var(--transition-fast);flex-shrink:0;transform:translate(-4px)}.sidebar .nav-link:hover{color:var(--color-on-brand-text);background:#ffffff14}.sidebar .nav-link:hover .chevron-icon{opacity:.5;transform:translate(0)}.sidebar .nav-link:active{transform:scale(.99)}.sidebar .nav-link.active{background:var(--color-bg-surface);color:var(--color-brand-primary);font-weight:600}.sidebar .nav-link.active .chevron-icon{opacity:.5;color:var(--color-brand-primary);transform:translate(0)}body.dark-theme .sidebar .nav-link.active{background:var(--color-bg-muted);color:var(--color-brand-accent)}body.dark-theme .sidebar .nav-link.active .chevron-icon{color:var(--color-brand-accent)}.sidebar-floating-tooltip{background:var(--color-brand-darker);color:#fff;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);white-space:nowrap;box-shadow:var(--shadow-lg);z-index:1000;pointer-events:none;padding:.5rem .875rem;font-weight:500;animation:.2s cubic-bezier(.16,1,.3,1) tooltip-fade-in;position:fixed;left:85px;transform:translateY(-50%)}.sidebar-floating-tooltip:before{content:"";border-style:solid;border-width:6px;border-color:transparent var(--color-brand-darker) transparent transparent;position:absolute;top:50%;right:100%;transform:translateY(-50%)}@keyframes tooltip-fade-in{0%{opacity:0;transform:translateY(-50%)translate(-8px)}to{opacity:1;transform:translateY(-50%)translate(0)}}.sidebar .sidebar-footer{border-top:1px solid var(--color-on-brand-border);background:0 0;flex-direction:column;gap:.125rem;padding:.75rem;display:flex}.sidebar .sidebar-footer .nav-link{color:var(--color-on-brand-text);font-weight:500}.sidebar .sidebar-footer .nav-link.active{background:var(--color-bg-surface);color:var(--color-brand-primary);font-weight:600}body.dark-theme .sidebar .sidebar-footer .nav-link.active{background:var(--color-bg-muted);color:var(--color-brand-accent)}.sidebar .sidebar-footer .nav-link:hover{background:#ffffff14}.sidebar .logout-btn:hover{background:rgba(var(--color-accent-danger-rgb), .18);color:#ffc9c4}body.dark-theme .sidebar .logout-btn:hover{background:var(--color-danger-bg);color:var(--color-danger-text)}@media (width<=1024px){.sidebar{z-index:100;position:fixed;width:260px!important;height:100%!important;transition:transform .4s cubic-bezier(.4,0,.2,1)!important;left:-260px!important;box-shadow:12px 0 32px #00000038!important}.sidebar.mobile-open{left:-260px!important;transform:translate(260px)!important}.sidebar.collapsed{width:260px!important}.sidebar.mobile-open .sidebar-section ul li{opacity:0;animation:.5s cubic-bezier(.16,1,.3,1) forwards sidebarLinkIn;transform:translate(-15px)}.sidebar.mobile-open .sidebar-section:first-of-type ul li:first-child{animation-delay:.1s}.sidebar.mobile-open .sidebar-section:first-of-type ul li:nth-child(2){animation-delay:.15s}.sidebar.mobile-open .sidebar-section:first-of-type ul li:nth-child(3){animation-delay:.2s}.sidebar.mobile-open .sidebar-section:first-of-type ul li:nth-child(4){animation-delay:.25s}.sidebar.mobile-open .sidebar-section:first-of-type ul li:nth-child(5){animation-delay:.3s}.sidebar.mobile-open .sidebar-section:nth-of-type(2) ul li:first-child{animation-delay:.35s}.sidebar.mobile-open .sidebar-section:nth-of-type(2) ul li:nth-child(2){animation-delay:.4s}.sidebar.mobile-open .sidebar-section:nth-of-type(2) ul li:nth-child(3){animation-delay:.45s}.sidebar.mobile-open .sidebar-footer .nav-link{opacity:0;animation:.5s cubic-bezier(.16,1,.3,1) .55s forwards sidebarFooterIn;transform:translateY(10px)}}@keyframes sidebarLinkIn{to{opacity:1;transform:translate(0)}}@keyframes sidebarFooterIn{to{opacity:1;transform:translateY(0)}}.topbar{box-sizing:border-box;border-bottom:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);height:72px;box-shadow:none;z-index:40;transition:left var(--transition-normal) cubic-bezier(.4, 0, .2, 1);border-radius:0;justify-content:space-between;align-items:center;margin:0;padding:0 1.5rem;display:flex;position:fixed;top:0;left:260px;right:0}.topbar-left{align-items:center;gap:1rem;display:flex}.mobile-menu-toggle{color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin-right:.5rem;padding:.5rem;display:none}@media (width<=1024px){.topbar{height:64px;padding:0 .75rem;left:0!important}.topbar-left{gap:.5rem!important}.mobile-menu-toggle{width:40px;height:40px;margin-right:0;display:flex}.search-trigger{background:var(--color-bg-base)!important;border-radius:50%!important;justify-content:center!important;width:40px!important;height:40px!important;padding:0!important}.search-trigger-left{gap:0!important}.search-trigger-left svg{width:20px;height:20px}.search-placeholder,.shortcut-key,.user-name,.user-role{display:none!important}.user-profile{gap:0!important;padding:0!important}.topbar-actions{gap:.5rem!important}.icon-btn{justify-content:center;align-items:center;width:40px;height:40px;display:flex}.badge{top:4px;right:4px}}.topbar.collapsed{left:80px}.search-trigger{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);cursor:pointer;width:300px;transition:all var(--transition-fast);color:var(--color-text-secondary);border-radius:4px;outline:none;justify-content:space-between;align-items:center;padding:.5rem 1rem;font-family:inherit;font-size:.875rem;display:flex}.search-trigger:hover{background:var(--color-bg-surface);border-color:var(--color-brand-primary)}.search-trigger:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px}.search-trigger-left{align-items:center;gap:.75rem;display:flex}.shortcut-key{background:var(--color-bg-elevated);border:1px solid #0000000d;border-radius:4px;padding:.125rem .375rem;font-size:.75rem;font-weight:600}.topbar-actions{align-items:center;gap:1.5rem;display:flex}.icon-btn{color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;padding:.5rem;position:relative}.icon-btn:hover{color:var(--color-text-primary)}.search-modal .icon-btn{border-radius:var(--radius-button);justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.delete-staged-btn{transition:all var(--transition-fast)}.delete-staged-btn:hover{background:#dc35451a!important}.badge{background:var(--color-accent-danger);color:#fff;border:2px solid var(--color-bg-surface);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:2px;right:0;border-radius:50%!important;padding:8px!important}.search-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#0006;justify-content:center;padding-top:10vh;display:flex;position:fixed;inset:0}.search-modal{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:0;outline:none;flex-direction:column;width:90%;max-width:650px;height:fit-content;max-height:80vh;animation:.3s cubic-bezier(.16,1,.3,1) forwards pop-in;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000059}.search-dialog{outline:none;flex-direction:column;display:flex}.search-dialog-header{border-bottom:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;display:flex}.search-icon-large{color:var(--color-brand-primary);opacity:.8}.search-input-large{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:1.25rem;font-weight:500}.search-input-large::placeholder{color:var(--color-text-secondary);opacity:.4}.search-header-actions{gap:.75rem;display:flex}.esc-key{background:var(--color-bg-base);color:var(--color-text-secondary);cursor:pointer;border:1px solid var(--color-bg-elevated);text-transform:uppercase;letter-spacing:.05em;border-radius:2px;padding:.25rem .5rem;font-size:.7rem;font-weight:700}.search-results{background:var(--color-bg-base);min-height:100px;max-height:50vh;padding:1rem;overflow-y:auto}.empty-results{text-align:center;color:var(--color-text-secondary);opacity:.7;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1rem;font-size:.875rem;font-weight:500;display:flex}.empty-results p{margin:0}.search-results-list{flex-direction:column;gap:.25rem;display:flex}.search-result-item{background:var(--color-bg-surface);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;border-radius:0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.search-result-item:hover,.search-result-item.active,.search-result-item[data-focused]{border-color:var(--color-bg-elevated);background:var(--color-bg-surface);border-left:3px solid var(--color-brand-primary);transform:translate(4px);box-shadow:0 4px 12px #0000000d}.search-result-item-left{align-items:center;gap:1rem;display:flex}.search-result-icon{background:var(--color-bg-base);width:36px;height:36px;color:var(--color-text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.search-result-item:hover .search-result-icon{background:rgb(from var(--color-brand-primary) r g b / .1);color:var(--color-brand-primary)}.search-result-content{flex-direction:column;gap:2px;display:flex}.search-result-meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.search-result-date-badge{color:var(--color-text-secondary);background:var(--color-bg-elevated);border:1px solid var(--color-bg-elevated);white-space:nowrap;letter-spacing:.01em;opacity:.85;border-radius:3px;align-items:center;gap:4px;padding:1px 6px;font-size:.6875rem;font-weight:600;display:inline-flex}.search-result-date-badge svg{opacity:.65;flex-shrink:0}.type-icon-shift~.search-result-content .search-result-date-badge{color:var(--entity-shift);background:color-mix(in srgb, var(--entity-shift) 10%, transparent);border-color:color-mix(in srgb, var(--entity-shift) 22%, transparent)}.type-icon-mission~.search-result-content .search-result-date-badge{color:var(--entity-mission);background:color-mix(in srgb, var(--entity-mission) 10%, transparent);border-color:color-mix(in srgb, var(--entity-mission) 22%, transparent)}.search-result-title{color:var(--color-text-primary);font-size:.9375rem;font-weight:600}.search-result-subtitle{color:var(--color-text-secondary);font-size:.75rem}.search-result-type{background:var(--color-bg-base);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--color-bg-elevated);border-radius:0;padding:.25rem .6rem;font-size:.625rem;font-weight:800}.search-dialog-footer{border-top:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);gap:1.5rem;padding:.75rem 1.5rem;display:flex}.search-shortcut{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-size:.75rem;font-weight:500;display:flex}.search-shortcut span{opacity:.7}.search-shortcut svg{opacity:.5;background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);padding:2px}.user-profile{cursor:pointer;transition:background var(--transition-fast);border-radius:4px;align-items:center;gap:1rem;padding:.25rem .5rem;display:flex}.user-profile:hover{background:var(--color-bg-base)}.avatar{background:var(--color-brand-primary);color:var(--color-text-inverse);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;display:flex}.user-info{flex-direction:column;display:flex}.user-name{color:var(--color-text-primary);font-size:.875rem;font-weight:600}.user-menu-trigger{text-align:left;background:0 0;border:none;outline:none;padding:0;font-family:inherit}.user-menu-trigger:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:4px}.menu-popover{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-xl);z-index:1000;outline:none;min-width:240px;margin-top:12px;overflow:hidden}.user-menu{outline:none;flex-direction:column;gap:.25rem;padding:.5rem;display:flex}.menu-item{color:var(--color-text-primary);cursor:pointer;border-radius:4px;outline:none;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.8125rem;font-weight:500;transition:all .15s;display:flex;justify-content:flex-start!important}.menu-item svg{color:var(--color-text-secondary);flex-shrink:0;transition:color .15s}.menu-item[data-focused] svg{color:var(--color-brand-primary)}.menu-item.danger{color:var(--color-accent-danger);border-top:1px solid var(--color-bg-elevated);border-radius:0 0 4px 4px;margin-top:.25rem;padding-top:.75rem}.menu-item.danger[data-focused]{color:var(--color-accent-danger);background:#ef44440d}.menu-item.danger svg{color:var(--color-accent-danger)}.search-ai-badge{letter-spacing:.06em;text-transform:uppercase;color:var(--color-brand-primary);background:rgb(from var(--color-brand-primary) r g b / .12);border:1px solid rgb(from var(--color-brand-primary) r g b / .25);transition:opacity var(--transition-fast);border-radius:4px;align-items:center;gap:3px;padding:1px 5px 1px 4px;font-size:.6rem;font-weight:800;line-height:1;display:inline-flex}.search-result-title mark,.search-result-subtitle mark{color:var(--color-brand-primary);text-decoration:underline;-webkit-text-decoration-color:rgb(from var(--color-brand-primary) r g b / .35);text-decoration-color:rgb(from var(--color-brand-primary) r g b / .35);text-underline-offset:2px;background:0 0;font-weight:700}@media (width<=1024px){.search-ai-badge{display:none}}.search-section-label{letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-secondary);opacity:.55;justify-content:space-between;align-items:center;margin-top:.25rem;padding:.5rem .25rem .35rem;font-size:.6875rem;font-weight:700;display:flex}.search-section-label:first-child{margin-top:0}.search-section-label--others{border-top:1px solid var(--color-bg-elevated);opacity:.45;margin-top:.75rem;padding-top:.75rem;animation:.2s forwards fade-in-down}.search-section-count{background:var(--color-bg-elevated);opacity:1;border-radius:20px;padding:1px 7px;font-size:.625rem;font-weight:800}.show-more-btn{background:var(--color-bg-base);border:1px dashed var(--color-bg-elevated);width:100%;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);text-align:left;border-radius:0;align-items:center;gap:.5rem;margin-top:.5rem;padding:.7rem 1rem;font-family:inherit;font-size:.8125rem;font-weight:500;display:flex}.show-more-btn:hover{background:var(--color-bg-surface);border-color:var(--color-brand-primary);color:var(--color-brand-primary);border-style:solid}.show-more-btn svg{opacity:.7;transition:transform var(--transition-fast);flex-shrink:0}.show-more-btn:hover svg{opacity:1;transform:translateY(2px)}.show-more-count{background:rgb(from var(--color-brand-primary) r g b / .1);color:var(--color-brand-primary);white-space:nowrap;border-radius:20px;margin-left:auto;padding:2px 8px;font-size:.7rem;font-weight:700}.search-shortcut--right{color:var(--color-text-secondary);opacity:.5;margin-left:auto;font-size:.7rem}.search-loading{color:var(--color-text-secondary);opacity:.6;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1rem;font-size:.875rem;font-weight:500;display:flex}.search-loading-dots{gap:6px;display:flex}.search-loading-dots span{background:var(--color-brand-primary);border-radius:50%;width:6px;height:6px;animation:1.2s infinite bounce-dot}.search-loading-dots span:nth-child(2){animation-delay:.2s}.search-loading-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce-dot{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.search-hint{flex-direction:column;align-items:center;gap:1rem;padding:1.25rem .5rem .75rem;display:flex}.search-hint-categories{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.search-hint-chip{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);color:var(--color-text-secondary);transition:all var(--transition-fast);border-radius:0;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.75rem;font-weight:500;display:inline-flex}.search-hint-chip svg{opacity:.6}.search-hint-label{color:var(--color-text-secondary);opacity:.5;text-align:center;margin:0;font-size:.75rem}.type-icon-personnel{color:var(--entity-personnel);background:color-mix(in srgb, var(--entity-personnel) 12%, transparent)!important}.type-icon-hotel{color:var(--entity-hotel);background:color-mix(in srgb, var(--entity-hotel) 12%, transparent)!important}.type-icon-group{color:var(--entity-group);background:color-mix(in srgb, var(--entity-group) 12%, transparent)!important}.type-icon-mission{color:var(--entity-mission);background:color-mix(in srgb, var(--entity-mission) 12%, transparent)!important}.type-icon-shift{color:var(--entity-shift);background:color-mix(in srgb, var(--entity-shift) 12%, transparent)!important}.type-icon-product{color:var(--entity-product);background:color-mix(in srgb, var(--entity-product) 12%, transparent)!important}.type-icon-job{color:var(--entity-job);background:color-mix(in srgb, var(--entity-job) 12%, transparent)!important}.type-personnel{color:var(--entity-personnel)!important;border-color:color-mix(in srgb, var(--entity-personnel) 28%, transparent)!important;background:color-mix(in srgb, var(--entity-personnel) 10%, transparent)!important}.type-hotel{color:var(--entity-hotel)!important;border-color:color-mix(in srgb, var(--entity-hotel) 28%, transparent)!important;background:color-mix(in srgb, var(--entity-hotel) 10%, transparent)!important}.type-group{color:var(--entity-group)!important;border-color:color-mix(in srgb, var(--entity-group) 28%, transparent)!important;background:color-mix(in srgb, var(--entity-group) 10%, transparent)!important}.type-mission{color:var(--entity-mission)!important;border-color:color-mix(in srgb, var(--entity-mission) 28%, transparent)!important;background:color-mix(in srgb, var(--entity-mission) 10%, transparent)!important}.type-shift{color:var(--entity-shift)!important;border-color:color-mix(in srgb, var(--entity-shift) 28%, transparent)!important;background:color-mix(in srgb, var(--entity-shift) 10%, transparent)!important}.type-product{color:var(--entity-product)!important;border-color:color-mix(in srgb, var(--entity-product) 28%, transparent)!important;background:color-mix(in srgb, var(--entity-product) 10%, transparent)!important}.type-job{color:var(--entity-job)!important;border-color:color-mix(in srgb, var(--entity-job) 28%, transparent)!important;background:color-mix(in srgb, var(--entity-job) 10%, transparent)!important}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.skeleton{background-color:var(--color-bg-elevated);border-radius:4px;position:relative;overflow:hidden}.skeleton:after{content:"";background-image:linear-gradient(90deg,#fff0 0,#fff3 20%,#ffffff80 60%,#fff0);animation:2s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@media (prefers-color-scheme:dark){.skeleton:after{background-image:linear-gradient(90deg,#fff0 0,#ffffff0d 20%,#ffffff1a 60%,#fff0)}}.skeleton-circular{border-radius:50%}.skeleton-text{transform-origin:0;height:1em;margin-top:.25em;margin-bottom:.25em;transform:scaleY(.6)}@keyframes shimmer{0%,to{opacity:.5}50%{opacity:1}}.filter-select{flex-direction:column;flex:200px;gap:.3rem;min-width:0;display:flex}.filter-select__label{font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);font-weight:700}.filter-select__field{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-button);min-width:0;transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);align-items:center;display:flex;position:relative}.filter-select__field:hover{border-color:var(--color-border-strong);background:var(--color-bg-surface)}.filter-select:focus-within .filter-select__field{border-color:var(--color-brand-secondary);background:var(--color-bg-surface);box-shadow:var(--shadow-glow)}.filter-select__icon{color:var(--color-text-muted);pointer-events:none;display:inline-flex;position:absolute;left:12px}.filter-select__button{width:100%;height:42px;color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-sm);cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;padding:0 .9rem;font-weight:500;display:flex;box-shadow:none!important;background:0 0!important;border:none!important}.filter-select__field:has(.filter-select__icon) .filter-select__button{padding-left:2.4rem}.filter-select--compact .filter-select__button{height:32px;font-size:var(--font-size-xs);justify-content:center;gap:.35rem;padding:0 .5rem}.filter-select--compact .filter-select__value{text-align:center;flex:0 auto}.filter-select__value{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.filter-select__chevron{color:var(--color-text-secondary);opacity:.6;flex-shrink:0;font-size:.6rem}.filter-select__popover{min-width:var(--trigger-width);background:var(--color-bg-panel);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);padding:4px;overflow:hidden}.filter-select__listbox{outline:none;flex-direction:column;gap:2px;max-height:300px;padding:.35rem 0;display:flex;overflow-y:auto}.filter-select__option{border-radius:var(--radius-button);color:var(--color-text-primary);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;transition:background-color var(--transition-fast), color var(--transition-fast);outline:none;flex-shrink:0;padding:.75rem 1rem;font-size:.875rem;font-weight:500;overflow:hidden}.filter-select__option[data-hovered],.filter-select__option[data-focused]{background:var(--color-bg-muted)}.filter-select__option[data-selected]{background:rgba(var(--color-brand-primary-rgb), .07);color:var(--color-text-primary);font-weight:700}body.dark-theme .filter-select__option[data-selected]{background:var(--color-bg-strong);color:var(--color-brand-accent)}.filter-select__option[data-disabled]{opacity:.45;cursor:not-allowed}.dashboard-home{background-color:var(--color-bg-base);flex-direction:column;gap:2rem;min-height:100%;padding:2rem;display:flex}.dashboard-header{background:var(--color-brand-primary);border-radius:var(--border-radius-lg);border:none;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;margin-bottom:1.5rem;padding:1.75rem;display:flex}body.dark-theme .dashboard-header{background:var(--color-bg-surface);border:1px solid var(--color-border)}.dashboard-header h2{font-family:var(--font-family-heading);letter-spacing:-.02em;color:var(--color-on-brand-text);margin-bottom:.25rem;font-size:1.75rem;font-weight:700}.dashboard-header p{color:var(--color-on-brand-text-muted);font-size:var(--font-size-base);max-width:46ch;margin:0}.quick-actions{flex-shrink:0;gap:.625rem;display:flex}.dashboard-header .quick-actions .react-aria-Button{background:var(--color-accent-success)!important;color:var(--brand-forest)!important;border-color:#0000!important}.dashboard-header .quick-actions .react-aria-Button:hover{background:var(--brand-emerald)!important}.dashboard-header .quick-actions .react-aria-Button.secondary{background:var(--color-on-brand-surface-strong)!important;color:var(--color-on-brand-text)!important;border:1px solid var(--color-on-brand-border)!important}.dashboard-header .quick-actions .react-aria-Button.secondary:hover{background:#ffffff29!important}body.dark-theme .dashboard-header .quick-actions .react-aria-Button{color:var(--color-bg-base)!important}body.dark-theme .dashboard-header .quick-actions .react-aria-Button.secondary{background:var(--color-bg-muted)!important;color:var(--color-text-primary)!important;border-color:var(--color-border)!important}.metric-card{transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-xs);flex-direction:column;padding:1.25rem;display:flex;position:relative}.metric-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.metric-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;display:flex}.metric-header h3{font-family:var(--font-family-sans);font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:0;font-weight:700;line-height:1.35}.subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:.2rem}.metric-value{font-family:var(--font-family-heading);letter-spacing:-.02em;color:var(--color-text-primary);margin:0;font-size:1.875rem;font-weight:700;line-height:1.1}.metric-trend{font-size:var(--font-size-sm);color:var(--color-text-secondary);align-items:center;gap:.25rem;margin-top:.4rem;display:flex}.metric-trend.positive{color:var(--color-accent-success)}.metric-trend.negative{color:var(--color-accent-danger)}.metric-icon{background:var(--color-bg-subtle);border-radius:var(--border-radius-md);border:1px solid var(--color-border-subtle);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.metric-icon.text-brand{color:var(--color-brand-primary)}.metric-icon.text-info{color:var(--color-accent-info)}.metric-icon.text-warning{color:var(--color-accent-warning)}.metric-icon.text-danger{color:var(--color-accent-danger)}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;display:grid}.chart-card,.content-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.chart-card:hover,.content-card:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm)}.card-heading.header-with-actions{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.toolbar-filters .filter-select{max-width:260px}.chart-select{border:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);color:var(--color-text-primary);cursor:pointer;border-radius:4px;outline:none;padding:.375rem .75rem;font-size:.875rem;transition:border-color .2s}.chart-select:focus{border-color:var(--color-brand-primary)}.card-heading h3{color:var(--color-text-primary);margin-bottom:0;font-size:1.125rem;font-weight:600}.dashboard-content-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.personnel-leaderboard{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.leaderboard-item{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);justify-content:space-between;align-items:center;padding:.75rem 1rem;transition:background .2s;display:flex}.leaderboard-item:hover{background:var(--color-bg-elevated)}.item-left{align-items:center;gap:1rem;display:flex}.rank{background:var(--color-brand-primary);color:#fff;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:700;display:flex}.name-box{flex-direction:column;display:flex}.person-name{color:var(--color-text-primary);font-size:.95rem;font-weight:600}.hours-badge,.profit-badge{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);color:var(--color-text-primary);border-radius:4px;padding:.375rem .75rem;font-size:.875rem;font-weight:600}.profit-badge.positive{color:var(--color-accent-success)}.profit-badge.negative{color:var(--color-accent-danger)}.neon-border.profit{border-left:4px solid var(--color-accent-success)}.dashboard-loading{min-height:400px;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner{border:4px solid var(--color-bg-elevated);border-top:4px solid var(--color-brand-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}@media (width<=768px){.charts-grid{grid-template-columns:1fr}}.dashboard-toolbar{background:var(--color-bg-surface);border-radius:var(--radius-card);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-xs);flex-direction:column;gap:1.25rem;margin-bottom:.5rem;padding:1.25rem;display:flex}.toolbar-header{color:var(--color-text-primary);border-bottom:1px solid var(--color-bg-base);align-items:center;gap:.75rem;padding-bottom:1rem;font-size:.95rem;font-weight:600;display:flex}.toolbar-filters{flex-wrap:wrap;align-items:flex-end;gap:1.5rem;display:flex}.filter-group.date-range-group{flex:2;gap:.75rem;min-width:320px;display:flex}.filter-item{flex-direction:column;flex:1;gap:.5rem;min-width:140px;display:flex}.filter-item label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.charts-grid-single,.chart-card.full-width{width:100%}@media (width<=1024px){.dashboard-home{gap:1.5rem;padding:1.25rem}.dashboard-header{flex-direction:column;align-items:flex-start;gap:1.25rem}.quick-actions{flex-direction:column;width:100%}.quick-actions button{width:100%}.metrics-grid,.dashboard-content-grid{grid-template-columns:1fr}.filter-group.date-range-group{flex-direction:column;min-width:100%}.filter-item{min-width:100%}}@media (width>=1200px){.dashboard-content-grid{grid-template-columns:repeat(3,1fr)}}.profit-badge{letter-spacing:.02em;border-radius:4px;padding:.4rem .8rem;font-size:.8rem;font-weight:700}.profit-badge.positive{background:rgba(var(--color-accent-success-rgb,16, 185, 129), .1);color:var(--color-accent-success);border:1px solid rgba(var(--color-accent-success-rgb,16, 185, 129), .2)}.profit-badge.negative{background:rgba(var(--color-accent-danger-rgb,239, 68, 68), .1);color:var(--color-accent-danger);border:1px solid rgba(var(--color-accent-danger-rgb,239, 68, 68), .2)}.empty-state{text-align:center;color:var(--color-text-secondary);padding:2rem;font-size:.875rem;font-style:italic}.personnel-page{flex-direction:column;gap:1.5rem;max-width:1600px;min-height:100%;margin:0 auto;padding:2rem 2.5rem;display:flex}.pers-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.pers-title{color:var(--color-text-primary);margin:0 0 .25rem;font-size:1.75rem;font-weight:700}.pers-subtitle{color:var(--color-text-secondary);margin:0;font-size:.9rem}.pers-kpi-row{grid-template-columns:repeat(5,1fr);gap:1rem;display:grid}.pers-kpi-card{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast), transform var(--transition-fast);align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.pers-kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.pers-kpi-icon{background:rgb(from var(--kpi-color) r g b / .12);width:44px;height:44px;color:var(--kpi-color);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pers-kpi-value{color:var(--color-text-primary);font-size:1.3rem;font-weight:700;line-height:1.2}.pers-kpi-label{color:var(--color-text-secondary);margin-top:2px;font-size:.8rem}.pers-toolbar{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-sm);border-radius:4px;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex}.pers-status-chips{flex-wrap:wrap;gap:.5rem;display:flex}.pers-chip{border-radius:var(--radius-pill);border:1.5px solid var(--color-bg-elevated);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;align-items:center;gap:.4rem;padding:.35rem .85rem;font-size:.82rem;font-weight:600;display:inline-flex}.pers-chip:hover{border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.pers-chip--active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:var(--color-text-inverse)}.pers-chip-count{color:inherit;border-radius:var(--radius-pill);text-align:center;background:#ffffff40;min-width:18px;padding:0 5px;font-size:.75rem;font-weight:700}.pers-chip:not(.pers-chip--active) .pers-chip-count{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.pers-controls{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.pers-search-box{border:1.5px solid var(--color-bg-elevated);background:var(--color-bg-base);min-width:220px;color:var(--color-text-secondary);transition:border-color var(--transition-fast);border-radius:4px;flex:1;align-items:center;gap:.5rem;padding:.45rem .75rem;display:flex}.pers-search-box:focus-within{border-color:var(--color-brand-primary);color:var(--color-text-primary);box-shadow:0 0 0 3px rgb(from var(--color-brand-primary) r g b / .1)}.pers-search-input{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-size:.875rem}.pers-search-input::placeholder{color:var(--color-text-muted)}.pers-search-clear{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;align-items:center;padding:0;display:flex}.pers-select{border:1.5px solid var(--color-bg-elevated);background:var(--color-bg-base);color:var(--color-text-primary);cursor:pointer;transition:border-color var(--transition-fast);border-radius:4px;outline:none;padding:.45rem .7rem;font-size:.85rem}.pers-btn-ghost{border:1.5px solid var(--color-bg-elevated);border-radius:var(--radius-button);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.85rem;font-weight:500;display:inline-flex}.pers-btn-ghost:hover{border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.pers-workspace{transition:grid-template-columns var(--transition-normal);grid-template-columns:1fr;align-items:start;gap:1rem;display:grid}.pers-workspace--split{grid-template-columns:1fr 360px}.pers-table-wrap{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-sm);border-radius:4px;flex-direction:column;min-height:200px;display:flex;overflow:auto hidden}.pers-table{border-collapse:collapse;width:100%;font-size:.875rem}.pers-table thead{background:var(--color-bg-base);border-bottom:1px solid var(--color-bg-elevated);z-index:1;position:sticky;top:0}.pers-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);text-align:left;white-space:nowrap;padding:.75rem 1rem;font-size:.78rem;font-weight:600}.pers-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.pers-th-sortable:hover{color:var(--color-brand-primary)}.pers-table td{border-bottom:1px solid var(--color-bg-elevated);vertical-align:middle;padding:.875rem 1rem}.pers-table tbody tr:last-child td{border-bottom:none}.pers-row{cursor:pointer;transition:background var(--transition-fast)}.pers-row:hover{background:var(--color-bg-base)}.pers-row--selected{outline:2px solid var(--color-brand-primary);outline-offset:-2px;background:rgb(from var(--color-brand-primary) r g b / .06)!important}.pers-cell-primary{color:var(--color-text-primary);align-items:center;gap:.75rem;font-weight:500;display:flex}.pers-cell-muted{color:var(--color-text-muted);font-size:.85rem}.pers-avatar{background:var(--color-bg-elevated);width:32px;height:32px;color:var(--color-text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.pers-badge{border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.pers-badge--lg{padding:.35rem .9rem;font-size:.85rem}.pers-badge--active{background:rgb(from var(--color-accent-success) r g b / .15);color:var(--color-accent-success)}.pers-badge--role{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);color:var(--color-text-secondary)}.pers-pagination{border-top:1px solid var(--color-bg-elevated);background:var(--color-bg-base);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.pers-page-info{color:var(--color-text-secondary);font-size:.82rem}.pers-page-btns{align-items:center;gap:.25rem;display:flex}.pers-page-btn{border-radius:var(--radius-button);border:1.5px solid var(--color-bg-elevated);background:var(--color-bg-surface);width:32px;height:32px;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:.82rem;font-weight:500;display:flex}.pers-page-btn:hover:not(:disabled){border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.pers-page-btn:disabled{opacity:.4;cursor:not-allowed}.pers-page-btn--active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:var(--color-text-inverse)}.pers-panel{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);box-shadow:var(--shadow-md);flex-direction:column;max-height:calc(100vh - 2rem);animation:.4s cubic-bezier(.16,1,.3,1) both pers-panel-in;display:flex;position:sticky;top:1rem;overflow:hidden}@keyframes pers-panel-in{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.pers-panel-header{border-bottom:1px solid var(--color-bg-elevated);background:var(--color-bg-base);justify-content:space-between;align-items:flex-start;gap:.5rem;padding:1.25rem 1.25rem 1rem;display:flex}.pers-panel-title{color:var(--color-text-primary);font-size:1rem;font-weight:700}.pers-panel-sub{color:var(--color-text-secondary);margin-top:2px;font-size:.82rem}.pers-panel-close{cursor:pointer;color:var(--color-text-muted);border-radius:var(--radius-card);transition:color var(--transition-fast);background:0 0;border:none;padding:2px}.pers-panel-body{flex-direction:column;flex:1;gap:1.25rem;padding:1.25rem;display:flex;overflow-y:auto}.pers-panel-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:600}.pers-panel-dl{grid-template-columns:auto 1fr;gap:.5rem 1rem;margin:0;font-size:.875rem;display:grid}.pers-panel-dl dt{color:var(--color-text-secondary);font-weight:500}.pers-panel-dl dd{color:var(--color-text-primary);margin:0;font-weight:500}.pers-panel-actions{border-top:1px solid var(--color-bg-elevated);flex-direction:column;gap:.5rem;padding:1rem 1.25rem;display:flex}.pers-action-btn{border-radius:var(--radius-button);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1.25rem;font-size:.875rem;font-weight:600;display:inline-flex}.pers-action-btn--edit{background:rgb(from var(--color-brand-primary) r g b / .12);color:var(--color-brand-primary)}.pers-action-btn--edit:hover{background:var(--color-brand-primary);color:var(--color-text-inverse)}.pers-action-btn--delete{background:rgb(from var(--color-accent-danger) r g b / .12);color:var(--color-accent-danger)}.pers-action-btn--delete:hover{background:var(--color-accent-danger);color:var(--color-text-inverse)}.pers-empty{color:var(--color-text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.pers-spinner{border:3px solid var(--color-bg-elevated);border-top-color:var(--color-brand-primary);border-radius:50%;width:36px;height:36px;animation:.75s linear infinite pers-spin}@keyframes pers-spin{to{transform:rotate(360deg)}}@media (width<=1450px){.pers-kpi-row{grid-template-columns:repeat(3,1fr)}}@media (width<=1100px){.pers-workspace--split{grid-template-columns:1fr}.pers-panel{max-height:none;position:static}.pers-kpi-row{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.pers-kpi-row{grid-template-columns:1fr}.pers-header{flex-direction:column}}.user-details-page{flex-direction:column;gap:1.5rem;max-width:1400px;margin:0 auto;padding:1rem 1.5rem 1.5rem;display:flex;position:relative}.sticky-user-bar{-webkit-backdrop-filter:blur(12px);z-index:98;border-bottom:1px solid var(--color-bg-elevated);background:#ffffffd9;align-items:center;height:60px;padding:0 1.5rem;transition:transform .4s cubic-bezier(.16,1,.3,1),left .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:72px;left:260px;right:0;transform:translateY(-100%)}body.sidebar-collapsed .sticky-user-bar{left:80px}.sticky-user-bar.visible{transform:translateY(0)}.sticky-content{align-items:center;gap:1.5rem;width:100%;max-width:1400px;margin:0 auto;display:flex}.sticky-user-info{flex:1;align-items:center;gap:.75rem;display:flex}.sticky-avatar{background:var(--color-brand-primary);color:#fff;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:800;display:flex}.sticky-text{flex-direction:column;justify-content:center;display:flex}.sticky-name{color:var(--color-text-primary);font-size:.95rem;font-weight:900;line-height:1.1}.sticky-role{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;font-weight:700}.sticky-back-btn{cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;padding:8px;transition:transform .2s;display:flex}.sticky-back-btn:hover{color:var(--color-brand-primary);background:var(--color-bg-elevated);transform:translate(-3px)}.sticky-actions{gap:.75rem;display:flex}.details-header{align-items:center;gap:1.25rem;margin-bottom:.5rem;display:flex}.back-btn{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-button);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;padding:.75rem;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.back-btn:hover{background:var(--color-bg-elevated);transform:translate(-4px)}.profile-banner{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-md);background-image:linear-gradient(135deg,#164e6308 0%,#0000 100%);border-radius:4px;align-items:center;gap:2rem;padding:2.5rem;display:flex;position:relative;overflow:hidden}.profile-banner:after{content:"";z-index:0;background:radial-gradient(circle at 100% 0,#164e630d,#0000);width:300px;height:300px;position:absolute;top:0;right:0}.profile-avatar{background:var(--color-brand-primary);color:#fff;width:100px;height:100px;box-shadow:var(--shadow-xl);z-index:1;border-radius:4px;justify-content:center;align-items:center;font-size:2.5rem;font-weight:900;display:flex;position:relative}.profile-info{z-index:1;flex-direction:column;gap:.5rem;display:flex;position:relative}.profile-info h2{letter-spacing:-.04em;color:var(--color-text-primary);margin:0;font-size:2.25rem;font-weight:900}.profile-subtext{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-size:.9375rem;font-weight:500;display:flex}.profile-badge{background:var(--color-brand-primary);color:#fff;text-transform:uppercase;letter-spacing:.1em;border-radius:4px;align-self:flex-start;margin-top:.5rem;padding:.3rem .75rem;font-size:.65rem;font-weight:850}.tabs-nav{border-bottom:1px solid var(--color-bg-elevated);gap:.5rem;margin:1rem 0;padding:0;display:flex}.tab-btn{cursor:pointer;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.75rem;margin-bottom:-1px;padding:1rem 1.5rem;font-size:.8125rem;font-weight:700;transition:all .2s;display:flex}.tab-btn:hover{color:var(--color-brand-primary);background:#164e6308}.tab-btn.active{color:var(--color-brand-primary);border-bottom-color:var(--color-brand-primary)}.details-grid{grid-template-columns:3fr 2fr;align-items:start;gap:1.5rem;display:grid}@media (width<=1024px){.details-grid{grid-template-columns:1fr}}.details-card{background:var(--color-bg-surface);border-radius:var(--radius-card);border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-sm);flex-direction:column;padding:2rem;display:flex}.details-card h3{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-primary);border-left:4px solid var(--color-brand-primary);margin-bottom:1.5rem;margin-left:-2rem;padding-left:1rem;font-size:1.125rem;font-weight:800}.react-aria-Input{transition:border-color .2s;border:1px solid var(--color-bg-elevated)!important;background:var(--color-bg-base)!important;color:var(--color-text-primary)!important;border-radius:4px!important;font-size:.875rem!important}.react-aria-Input:focus{outline:none;border-color:var(--color-brand-primary)!important}.doc-item-card{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);justify-content:space-between;align-items:center;padding:1rem;transition:all .2s;display:flex}.doc-item-card:hover{border-color:var(--color-brand-primary);box-shadow:var(--shadow-md)}.action-icon-btn{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);cursor:pointer;width:36px;height:36px;color:var(--color-text-secondary);border-radius:var(--radius-button);justify-content:center;align-items:center;transition:all .2s;display:flex}.action-icon-btn:hover{background:var(--color-brand-primary);color:#fff;border-color:var(--color-brand-primary)}.action-icon-btn.danger:hover{background:var(--color-accent-danger);border-color:var(--color-accent-danger)}.segmented-control{border:1px solid var(--color-bg-elevated);background:var(--color-bg-base)!important;padding:3px!important}.control-btn{border-radius:var(--radius-button)!important;text-transform:uppercase!important;letter-spacing:.05em!important;padding:.5rem 1.25rem!important;font-size:.75rem!important;font-weight:700!important;transition:all .2s!important}.control-btn.active{box-shadow:var(--shadow-sm);background:var(--color-brand-primary)!important;color:#fff!important}.control-btn:not(.active):hover{background:var(--color-bg-elevated)!important;color:var(--color-brand-primary)!important}.planning-controls-bar{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem 2.5rem;display:flex}.planning-summary-stats{gap:3rem;display:flex}.stat-item{color:var(--color-text-secondary);text-transform:uppercase;flex-direction:column;gap:-.1rem;font-size:.75rem;font-weight:700;display:flex}.stat-item strong{color:var(--color-text-primary);font-size:1.5rem;font-weight:900;line-height:1}.planning-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.shift-card{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);border-top:3px solid var(--color-bg-elevated);flex-direction:column;gap:.75rem;padding:1.25rem;transition:all .2s;display:flex}.shift-card:hover{box-shadow:var(--shadow-lg);border-top-color:var(--color-brand-primary);transform:translateY(-4px)}.shift-time{color:var(--color-text-primary);letter-spacing:-.02em;font-size:1.125rem;font-weight:800}.status-badge{text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.4rem;padding:.25rem .6rem;font-size:.65rem;font-weight:850;display:inline-flex;border-radius:4px!important}.status-badge.validated{color:var(--color-accent-success);background:#10b9811a}.status-badge.pending{color:var(--color-accent-info);background:#3b82f61a}.status-badge.rejected{color:var(--color-accent-danger);background:#ef44441a}.activity-icon{border-radius:4px!important}.agenda-modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2000;background:#0009;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.agenda-modal-dialog{background:var(--color-bg-surface);border:none;border-radius:4px;outline:none;flex-direction:column;width:100vw;height:100vh;animation:.4s cubic-bezier(.16,1,.3,1) modalSlideUp;display:flex}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.agenda-modal-header{border-bottom:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);justify-content:space-between;align-items:center;padding:.75rem 1.5rem;display:flex}.agenda-modal-title{align-items:center;gap:1rem;display:flex}.agenda-modal-title h2{text-transform:uppercase;letter-spacing:.02em;color:var(--color-text-primary);margin:0;font-size:1.1rem;font-weight:850}.agenda-modal-body{flex:1;padding:1rem;overflow:hidden}.close-modal-btn{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);cursor:pointer;border-radius:var(--radius-button);justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.close-modal-btn:hover{background:var(--color-accent-danger);color:#fff}.doc-card-premium{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);flex-direction:column;padding:0;transition:all .2s;display:flex}.doc-card-premium:hover{border-color:var(--color-brand-primary);box-shadow:var(--shadow-sm)}.doc-card-body{flex:1;gap:1rem;padding:1.5rem;display:flex}.doc-type-icon{background:var(--color-bg-base);width:48px;height:48px;color:var(--color-brand-primary);border:1px solid var(--color-bg-elevated);justify-content:center;align-items:center;display:flex}.doc-card-info{flex-direction:column;display:flex}.doc-label{color:var(--color-text-primary);margin-bottom:.25rem;font-size:.9375rem;font-weight:850}.doc-expiry{color:var(--color-text-secondary);font-size:.75rem;font-weight:600}.checkbox-sharp{cursor:pointer;align-items:center;gap:.5rem;display:flex}.checkbox-sharp input{accent-color:var(--color-brand-primary);width:14px;height:14px}.checkbox-sharp span{color:var(--color-text-muted);font-size:.75rem;font-weight:600}.doc-card-actions-bar{border-top:1px solid var(--color-bg-elevated);background:#f9fafb80;gap:.75rem;padding:.75rem 1rem;display:flex}.doc-action-btn{cursor:pointer;align-items:center;gap:.4rem;display:flex;color:var(--color-text-secondary)!important;border-radius:var(--radius-button)!important;background:0 0!important;border:none!important;padding:.4rem .6rem!important;font-size:.75rem!important;font-weight:800!important;transition:all .2s!important}.doc-action-btn:hover{background:var(--color-bg-elevated)!important;color:var(--color-brand-primary)!important}.doc-action-btn.danger:hover{color:var(--color-accent-danger)!important;background:#ef44441a!important}@keyframes slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:.4s cubic-bezier(.16,1,.3,1) slide-up}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.calendar-wrapper{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif!important}.calendar-wrapper .fc{font-family:inherit!important}.calendar-wrapper .fc-view-harness{background:var(--color-bg-base)}.calendar-wrapper .fc-theme-standard td,.calendar-wrapper .fc-theme-standard th{border:1px solid var(--color-bg-elevated)}.kbis-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0009;justify-content:center;align-items:center;width:100vw;height:100vh;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;top:0;left:0}.kbis-modal-dialog{background:var(--color-bg-base);border-radius:16px;outline:none;width:100%;max-width:480px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;overflow:hidden;box-shadow:0 20px 40px #0003}.kbis-modal-content{padding:2rem}.kbis-modal-header{text-align:center;margin-bottom:2rem}.kbis-modal-icon-container{background:rgba(var(--color-primary-rgb), .1);width:64px;height:64px;color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.kbis-modal-title{color:var(--color-text-primary);margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.kbis-modal-subtitle{color:var(--color-text-secondary);margin:0;font-size:.875rem}.kbis-steps-container{flex-direction:column;gap:1.25rem;display:flex;position:relative}.kbis-steps-container:before{content:"";background:var(--color-bg-elevated);z-index:0;width:2px;position:absolute;top:10px;bottom:20px;left:17px}.kbis-step{z-index:1;opacity:.4;align-items:flex-start;gap:1rem;transition:opacity .3s;display:flex;position:relative}.kbis-step.active{opacity:1}.kbis-step-icon{background:var(--color-bg-elevated);width:36px;height:36px;color:var(--color-text-secondary);border:2px solid var(--color-bg-base);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .3s;display:flex}.kbis-step.active .kbis-step-icon{background:var(--color-primary);color:#fff;box-shadow:0 0 0 4px rgba(var(--color-primary-rgb), .2)}.kbis-step.completed .kbis-step-icon{background:var(--color-success);color:#fff;box-shadow:0 0 0 4px rgba(var(--color-success-rgb), .2)}.kbis-step-text{color:var(--color-text-primary);margin-top:8px;font-size:.9375rem;font-weight:500}.spin{animation:1s linear infinite spin}.kbis-result-banner{border-radius:8px;align-items:flex-start;gap:.75rem;margin-top:2rem;padding:1rem;font-size:.875rem;font-weight:500;animation:.4s ease-out fadeIn;display:flex}.kbis-result-banner.success{background:rgba(var(--color-success-rgb), .1);color:var(--color-success)}.kbis-result-banner.info{background:rgba(var(--color-info-rgb), .1);color:var(--color-info)}.hotels-page{flex-direction:column;display:flex}.hotels-content{flex-direction:column;gap:2rem;display:flex}.group-section{box-shadow:none;background:0 0;border:none;flex-direction:column;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;display:flex}.group-header{border-bottom:1px solid var(--color-bg-elevated);justify-content:space-between;align-items:center;padding-bottom:1.25rem;display:flex}.group-title-container{align-items:center;gap:1rem;display:flex}.group-title h3{color:var(--color-text-primary);margin:0;font-size:1.25rem}.group-subtitle{color:var(--color-text-secondary);font-size:.875rem}.hotels-grid{grid-template-columns:repeat(auto-fill,320px);gap:1.5rem;padding-top:.5rem;display:grid}.hotel-card{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);cursor:pointer;align-items:flex-start;gap:1rem;padding:1.5rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 1px 3px #0000000a}.hotel-card:hover{border-color:var(--color-brand-primary);transform:translateY(-5px);box-shadow:0 12px 20px -5px #00000014}.hotel-card-icon{background:rgb(from var(--color-brand-primary) r g b / .1);color:var(--color-brand-primary);border-radius:var(--radius-card);justify-content:center;align-items:center;padding:.75rem;display:flex}.hotel-card-body{flex-direction:column;flex:1;gap:.5rem;display:flex}.edit-icon{color:var(--color-text-muted);opacity:0;transition:opacity .2s}.hotel-card:hover .edit-icon{opacity:.8}.hotel-card h4{color:var(--color-text-primary);margin:0;font-size:1.125rem}.hotel-city{color:var(--color-text-secondary);align-items:center;gap:.375rem;font-size:.875rem;display:flex}.empty-state.small{border:1px dashed var(--color-bg-elevated);background:0 0;padding:1.5rem;font-size:.875rem}.products-container{width:100%;max-width:1200px;margin:0 auto;padding:2rem}.products-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.page-title{color:var(--color-text-primary);margin:0;font-size:1.5rem;font-weight:600}.page-subtitle{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.875rem}.products-filters{align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.search-input-wrapper{flex:1;max-width:400px;position:relative}.search-input{border:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);width:100%;color:var(--color-text-primary);transition:var(--transition-fast);border-radius:4px;outline:none;padding:.625rem .625rem .625rem 2.5rem;font-size:.875rem}.search-input:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px rgb(from var(--color-brand-primary) r g b / .1)}.products-grid{grid-template-columns:repeat(auto-fill,260px);gap:1.5rem;display:grid}.product-card{background:var(--color-bg-surface);border-radius:var(--radius-card);border:1px solid var(--color-bg-elevated);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;display:flex;position:relative;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.product-image-container{background:var(--color-bg-base);border-bottom:1px solid var(--color-bg-elevated);justify-content:center;align-items:center;height:160px;display:flex;position:relative}.product-image{object-fit:contain;width:100%;height:100%;padding:.5rem}.product-body{flex:1;justify-content:space-between;align-items:flex-start;padding:1.25rem;display:flex}.product-info{flex-direction:column;flex:1;gap:.4rem;display:flex}.product-category{text-transform:uppercase;letter-spacing:.05em;color:var(--color-brand-primary);font-size:.75rem;font-weight:600}.product-name{color:var(--color-text-primary);margin:0;font-size:1rem;font-weight:600;line-height:1.4}.product-details{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.75rem;display:flex}.product-details b{color:var(--color-text-primary)}.dot{background:var(--color-text-muted);opacity:.4;border-radius:50%;width:4px;height:4px}.product-barcode{color:var(--color-text-secondary);background:var(--color-bg-base);border-radius:4px;width:fit-content;margin-top:.25rem;padding:.2rem .4rem;font-family:monospace;font-size:.75rem}.product-edit-trigger{color:var(--color-text-muted);cursor:pointer;opacity:0;transition:var(--transition-fast);background:0 0;border:none;border-radius:4px;padding:.4rem}.product-card:hover .product-edit-trigger{opacity:1}.product-edit-trigger:hover{background:var(--color-bg-base);color:var(--color-brand-primary)}.product-details-container{max-width:1200px;margin:0 auto;padding:2rem;animation:.4s ease-out fadeIn}.product-details-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.breadcrumb a{color:var(--color-text-secondary);text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--color-primary)}.main-info-grid{grid-template-columns:350px 1fr;gap:2rem;margin-bottom:3rem;display:grid}.product-visual-panel{background:var(--color-bg-elevated);border:1px solid var(--color-border);justify-content:center;align-items:center;height:350px;display:flex;position:relative;overflow:hidden}.product-visual-panel img{object-fit:contain;width:100%;height:100%;padding:1rem}.product-info-panel{flex-direction:column;padding:2.5rem;display:flex}.product-info-panel .category-tag{background:rgba(var(--color-primary-rgb), .1);color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em;align-self:flex-start;margin-bottom:1rem;padding:.25rem .75rem;font-size:.75rem;font-weight:700;display:inline-block}.product-info-panel h1{color:var(--color-text-primary);margin-bottom:1.5rem;font-size:2.5rem;font-weight:800;line-height:1.1}.info-specs-grid{grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:auto;display:grid}.spec-item{flex-direction:column;gap:.25rem;display:flex}.spec-label{text-transform:uppercase;color:var(--color-text-secondary);letter-spacing:.1em;font-size:.75rem;font-weight:600}.spec-value{color:var(--color-text-primary);font-size:1.125rem;font-weight:700}.availability-section{margin-top:2rem}.section-title{text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.75rem;margin-bottom:1.5rem;font-size:1.25rem;font-weight:800;display:flex}.availability-table-wrapper{border:1px solid var(--color-border);overflow:hidden}.availability-table{border-collapse:collapse;width:100%}.availability-table th{text-align:left;text-transform:uppercase;color:var(--color-text-secondary);background:rgba(var(--color-text-primary-rgb), .02);border-bottom:1px solid var(--color-border);letter-spacing:.1em;padding:1rem 1.5rem;font-size:.75rem}.availability-table td{border-bottom:1px solid var(--color-border);padding:1.25rem 1.5rem}.hotel-cell{flex-direction:column;display:flex}.hotel-name{color:var(--color-text-primary);font-weight:700}.hotel-location{color:var(--color-text-secondary);font-size:.75rem}.stock-value{font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:800}.stock-value.low{color:var(--color-error)}.threshold-badge{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:4px;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.details-loading{min-height:400px;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}@media (width<=900px){.main-info-grid{grid-template-columns:1fr}.product-visual-panel{height:300px}}.inventory-container{width:100%;max-width:1200px;margin:0 auto;padding:2rem}.inventory-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.hotel-selector{min-width:220px}.selector-trigger{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);cursor:pointer;width:100%;color:var(--color-text-primary);transition:var(--transition-fast);border-radius:4px;justify-content:space-between;align-items:center;padding:.625rem 1rem;font-size:.875rem;display:flex}.selector-trigger:hover{border-color:var(--color-brand-primary)}.inventory-filters{margin-bottom:1.5rem}.inventory-table-wrapper{border-radius:var(--radius-card);overflow-x:auto}.inventory-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.inventory-table th{background:var(--color-bg-base);color:var(--color-text-secondary);border-bottom:1px solid var(--color-bg-elevated);padding:1rem 1.5rem;font-weight:500}.inventory-table td{color:var(--color-text-primary);border-bottom:1px solid var(--color-bg-elevated);vertical-align:middle;padding:1rem 1.5rem}.inventory-table tr:hover td{background:#ffffff05}.product-table-cell{align-items:center;gap:.75rem;display:flex}.product-tiny-img{background:var(--color-bg-base);border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;display:flex;overflow:hidden}.product-tiny-img img{object-fit:contain;width:100%;height:100%}.product-name-bold{font-weight:500}.product-barcode-small{color:var(--color-text-muted);font-size:.75rem}.inventory-badge{border-radius:4px;padding:.2rem .6rem;font-size:.75rem;font-weight:500}.inventory-badge.category{background:color-mix(in srgb, var(--color-brand-primary) 10%, transparent);color:var(--color-brand-primary)}.qty-trigger-wrapper{cursor:pointer;transition:var(--transition-fast);border-radius:4px;align-items:center;gap:.5rem;width:fit-content;padding:.3rem .5rem;display:flex}.qty-trigger-wrapper:hover{background:var(--color-bg-base)}.qty-value{font-size:1rem;font-weight:600}.qty-value.danger{color:var(--color-accent-danger)}.cell-edit-icon{opacity:0;color:var(--color-text-muted);transition:var(--transition-fast)}.qty-trigger-wrapper:hover .cell-edit-icon{opacity:1}.edit-stock-input{border:1px solid var(--color-brand-primary);background:var(--color-bg-surface);width:60px;color:var(--color-text-primary);border-radius:4px;outline:none;padding:.25rem .5rem;font-size:.875rem;font-weight:600}.save-cell-btn{background:var(--color-brand-primary);color:#fff;border-radius:var(--radius-button);cursor:pointer;border:none;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex}.status-badge.success{background:var(--color-success-bg);color:var(--color-success-text)}.status-badge.error{color:var(--color-accent-danger);background:#ef44441a}.history-sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0003;justify-content:flex-end;display:flex;position:fixed;inset:0}.history-sidebar{border-left:1px solid var(--color-bg-elevated);border-radius:4px 0 0 4px;flex-direction:column;width:400px;height:100%;animation:.3s ease-out slideInRight;display:flex}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.history-sidebar-header{border-bottom:1px solid var(--color-bg-elevated);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.history-sidebar-header h3{color:var(--color-text-primary);margin:0;font-size:1.25rem;font-weight:700}.close-sidebar-btn{color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;border-radius:50%;align-items:center;padding:.5rem;display:flex}.close-sidebar-btn:hover{background:var(--color-bg-base);color:var(--color-text-primary)}.history-sidebar-content{flex:1;padding:1.5rem;overflow-y:auto}.history-loading,.history-empty{text-align:center;color:var(--color-text-secondary);padding:2rem;font-size:.875rem}.history-list{flex-direction:column;gap:1rem;display:flex}.history-item{border-bottom:1px solid var(--color-bg-elevated);flex-direction:column;gap:.25rem;padding-bottom:1rem;display:flex}.history-item:last-child{border-bottom:none}.history-item-main{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.history-item-product{color:var(--color-text-primary);font-size:.9375rem;font-weight:600}.history-item-qty{border-radius:4px;padding:.125rem .5rem;font-size:.875rem;font-weight:700}.history-item-qty.ADD{background:var(--color-success-bg);color:var(--color-success-text)}.history-item-qty.REMOVE{background:var(--color-danger-bg);color:var(--color-danger-text)}.history-item-qty.SET{background:var(--color-info-bg);color:var(--color-info-text)}.history-item-meta{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-size:.75rem;display:flex}.history-item-meta .dot{background:var(--color-text-muted);border-radius:50%;width:3px;height:3px}.history-actors{align-items:center;gap:.5rem;display:flex}.actor-main{font-weight:600}.actor-recipient{background:var(--color-bg-base);color:var(--color-text-secondary);border-radius:4px;align-items:center;gap:.25rem;padding:.125rem .375rem;font-size:.6875rem;font-weight:700;display:flex}.history-time{color:var(--color-text-muted)}.my-planning-page{flex-direction:column;gap:2rem;max-width:1200px;margin:0 auto;padding:1.5rem;display:flex}.page-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.page-title{color:var(--color-text-primary);margin-bottom:.25rem;font-size:1.875rem;font-weight:700}.page-subtitle{color:var(--color-text-secondary);font-size:.875rem}.shifts-list{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;display:grid}.shift-card{border-radius:var(--radius-card);transition:transform var(--transition-fast), box-shadow var(--transition-fast);gap:1rem;padding:1.5rem;display:flex;position:relative;overflow:hidden}.shift-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.shift-date-badge{background:var(--color-brand-primary);color:#fff;text-transform:uppercase;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;width:60px;height:60px;padding:.75rem;font-weight:700;display:flex}.shift-day{font-size:1.25rem}.shift-month{opacity:.8;font-size:.75rem}.shift-card-content{flex-direction:column;flex:1;gap:.75rem;display:flex}.shift-card-header{justify-content:space-between;align-items:flex-start;display:flex}.hotel-name{color:var(--color-text-primary);align-items:center;gap:.4rem;font-size:1rem;font-weight:600;display:flex}.status-badge{border-radius:var(--radius-pill);align-items:center;gap:.25rem;padding:.25rem .6rem;font-size:.75rem;font-weight:500;display:inline-flex}.status-badge.validated{background:var(--color-success-bg);color:var(--color-success-text)}.status-badge.disputed{background:var(--color-danger-bg);color:var(--color-danger-text)}.status-badge.pending{background:var(--color-warning-bg);color:var(--color-warning-text)}.shift-details{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.detail-item{flex-direction:column;gap:.2rem;display:flex}.detail-label{color:var(--color-text-secondary);font-size:.75rem}.detail-value{color:var(--color-text-primary);align-items:center;gap:.3rem;font-size:.875rem;font-weight:500;display:flex}.shift-note{background:var(--color-bg-base);color:var(--color-text-secondary);border-left:3px solid var(--color-brand-primary);border-radius:4px;margin-top:.5rem;padding:.5rem;font-size:.75rem}.settings-page{background-color:var(--color-bg-base);flex-direction:column;gap:2rem;min-height:100%;padding:2rem;display:flex}.settings-header{border-bottom:1px solid var(--color-bg-elevated);padding-bottom:1.5rem}.settings-header-eyebrow{color:var(--color-brand-primary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.875rem;font-weight:500}.settings-header-title{color:var(--color-text-primary);margin-bottom:.25rem;font-size:1.875rem;font-weight:700}.settings-header-sub{color:var(--color-text-secondary);font-size:1rem}.settings-tabs{flex-direction:column;gap:1.5rem;display:flex}.settings-tab-list{border-bottom:1px solid var(--color-bg-elevated);gap:1rem;display:flex}.settings-tab{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.settings-tab:hover{color:var(--color-text-primary)}.settings-tab[data-selected]{color:var(--color-brand-primary);border-bottom-color:var(--color-brand-primary)}.settings-panel{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:2rem}.profile-hero{border-bottom:1px solid var(--color-bg-elevated);align-items:center;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.profile-avatar{background:var(--color-brand-primary);color:#fff;width:64px;height:64px;box-shadow:var(--shadow-md);border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.profile-hero-info{flex-direction:column;gap:.25rem;display:flex}.profile-name{color:var(--color-text-primary);margin:0;font-size:1.25rem;font-weight:700}.profile-role-badge{background:var(--color-bg-base);color:var(--color-text-secondary);border:1px solid var(--color-bg-elevated);border-radius:4px;align-self:flex-start;padding:.25rem .5rem;font-size:.8125rem;font-weight:500}.info-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.info-cell{flex-direction:column;gap:.375rem;display:flex}.info-cell-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.8125rem;font-weight:600}.info-cell-value{color:var(--color-text-primary);font-size:1rem;font-weight:500}.panel-section-title{color:var(--color-text-primary);align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:1.125rem;font-weight:600;display:flex}.password-form{flex-direction:column;gap:1.5rem;max-width:500px;display:flex}.form-row{gap:1rem;display:flex}@media (width<=600px){.form-row{flex-direction:column}.info-grid{grid-template-columns:1fr}}.settings-divider{background:var(--color-bg-elevated);height:1px;margin:2rem 0}.security-option-block{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-radius:8px;margin-top:1rem;padding:1.5rem}.rac-field{flex-direction:column;gap:.5rem;width:100%;display:flex}.rac-label{color:var(--color-text-primary);font-size:.875rem;font-weight:500}.rac-input{border:1px solid var(--color-bg-elevated);background:var(--color-bg-base);color:var(--color-text-primary);border-radius:8px;padding:.75rem;font-size:.95rem;transition:border-color .2s}.rac-input:focus{border-color:var(--color-brand-primary);outline:none}.rac-error{color:var(--color-accent-danger);font-size:.75rem}.primary-btn{background:var(--color-brand-primary);color:#fff;border-radius:var(--radius-button);cursor:pointer;box-shadow:var(--shadow-sm);border:none;align-self:flex-start;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s;display:flex}.primary-btn:hover{background:var(--color-brand-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.primary-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{border:2px solid #fff;border-top-color:#0000;border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin}.pref-block{margin-bottom:2rem}.pref-block:last-child{margin-bottom:0}.rac-item-label{align-items:center;gap:.5rem;display:inline-flex}.rac-select{flex-direction:column;gap:.5rem;display:flex}.rac-select-btn{border-radius:var(--radius-button);border:1px solid var(--color-bg-elevated);background:var(--color-bg-base);color:var(--color-text-primary);cursor:pointer;justify-content:space-between;align-items:center;width:200px;padding:.75rem;font-size:.95rem;transition:border-color .2s;display:flex}.rac-select-btn:hover{border-color:var(--color-brand-primary)}.rac-popover{box-shadow:var(--shadow-lg);border-radius:4px;width:200px;background:var(--color-bg-surface)!important;border:1px solid var(--color-bg-elevated)!important}.rac-listbox{flex-direction:column;gap:.25rem;padding:.5rem;display:flex}.rac-listbox-item{cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;padding:.75rem;font-size:.95rem;transition:all .2s;display:flex}.rac-listbox-item:hover,.rac-listbox-item[data-focused]{background:var(--color-bg-base);outline:none}.rac-listbox-item[data-selected]{background:var(--color-brand-primary);color:#fff}.soon-badge{background:var(--color-bg-elevated);color:var(--color-text-secondary);border-radius:4px;padding:.125rem .375rem;font-size:.75rem}.switch-list{flex-direction:column;gap:1rem;display:flex}.rac-switch{cursor:pointer;align-items:center;gap:1rem;display:flex}.switch-track{background:var(--color-bg-elevated);width:40px;height:24px;transition:background .2s;position:relative;border-radius:4px!important}.rac-switch[data-selected] .switch-track{background:var(--color-brand-primary)}.switch-thumb{width:20px;height:20px;box-shadow:var(--shadow-sm);background:#fff;transition:transform .2s;position:absolute;top:2px;left:2px;border-radius:4px!important}.rac-switch[data-selected] .switch-thumb{transform:translate(16px)}.switch-content{flex-direction:column;display:flex}.switch-label{color:var(--color-text-primary);font-size:.95rem;font-weight:500}.switch-desc{color:var(--color-text-secondary);font-size:.8125rem}.aide-page{max-width:1100px;margin:0 auto;padding:2rem}.aide-search{align-items:center;margin-bottom:1.5rem;display:flex;position:relative}.aide-search__icon{color:var(--color-text-muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.aide-search__input{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-button);width:100%;color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-base);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:.8rem 1rem .8rem 2.75rem}.aide-search__input:focus{border-color:var(--color-brand-secondary);box-shadow:var(--shadow-glow);outline:none}.aide-liste{flex-direction:column;gap:.75rem;display:flex}.aide-item{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);overflow:hidden}.aide-item:hover{border-color:var(--color-border)}.aide-item.is-open{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.aide-item__trigger{text-align:left;cursor:pointer;width:100%;color:var(--color-text-primary);transition:background-color var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.35rem;font-family:inherit;display:flex}.aide-item__trigger:hover{background:var(--color-bg-subtle)}.aide-item__trigger:focus-visible{outline:2px solid var(--color-brand-secondary);outline-offset:-2px}.aide-item__titre{font-family:var(--font-family-heading);font-size:var(--font-size-lg);flex-direction:column;gap:.3rem;font-weight:600;line-height:1.35;display:flex}.aide-item__roles{font-family:var(--font-family-sans);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}.aide-item__chevron{color:var(--color-text-secondary);transition:transform var(--transition-normal);flex-shrink:0}.aide-item.is-open .aide-item__chevron{color:var(--color-brand-secondary);transform:rotate(180deg)}.aide-item__panneau{border-top:1px solid var(--color-border-subtle)}.aide-item__contenu{grid-template-columns:1fr 320px;align-items:start;gap:1.75rem;padding:1.5rem 1.35rem;display:grid}.aide-item__texte p{color:var(--color-text-secondary);margin-bottom:.75rem;line-height:1.6}.aide-item__texte p:last-child{margin-bottom:0}.aide-item__texte strong{color:var(--color-text-primary);font-weight:600}.aide-subtitle{font-family:var(--font-family-heading);font-size:var(--font-size-base);color:var(--color-text-primary);margin:1.25rem 0 .5rem;font-weight:700}.aide-steps{counter-reset:etape;margin:0 0 1rem;padding:0;list-style:none}.aide-steps>li{counter-increment:etape;color:var(--color-text-secondary);margin-bottom:.65rem;padding-left:2.15rem;line-height:1.55;position:relative}.aide-steps>li:before{content:counter(etape);border-radius:var(--border-radius-full);background:var(--color-brand-primary);width:1.5rem;height:1.5rem;color:var(--color-text-inverse);font-size:var(--font-size-xs);justify-content:center;align-items:center;font-weight:700;display:flex;position:absolute;top:.1rem;left:0}body.dark-theme .aide-steps>li:before{background:var(--color-bg-strong);color:var(--color-brand-accent)}.aide-note{border-left:3px solid var(--color-accent-success);border-radius:0 var(--radius-card) var(--radius-card) 0;background:var(--color-success-bg);margin:1rem 0;padding:.9rem 1.1rem}.aide-note--warn{border-left-color:var(--color-accent-danger);background:var(--color-danger-bg)}.aide-note--tip{border-left-color:var(--color-accent-warning);background:var(--color-warning-bg)}.aide-note__title{font-size:var(--font-size-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--color-success-text);margin-bottom:.4rem;font-weight:700}.aide-note--warn .aide-note__title{color:var(--color-danger-text)}.aide-note--tip .aide-note__title{color:var(--color-warning-text)}.aide-note p{font-size:var(--font-size-sm);color:inherit;opacity:.92;margin-bottom:.4rem}.aide-note p:last-child{margin-bottom:0}.aide-item__figure{transition:all var(--transition-normal,.3s) ease;margin:0;position:sticky;top:1rem}.aide-item__contenu.is-image-zoomed .aide-item__figure{grid-column:1/-1;margin-top:1.5rem;position:static}.aide-screenshot{border-radius:var(--radius-card);border:1px solid var(--color-border-subtle);background:var(--color-bg-subtle);object-fit:contain;cursor:zoom-in;width:100%;height:auto;transition:transform .2s,box-shadow .2s;display:block;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.aide-screenshot:hover{transform:scale(1.02);box-shadow:0 10px 15px -3px #0000001a}.aide-screenshot.is-zoomed{cursor:zoom-out}.aide-screenshot.is-zoomed:hover{transform:scale(1)}.aide-item__figure figcaption{font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center;margin-top:.55rem}.aide-empty{text-align:center;color:var(--color-text-muted);padding:3.5rem 1.5rem}.aide-empty p{font-size:var(--font-size-base);margin-top:.75rem}.aide-contact{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);color:var(--color-brand-secondary);align-items:flex-start;gap:.9rem;margin-top:2rem;padding:1.15rem 1.35rem;display:flex}.aide-contact strong{color:var(--color-text-primary);font-size:var(--font-size-base);margin-bottom:.2rem;display:block}.aide-contact p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}@media (width<=900px){.aide-item__contenu{grid-template-columns:1fr}.aide-item__figure{order:-1;position:static}}@media (width<=640px){.aide-page{padding:1.25rem}.aide-item__trigger{padding:1rem}.aide-item__contenu{padding:1.15rem 1rem}}.compliance-warning-modal{max-width:500px;padding:2rem}.warning-header{flex-direction:column;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.warning-title{color:var(--color-text-primary);margin:0;font-size:1.25rem}.warning-text{color:var(--color-text-secondary);margin-bottom:1rem;line-height:1.5}.missing-docs-list{border-radius:var(--radius-card);color:var(--color-warning);background:#f59e0b1a;border:1px solid #f59e0b33;margin-bottom:1.5rem;padding:1rem 1rem 1rem 2.5rem;font-weight:500}.missing-docs-list li{margin-bottom:.5rem}.missing-docs-list li:last-child{margin-bottom:0}.warning-subtext{color:var(--color-text-primary);text-align:center;font-weight:600}.icon-input-group{border:1px solid var(--color-bg-elevated);background:var(--color-bg-base);box-sizing:border-box;border-radius:6px;justify-content:space-between;align-items:center;height:38px;padding:0 .625rem;transition:border-color .2s,box-shadow .2s;display:flex}.icon-input-btn{color:var(--color-text-secondary)!important;cursor:pointer!important;width:auto!important;min-width:0!important;height:auto!important;min-height:0!important;box-shadow:none!important;border-radius:var(--radius-button)!important;background:0 0!important;border:none!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;transition:opacity .2s,background .2s!important;display:flex!important}.icon-input-btn:hover{color:var(--color-text-primary)!important;background:#0000000d!important}.icon-input-btn svg{display:block}.number-stepper{border-left:1px solid var(--color-bg-elevated);flex-direction:column;justify-content:center;height:100%;margin-left:.5rem;padding-left:.25rem;display:flex}.stepper-btn{width:20px!important;height:14px!important;padding:2px!important;font-size:.6rem!important;line-height:1!important}.date-segments-container{color:var(--color-text-primary);gap:1px;font-size:.875rem;display:flex}.shifts-page{background-color:var(--color-bg-base);flex-direction:column;gap:2rem;max-width:1200px;min-height:100vh;margin:0 auto;padding:2rem 3rem;display:flex}@media (width<=768px){.shifts-page{padding:1.25rem}}.header-actions{align-items:center;gap:1.5rem;display:flex}.segmented-control{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);display:flex;overflow:hidden;border-radius:4px!important}.control-btn{text-transform:uppercase;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.75rem;font-weight:800;transition:all .2s;display:flex;border-radius:var(--radius-button)!important}.control-btn:hover{background:var(--color-bg-base);color:var(--color-text-primary)}.control-btn.active{background:var(--color-brand-primary);color:#fff}.react-aria-Button{cursor:pointer;border:none;background:var(--color-brand-primary)!important;color:#fff!important;border-radius:var(--radius-button)!important;text-transform:uppercase!important;letter-spacing:.05em!important;padding:.75rem 1.5rem!important;font-size:.8125rem!important;font-weight:800!important}.clear-link:hover{cursor:pointer;color:var(--color-brand-primary)!important;text-transform:uppercase!important;box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important;font-size:.7rem!important;font-weight:800!important;text-decoration:underline!important}.styled-select-container{flex-direction:column;gap:.5rem;display:flex}.select-label{text-transform:uppercase;color:var(--color-text-secondary);opacity:.8;font-size:.65rem;font-weight:800}.select-button{background:var(--color-bg-base)!important;border:1px solid var(--color-bg-elevated)!important;border-radius:var(--radius-button)!important;height:42px!important;color:var(--color-text-primary)!important;justify-content:space-between!important;align-items:center!important;padding:0 1rem!important;font-size:.875rem!important;font-weight:600!important;display:flex!important}.filter-chips{border-top:1px solid var(--color-bg-elevated);flex-wrap:wrap;gap:.5rem;padding-top:1rem;display:flex}.chip{background:var(--color-brand-primary);color:#fff;border-radius:4px;align-items:center;gap:.5rem;padding:.25rem .75rem;font-size:.7rem;font-weight:700;display:flex}.chip button{color:#fff;cursor:pointer;background:#fff3;border:none;padding:2px;display:flex}.vertical-timeline{flex-direction:column;gap:3rem;display:flex}.timeline-group{flex-direction:column;gap:1rem;display:flex}.items-container{flex-direction:column;gap:.75rem;display:flex}.shift-item-row{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);cursor:pointer;align-items:center;min-height:90px;padding:0;transition:all .2s;display:flex;border-radius:4px!important}.shift-item-row:hover{border-color:var(--color-brand-primary);box-shadow:var(--shadow-md);transform:translate(4px)}.shift-time-info{background:var(--color-bg-base);border-right:1px solid var(--color-bg-elevated);flex-direction:column;justify-content:center;align-items:center;min-width:140px;padding:1.5rem;display:flex}.time-display{flex-direction:column;align-items:center;gap:.15rem;display:flex}.hour{color:var(--color-text-primary);font-size:1.125rem;font-weight:800}.separator{color:var(--color-text-secondary);opacity:.5;font-size:.7rem;font-weight:900}.duration-tag{background:var(--color-brand-primary);color:#fff;margin-top:.5rem;padding:1px 6px;font-size:.65rem;font-weight:800}.shift-main-content{flex:1;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.meta-info{gap:1.5rem;display:flex}.price-box{text-align:right}.total-price{color:var(--color-brand-primary);font-size:1.25rem;font-weight:800;display:block}.unit-price{color:var(--color-text-secondary);font-size:.7rem;font-weight:600}.pill-published{color:var(--color-text-secondary)}.pill-in_progress{color:var(--color-accent-info);border-color:var(--color-accent-info);background:#3b82f60d}.pill-to_validate{color:var(--color-accent-warning);border-color:var(--color-accent-warning);background:#f59e0b0d}.pill-validated{color:var(--color-accent-success);border-color:var(--color-accent-success);background:#10b9810d}.pill-disputed{color:var(--color-accent-danger);border-color:var(--color-accent-danger);background:#ef44440d}.status-container{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.validation-indicators{gap:4px;display:flex}.val-dot{border:1px solid var(--color-bg-elevated);border-radius:4px;justify-content:center;align-items:center;width:18px;height:18px;font-size:.6rem;font-weight:900;transition:all .2s;display:flex}.val-dot.empty{color:var(--color-text-secondary);opacity:.3;background:0 0}.val-dot.solid{background:var(--color-accent-success);color:#fff;border-color:var(--color-accent-success);box-shadow:0 0 8px rgba(var(--color-accent-success-rgb), .3)}.quick-actions-bar{gap:.5rem;padding:1.5rem;display:flex}.row-chevron{color:var(--color-bg-elevated);padding-right:1.5rem}.calendar-view{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);padding:2.5rem}.fc{--fc-border-color:var(--color-bg-elevated);--fc-today-bg-color:#2854cc08;--fc-event-border-color:transparent;--fc-neutral-bg-color:var(--color-bg-base);--fc-list-event-hover-bg-color:var(--color-bg-base);font-family:inherit!important}.fc .fc-toolbar{margin-bottom:2rem!important}.fc .fc-toolbar-title{text-transform:uppercase!important;letter-spacing:-.02em!important;color:var(--color-text-primary)!important;font-size:1.5rem!important;font-weight:800!important}.fc .fc-button-primary{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-bg-elevated)!important;color:var(--color-text-primary)!important;border-radius:var(--radius-button)!important;text-transform:uppercase!important;letter-spacing:.05em!important;box-shadow:none!important;padding:.6rem 1.2rem!important;font-size:.65rem!important;font-weight:800!important;transition:all .2s!important}.fc .fc-button-primary:hover{background-color:var(--color-bg-base)!important;border-color:var(--color-text-secondary)!important}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{background-color:var(--color-brand-primary)!important;color:#fff!important;border-color:var(--color-brand-primary)!important}.fc .fc-button-primary:focus{box-shadow:none!important}.fc .fc-button-group,.fc .fc-button-group>.fc-button,.fc-button-wrapper{border-radius:var(--radius-button)!important}.fc .fc-col-header-cell{background:var(--color-bg-base)!important;border-color:var(--color-bg-elevated)!important;padding:1rem 0!important}.fc .fc-col-header-cell-cushion{text-transform:uppercase!important;color:var(--color-text-secondary)!important;font-size:.75rem!important;font-weight:800!important;text-decoration:none!important}.fc-event{cursor:pointer!important;border:none!important;border-radius:4px!important;padding:0!important}.fc-event-button-wrapper{width:100%;height:100%;text-align:left!important;color:inherit!important;cursor:pointer!important;background:0 0!important;border:none!important;margin:0!important;padding:0!important;display:block!important}.fc-event-main-inner{flex-direction:column;gap:2px;padding:4px 6px;display:flex}.fc-event-time{opacity:.9!important;text-transform:uppercase!important;font-size:.65rem!important;font-weight:900!important}.fc-event-title{white-space:normal!important;font-size:.75rem!important;font-weight:700!important}.fc .fc-timegrid-slot{border-color:var(--color-bg-elevated)!important;background:var(--color-bg-surface)!important}.fc .fc-timegrid-slot-label{background:var(--color-bg-base)!important;border-color:var(--color-bg-elevated)!important}.fc .fc-timegrid-slot-label-cushion{color:var(--color-text-secondary)!important;text-transform:uppercase!important;font-size:.7rem!important;font-weight:700!important}.fc .fc-timegrid-axis{background:var(--color-bg-base)!important;border-color:var(--color-bg-elevated)!important}.fc-theme-standard .fc-scrollgrid,.fc-theme-standard td,.fc-theme-standard th{border-color:var(--color-bg-elevated)!important}.shift-tooltip{background:var(--color-bg-surface)!important;color:var(--color-text-primary)!important;box-shadow:var(--shadow-xl)!important;z-index:2000!important;border:1px solid var(--color-bg-elevated)!important;border-radius:4px!important;outline:none!important;min-width:260px!important;padding:1.25rem!important}.tooltip-arrow svg{fill:var(--color-bg-surface)!important;stroke:var(--color-bg-elevated)!important}.tooltip-header{border-bottom:1px solid var(--color-bg-elevated);align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.tooltip-header span{text-transform:uppercase;letter-spacing:.05em;color:var(--color-brand-primary);font-size:.75rem;font-weight:800}.tooltip-body{flex-direction:column;gap:.75rem;display:flex}.tooltip-row{color:var(--color-text-secondary);align-items:center;gap:.75rem;font-size:.8125rem;display:flex}.tooltip-row strong{color:var(--color-text-primary);font-weight:600}.tooltip-row svg{color:var(--color-brand-primary);flex-shrink:0}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot-published{background:var(--color-text-muted)}.dot-in_progress{background:var(--color-accent-info)}.dot-to_validate{background:var(--color-accent-warning)}.dot-validated{background:var(--color-accent-success)}.dot-disputed{background:var(--color-accent-danger)}.menu-popover{background:var(--color-bg-surface)!important;border:1px solid var(--color-bg-elevated)!important;box-shadow:var(--shadow-lg)!important;z-index:1000!important;min-width:220px!important}.select-listbox{background:0 0!important;outline:none!important;max-height:300px!important;padding:.5rem 0!important;list-style:none!important;overflow-y:auto!important}.menu-item{cursor:pointer!important;color:var(--color-text-primary)!important;outline:none!important;justify-content:space-between!important;align-items:center!important;padding:.75rem 1rem!important;font-size:.875rem!important;transition:background .1s!important;display:flex!important}.menu-item[data-focused]{background:var(--color-bg-base)!important}.menu-item[data-selected]{color:var(--color-brand-primary)!important;background:#2854cc0d!important;font-weight:700!important}.empty-icon-box{background:var(--color-bg-base);width:100px;height:100px;color:var(--color-brand-primary);opacity:.6;border-radius:4px;justify-content:center;align-items:center;margin-bottom:.5rem;display:flex}@media (width<=1000px){.shift-main-content{flex-direction:column;align-items:flex-start;gap:1rem}.content-right{justify-content:space-between;width:100%}}@media (width<=768px){.page-header{flex-direction:column;align-items:stretch;gap:1.5rem}.header-actions{flex-direction:column;align-items:stretch}.segmented-control{width:100%}.control-btn{flex:1;justify-content:center}.shift-item-row{flex-direction:column;align-items:stretch;min-height:auto}.shift-time-info{border-right:none;border-bottom:1px solid var(--color-bg-elevated);flex-direction:row;justify-content:space-between;width:100%;padding:1rem 1.5rem}.time-display{flex-direction:row;gap:.5rem}.duration-tag{margin-top:0}.meta-info{flex-direction:column;gap:.5rem}.content-right{flex-direction:column;align-items:flex-start;gap:1.5rem}.price-box{text-align:left}.status-container{flex-direction:row;justify-content:space-between;align-items:flex-start;width:100%}}.jobs-page{flex-direction:column;gap:1.5rem;max-width:1200px;margin:0 auto;padding:1.5rem;display:flex}.jobs-header{justify-content:space-between;align-items:center;display:flex}.jobs-header h2{color:var(--color-text-primary);margin:0;font-size:1.5rem;font-weight:700}.jobs-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.job-card{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);flex-direction:column;justify-content:space-between;gap:1rem;padding:1.25rem;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.job-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.job-card-header{align-items:center;gap:.75rem;display:flex}.job-icon-wrapper{background:var(--color-bg-base);color:var(--color-brand-primary);border-radius:4px;justify-content:center;align-items:center;padding:.5rem;display:flex}.job-title{color:var(--color-text-primary);margin:0;font-size:1.125rem;font-weight:600}.job-description{color:var(--color-text-secondary);flex:1;font-size:.875rem;line-height:1.4}.job-card-footer{border-top:1px solid var(--color-bg-elevated);justify-content:flex-end;gap:.5rem;padding-top:.75rem;display:flex}.job-action-btn{border-radius:var(--radius-button);cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;justify-content:center;align-items:center;padding:.4rem;transition:background .15s,color .15s;display:flex}.job-action-btn:hover{background:var(--color-bg-base);color:var(--color-text-primary)}.job-action-btn.delete:hover{color:var(--color-accent-danger);background:#ef44441a}.shift-details-container{flex-direction:column;gap:2rem;max-width:1400px;margin:0 auto;padding:2rem;display:flex}.breadcrumb{color:var(--color-text-secondary);align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.875rem;display:flex}.back-link-refined{color:var(--color-text-secondary);align-items:center;gap:.25rem;transition:color .2s;display:flex}.back-link-refined:hover{color:var(--color-brand-primary)}.breadcrumb .separator{opacity:.5}.breadcrumb .current{color:var(--color-text-primary);font-weight:500}.status-indicator-dot{border-radius:50%;width:10px;height:10px}.metric-value-small{color:var(--color-text-primary);margin:.5rem 0;font-size:1.5rem;font-weight:700}.shift-details-layout{grid-template-columns:1fr 350px;align-items:start;gap:2rem;display:grid}.layout-main{flex-direction:column;gap:2rem;display:flex}.layout-sidebar{flex-direction:column;gap:2rem;display:flex;position:sticky;top:2rem}.execution-summary{align-items:center;gap:2rem;padding:1rem 0;display:flex}.exec-block{flex-direction:column;display:flex}.exec-block .label{text-transform:uppercase;color:var(--color-text-secondary);letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.exec-block .time{color:var(--color-text-primary);font-size:1.25rem;font-weight:700}.exec-block .date{color:var(--color-text-secondary);font-size:.8rem}.exec-divider{background:var(--color-bg-elevated);width:1px;height:40px}.instructions-body{background:var(--color-bg-base);border-left:4px solid var(--color-brand-primary);padding:1rem}.text-content{color:var(--color-text-primary);white-space:pre-wrap;line-height:1.6}.italic{font-style:italic}.gallery-container{flex-direction:column;gap:2rem;display:flex}.gallery-section h4{text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:1rem;font-size:.8rem;font-weight:700}.photo-grid-refined{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;display:grid}.photo-item{aspect-ratio:1;cursor:pointer;border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-sm);border-radius:4px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.photo-item:hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.photo-item img{object-fit:cover;width:100%;height:100%}.hover-view{opacity:0;color:#fff;background:#0006;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.photo-item:hover .hover-view{opacity:1}.empty-photo-slot{background:var(--color-bg-base);border:1px dashed var(--color-bg-elevated);height:120px;color:var(--color-text-secondary);border-radius:4px;justify-content:center;align-items:center;font-size:.8rem;font-style:italic;display:flex}.assignee-profile{flex-direction:column;gap:1.5rem;display:flex}.profile-header{align-items:center;gap:1rem;display:flex}.avatar-circle{background:var(--color-brand-primary);color:#fff;width:64px;height:64px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.profile-names{flex-direction:column;display:flex}.full-name{color:var(--color-text-primary);font-size:1.1rem;font-weight:700}.user-role{color:var(--color-text-secondary);font-size:.8rem}.profile-actions{gap:.75rem;display:flex}.react-aria-Button.small{padding:.5rem 1rem;font-size:.8rem}.unassigned-block{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;display:flex}.empty-state-icon{background:var(--color-bg-base);width:64px;height:64px;color:var(--color-text-secondary);opacity:.5;border-radius:50%;justify-content:center;align-items:center;display:flex}.context-item{color:var(--color-text-primary);align-items:center;gap:.75rem;padding:.75rem 0;font-weight:600;display:flex}.context-item.sub{margin-top:-.5rem;padding-top:0;padding-left:2.25rem;font-size:.9rem;font-weight:400}.photo-viewer-overlay{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ae6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.photo-viewer-modal{outline:none}.photo-viewer-dialog{cursor:zoom-out;outline:none;justify-content:center;align-items:center;display:flex}.viewer-frame{max-width:90vw;max-height:90vh;animation:.3s cubic-bezier(.16,1,.3,1) scaleIn;position:relative}.viewer-frame img{object-fit:contain;border:1px solid var(--color-bg-elevated);border-radius:4px;max-width:100%;max-height:90vh;box-shadow:0 25px 50px -12px #00000080}.close-btn-round{color:#000;cursor:pointer;z-index:10001;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .2s;display:flex;position:absolute;top:-20px;right:-20px;box-shadow:0 4px 12px #0003}.close-btn-round:hover{transform:scale(1.1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0f172a66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--color-bg-surface);box-shadow:var(--shadow-xl);border:1px solid var(--color-bg-elevated);width:480px;color:var(--color-text-primary);border-radius:4px;outline:none;padding:2.5rem}.modal-content h2{text-transform:uppercase;letter-spacing:-.02em;margin-bottom:1rem;font-size:1.25rem;font-weight:800}.search-field{margin:1.5rem 0}.search-field input{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);width:100%;color:var(--color-text-primary);border-radius:4px;outline:none;padding:.75rem 1rem;font-family:inherit;transition:border-color .2s}.search-field input:focus{border-color:var(--color-brand-primary)}.user-selection-list{flex-direction:column;gap:.5rem;max-height:350px;margin-bottom:1.5rem;padding-right:.5rem;display:flex;overflow-y:auto}.user-select-item{cursor:pointer;background:var(--color-bg-base);border:1px solid #0000;border-radius:4px;align-items:center;gap:1rem;padding:1rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.user-select-item:hover{background:var(--color-bg-surface);border-color:var(--color-brand-primary);transform:translate(4px)}.mini-avatar{background:var(--color-brand-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1rem;font-weight:800;display:flex}.user-info{flex-direction:column;gap:.15rem;display:flex}.user-info .name{color:var(--color-text-primary);font-size:1rem;font-weight:700}.user-info .email{color:var(--color-text-secondary);font-size:.75rem}@media (width<=1100px){.shift-details-layout{grid-template-columns:1fr}.layout-sidebar{position:static}}.validation-tracking{flex-direction:column;gap:1.5rem;padding:.5rem .5rem .5rem 0;display:flex}.validation-step{gap:1.25rem;display:flex;position:relative}.validation-step:not(:last-child):after{content:"";background:var(--color-bg-elevated);width:2px;position:absolute;top:24px;bottom:-12px;left:8px}.validation-step.completed:not(:last-child):after{background:var(--color-accent-success)}.step-icon{z-index:1;background:var(--color-bg-surface);justify-content:center;align-items:center;width:18px;height:18px;display:flex}.step-icon .dot{background:var(--color-bg-elevated);border-radius:50%;width:8px;height:8px}.validation-step.completed .step-icon{color:var(--color-accent-success)}.step-content{flex-direction:column;gap:.25rem;display:flex}.step-role{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);font-size:.75rem;font-weight:800}.step-details{flex-direction:column;display:flex}.validator{color:var(--color-text-primary);font-weight:600}.step-details .date{color:var(--color-text-secondary);font-size:.75rem}.step-status{color:var(--color-text-secondary);opacity:.6;font-size:.8125rem;font-style:italic}.history-timeline{flex-direction:column;padding:.5rem 0;display:flex}.timeline-item{gap:1.25rem;padding-bottom:1.5rem;display:flex;position:relative}.timeline-marker{flex-direction:column;align-items:center;width:12px;display:flex}.timeline-marker .dot{z-index:1;background:var(--color-text-muted);width:12px;height:12px;box-shadow:0 0 0 4px var(--color-bg-base);border-radius:50%}.timeline-marker .line{background:var(--color-bg-elevated);flex:1;width:2px;margin-top:4px;margin-bottom:-1.5rem}.timeline-content{flex-direction:column;flex:1;gap:.25rem;display:flex}.timeline-header{justify-content:space-between;align-items:center;display:flex}.event-type{text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:800}.timeline-content .timestamp{color:var(--color-text-secondary);opacity:.8;font-size:.7rem}.timeline-content .description{color:var(--color-text-primary);margin:.15rem 0;font-size:.875rem}.timeline-content .note{color:var(--color-text-secondary);background:var(--color-bg-elevated);border-radius:4px;margin-top:.25rem;padding:.5rem;font-size:.8rem;font-style:italic}.empty-history{color:var(--color-text-secondary);text-align:center;padding:1rem 0;font-size:.875rem;font-style:italic}.housekeeping-form-container{flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.room-row{border-radius:var(--radius-card);background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);grid-template-columns:80px 1fr 40px;align-items:flex-end;gap:.75rem;padding:.75rem;transition:all .2s;display:grid}.room-row:hover{border-color:var(--color-brand-primary-light);box-shadow:0 4px 12px #0000000d}.icon-input-group{border:1px solid var(--color-bg-elevated);background:var(--color-bg-base);box-sizing:border-box;border-radius:6px;align-items:center;height:38px;padding:0 .75rem;transition:border-color .2s,box-shadow .2s;display:flex}.icon-input-group:focus-within{border-color:var(--color-brand-primary);box-shadow:0 0 0 2px #6c3fff1a}.react-aria-Input{border:1px solid var(--color-bg-elevated);background:var(--color-bg-base);color:var(--color-text-primary);box-sizing:border-box;border-radius:6px;outline:none;width:100%;height:38px;padding:.5rem .75rem;font-size:.875rem;transition:all .2s}.react-aria-Input:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 2px #6c3fff1a}.date-segments-container{gap:1px;font-size:.875rem;display:flex}.date-segment{border-radius:2px;outline:none;padding:0 2px}.modal-footer{border-top:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);border-bottom-right-radius:12px;border-bottom-left-radius:12px;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.rooms-scroll-area{max-height:400px;padding-right:.5rem;overflow-y:auto}.rooms-scroll-area::-webkit-scrollbar{width:6px}.rooms-scroll-area::-webkit-scrollbar-track{background:0 0}.rooms-scroll-area::-webkit-scrollbar-thumb{background:var(--color-bg-elevated);border-radius:10px}.room-type-form{border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);background:var(--color-bg-surface)}.room-types-list table th{text-transform:uppercase;letter-spacing:.025em;font-weight:600}.room-types-list table td{color:var(--color-text-primary)}.icon-btn.danger:hover{color:var(--color-accent-danger);background:#ef44441a}.room-modal-overlay *,.room-modal-overlay :before,.room-modal-overlay :after{border-radius:0!important}.modal-content{flex-direction:column!important;max-height:90vh!important;display:flex!important;overflow:hidden!important}.room-modal-overlay,.modal-overlay{-webkit-backdrop-filter:blur(12px);z-index:99999;background:#00000073;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.image-viewer-wrapper{padding:0;z-index:100000!important;-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important;background:#000000e6!important}.room-modal-content{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);outline:none;flex-direction:column;width:100%;max-width:950px;height:90vh;max-height:800px;display:flex;position:relative;box-shadow:0 40px 100px #0006}.room-modal-dialog{outline:none;flex-direction:column;flex:1;height:100%;display:flex}.room-report-header{background:var(--color-bg-base);border-bottom:1px solid var(--color-bg-elevated);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.report-header-left{align-items:center;gap:1.5rem;display:flex}.room-id-badge{background:var(--color-brand-primary);color:#fff;flex-direction:column;justify-content:center;align-items:center;min-width:100px;padding:.5rem 1rem;display:flex}.room-id-label{letter-spacing:.1em;opacity:.9;font-size:.65rem;font-weight:800}.room-id-number{font-size:1.25rem;font-weight:900}.report-titles{flex-direction:column;display:flex}.report-main-title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-primary);margin:0;font-size:1.15rem;font-weight:800}.report-subtitle-row{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.8rem;display:flex}.type-tag{color:var(--color-brand-primary);font-weight:600}.divider{opacity:.4}.report-header-right{align-items:center;gap:1.25rem;display:flex}.header-stat-item{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.header-stat-item.highlight{color:var(--color-brand-primary);font-weight:600}.close-x-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:.5rem;transition:all .2s;display:flex}.close-x-btn:hover{color:var(--color-accent-danger);background:#ef44440d}.room-report-body{background:var(--color-bg-surface);flex:1;padding:2rem;overflow-y:auto}.report-layout-grid{grid-template-columns:380px 1fr;align-items:start;gap:2.5rem;display:grid}.report-section{flex-direction:column;gap:1.25rem;margin-bottom:2rem;display:flex}.section-title-wrap{color:var(--color-brand-primary);align-items:center;gap:.75rem;display:flex}.section-title-wrap h3{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-primary);margin:0;font-size:.75rem;font-weight:800}.observation-content{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);min-height:100px;padding:1.25rem;position:relative}.comment-text{color:var(--color-text-primary);margin:0;font-size:.95rem;line-height:1.6}.empty-state-comment{height:100%;color:var(--color-text-muted);text-align:center;justify-content:center;align-items:center;font-size:.85rem;font-style:italic;display:flex}.quality-badges-container{gap:.75rem;display:grid}.v-badge-item{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-left:3px solid var(--color-bg-elevated);align-items:center;gap:1rem;padding:.85rem 1.25rem;transition:all .2s;display:flex}.v-badge-item.active{border-left-color:var(--color-accent-success);background:rgba(var(--color-accent-success-rgb), .03)}.v-badge-circle{background:var(--color-bg-elevated);width:28px;height:28px;color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.v-badge-item.active .v-badge-circle{background:var(--color-accent-success);color:#fff}.v-badge-info{flex-direction:column;display:flex}.v-badge-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);font-size:.65rem;font-weight:800}.v-badge-item.active .v-badge-label{color:var(--color-accent-success)}.v-badge-date{color:var(--color-text-muted);margin-top:2px;font-size:.7rem;font-weight:500}.dispute-indicator{background:rgba(var(--color-accent-danger-rgb), .04);border:1px solid rgba(var(--color-accent-danger-rgb), .1);border-left:3px solid var(--color-accent-danger);margin-top:1rem;padding:1rem}.dispute-header{color:var(--color-accent-danger);text-transform:uppercase;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.7rem;font-weight:800;display:flex}.dispute-text{color:var(--color-text-primary);margin:0;font-size:.85rem;line-height:1.5}.gallery-layout{flex-direction:column;gap:2rem;display:flex}.group-title{color:var(--color-text-muted);letter-spacing:.1em;margin:0 0 1rem;font-size:.65rem;font-weight:800}.image-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:1rem;display:grid}.evidence-card{aspect-ratio:1;background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);cursor:zoom-in;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.evidence-card img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.evidence-card:hover img{transform:scale(1.1)}.card-hover-action{color:#fff;opacity:0;background:#0006;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.evidence-card:hover .card-hover-action{opacity:1}.no-evidence-placeholder{border:1px dashed var(--color-bg-elevated);height:100px;color:var(--color-text-muted);grid-column:1/-1;justify-content:center;align-items:center;font-size:.8rem;font-style:italic;display:flex}.room-report-footer{background:var(--color-bg-base);border-top:1px solid var(--color-bg-elevated);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.footer-right{gap:1rem;display:flex}.report-btn-primary{background:var(--color-brand-primary);color:#fff;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border:none;align-items:center;gap:.75rem;padding:.8rem 1.5rem;font-size:.85rem;font-weight:700;transition:all .2s;display:flex}.report-btn-primary:hover:not(:disabled){background:var(--color-brand-secondary);transform:translateY(-1px)}.report-btn-secondary{color:var(--color-text-secondary);border:1px solid var(--color-bg-elevated);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;padding:.8rem 1.5rem;font-size:.85rem;font-weight:700;transition:all .2s}.report-btn-secondary:hover{border-color:var(--color-text-muted);color:var(--color-text-primary)}.report-btn-danger{color:var(--color-accent-danger);border:1px solid var(--color-accent-danger);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;align-items:center;gap:.6rem;padding:.8rem 1.5rem;font-size:.85rem;font-weight:700;transition:all .2s;display:flex}.report-btn-danger:hover{background:#ef44440d}.report-btn-primary:disabled,.report-btn-danger:disabled{opacity:.5;cursor:not-allowed}.scroll-hide::-webkit-scrollbar{width:6px}.scroll-hide::-webkit-scrollbar-track{background:0 0}.scroll-hide::-webkit-scrollbar-thumb{background:var(--color-bg-elevated)}@media (width<=900px){.report-layout-grid{grid-template-columns:1fr;gap:2rem}.room-modal-content{height:95vh;max-height:none}}.image-viewer-modal{box-shadow:none;background:0 0;border:none;outline:none}.viewer-dialog{outline:none;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.viewer-content{cursor:zoom-out;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.main-viewed-image{object-fit:contain;background:#000;border:1px solid #ffffff1a;max-width:90vw;max-height:85vh;box-shadow:0 30px 60px #00000080}.viewer-info{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;border:1px solid #ffffff1a;align-items:center;gap:1.5rem;padding:.75rem 1.5rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.viewer-tag{text-transform:uppercase;letter-spacing:.15em;color:var(--color-brand-primary);font-size:.7rem;font-weight:800}.viewer-counter{opacity:.8;font-size:.85rem;font-weight:600}.viewer-nav{color:#fff;cursor:pointer;background:#ffffff0d;border:none;justify-content:center;align-items:center;width:70px;height:70px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:50%;transform:translateY(-50%)}.viewer-nav:hover:not(:disabled){color:var(--color-brand-primary);background:#ffffff26}.viewer-nav:disabled{opacity:.1;cursor:not-allowed}.viewer-nav.prev{left:2rem}.viewer-nav.next{right:2rem}.viewer-close{color:#fff;cursor:pointer;opacity:.6;background:0 0;border:none;padding:1rem;transition:all .3s;position:absolute;top:2rem;right:2rem}.viewer-close:hover{opacity:1;transform:rotate(90deg)}@media (width<=600px){.room-report-header{flex-direction:column;align-items:flex-start;gap:1rem}.report-header-right{justify-content:space-between;width:100%}.room-report-footer{flex-direction:column-reverse;gap:1rem}.footer-right,.footer-left{width:100%}.report-btn-primary,.report-btn-secondary,.report-btn-danger{justify-content:center;width:100%}}.report-overlay{z-index:100001;-webkit-backdrop-filter:blur(6px);background:#0c1a1673;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.report-modal{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);width:100%;max-width:470px;box-shadow:var(--shadow-2xl);outline:none;overflow:hidden}.report-modal .modal-dialog{outline:none;flex-direction:column;display:flex}.report-modal .report-header{align-items:flex-start;gap:.9rem;padding:1.35rem 1.5rem 1rem;display:flex}.report-header-icon{border-radius:var(--radius-card);background:var(--color-danger-bg);width:40px;height:40px;color:var(--color-accent-danger);flex-shrink:0;justify-content:center;align-items:center;display:flex}.report-modal .report-title{font-family:var(--font-family-heading);font-size:var(--font-size-xl);letter-spacing:-.01em;color:var(--color-text-primary);margin:0;font-weight:700}.report-modal .report-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:.15rem 0 0}.report-modal .close-btn-round{cursor:pointer;width:32px;height:32px;transition:background-color var(--transition-fast), color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;background:var(--color-bg-muted)!important;border-radius:var(--radius-button)!important;box-shadow:none!important;color:var(--color-text-secondary)!important;border:none!important;padding:0!important;display:flex!important}.report-modal .close-btn-round:hover{background:var(--color-bg-strong)!important;color:var(--color-text-primary)!important}.report-body{flex-direction:column;gap:.5rem;padding:0 1.5rem 1.25rem;display:flex}.report-label{font-size:var(--font-size-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--color-text-secondary);font-weight:700}.required-star{color:var(--color-accent-danger);margin-left:2px}.report-textarea{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-button);width:100%;min-height:110px;font-family:inherit;font-size:var(--font-size-base);color:var(--color-text-primary);resize:vertical;transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);padding:.8rem .9rem;line-height:1.5}.report-textarea::placeholder{color:var(--color-text-muted)}.report-textarea:focus{border-color:var(--color-brand-secondary);background:var(--color-bg-surface);box-shadow:var(--shadow-glow);outline:none}.report-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.report-footer{border-top:1px solid var(--color-border-subtle);background:var(--color-bg-subtle);justify-content:flex-end;gap:.65rem;padding:1.1rem 1.5rem;display:flex}.report-footer .footer-btn{justify-content:center;min-width:110px}.report-footer .react-aria-Button:not(.ghost){background:var(--color-accent-danger)!important;color:#fff!important;border-color:#0000!important}.report-footer .react-aria-Button:not(.ghost):hover{background:#a93226!important}.report-footer .react-aria-Button.ghost{border:1px solid var(--color-border)!important;color:var(--color-text-secondary)!important;box-shadow:none!important;background:0 0!important}.report-footer .react-aria-Button.ghost:hover{background:var(--color-bg-muted)!important;color:var(--color-text-primary)!important}@media (width<=520px){.report-footer{flex-direction:column-reverse}.report-footer .footer-btn{width:100%}}.housekeeping-page{max-width:1600px;margin:0 auto;padding:2rem}.housekeeping-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;display:flex}.header-title-section h1{margin:0;font-size:1.75rem;font-weight:800}.header-title-section p{color:var(--color-text-secondary);margin:.25rem 0 0;font-size:.9rem}.header-actions{flex-shrink:0;gap:1rem;display:flex}.filters-panel{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);margin-bottom:2.5rem;padding:.75rem 1rem}.filters-grid{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.filter-item{flex:220px;min-width:0}.filter-input-group{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);transition:all var(--transition-normal);border-radius:4px;align-items:center;display:flex;position:relative}.filter-input-group:hover{border-color:var(--color-brand-primary-light);background:var(--color-bg-surface)}.filter-input-group:focus-within{border-color:var(--color-brand-primary);background:var(--color-bg-surface);box-shadow:0 0 0 3px rgba(var(--color-brand-primary-rgb), .1)}.filter-icon{color:var(--color-text-secondary);opacity:.6;pointer-events:none;transition:color var(--transition-fast), opacity var(--transition-fast);display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.filter-input-group select{width:100%;height:42px;color:var(--color-text-primary);cursor:pointer;appearance:none;font-size:.875rem;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important;padding:0 1rem 0 2.5rem!important}.date-filter{flex:360px}.date-input{padding:0 2px;display:flex}.date-segment{color:var(--color-text-primary);border-radius:4px;outline:none;padding:0 1px}.date-segment[data-placeholder]{color:var(--color-text-muted)}.date-segment:focus{background:var(--color-brand-primary);color:#fff}.missions-grid{grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:1.5rem;display:grid}.mission-card{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);flex-direction:column;gap:1.25rem;padding:1.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.mission-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-brand-primary-light);transform:translateY(-2px)}.mission-card-header{justify-content:space-between;align-items:flex-start;display:flex}.mission-info h4{margin:0 0 .25rem;font-size:1rem;font-weight:700}.mission-meta{color:var(--color-text-secondary);flex-wrap:wrap;gap:1rem;font-size:.75rem;display:flex}.meta-item{align-items:center;gap:.35rem;display:flex}.mission-stats{text-align:right}.mission-price{color:var(--color-brand-primary);font-size:1.25rem;font-weight:800;display:block}.mission-rooms-count{color:var(--color-text-muted);font-size:.7rem;font-weight:500}.mission-progress-container{background:var(--color-bg-elevated);border-radius:4px;height:4px;margin:.5rem 0;overflow:hidden}.mission-progress-bar{background:linear-gradient(90deg, var(--color-brand-primary), var(--color-brand-primary));height:100%;transition:width .5s ease-out}.room-list{background:rgba(var(--color-brand-primary-rgb), .02);border:1px solid var(--color-bg-elevated);border-radius:4px;flex-direction:column;flex-grow:1;gap:.5rem;padding:.75rem;display:flex}.room-item{border-radius:var(--radius-card);background:var(--color-bg-surface);border:1px solid #0000;justify-content:space-between;align-items:center;padding:.4rem .6rem;font-size:.825rem;transition:border-color .2s;display:flex}.room-item:hover{border-color:var(--color-bg-elevated)}.room-item.completed{opacity:.8}.room-item.validated{border-color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb), .05)}.room-info{align-items:center;gap:.6rem;display:flex}.room-status-icon{flex-shrink:0}.room-type-tag{background:var(--color-bg-elevated);color:var(--color-text-secondary);border-radius:4px;padding:.1rem .4rem;font-size:.7rem}.mission-card-footer{border-top:1px solid var(--color-bg-elevated);justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:.75rem;display:flex}.mission-status-badge{text-transform:uppercase;letter-spacing:.025em;border-radius:4px;padding:.25rem .6rem;font-size:.65rem;font-weight:700}.status-badge-planned{background:var(--status-planned-bg);color:var(--status-planned-text)}.status-badge-published{background:var(--status-published-bg);color:var(--status-published-text)}.status-badge-in_progress{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-badge-completed{background:var(--color-success-bg);color:var(--color-success-text)}.created-by-info{color:var(--color-text-muted);font-size:.65rem}.timeline-date-header{align-items:center;gap:1rem;margin:2.5rem 0 1.25rem;display:flex}.timeline-date-header h3{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.875rem;font-weight:700}.timeline-line{background:var(--color-bg-elevated);flex:1;height:1px}.room-comment-tooltip{cursor:help;align-items:center;margin-left:.5rem;display:flex}[title]:hover:after{content:attr(title);background:var(--color-bg-elevated);color:var(--color-text-primary);white-space:pre-wrap;max-width:200px;box-shadow:var(--shadow-md);z-index:10;border-radius:4px;padding:.4rem .6rem;font-size:.7rem;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.validation-badges{gap:4px;display:flex}.v-badge{background:var(--color-bg-elevated);width:20px;height:20px;color:var(--color-text-muted);border:1px solid var(--color-bg-elevated);cursor:help;border-radius:4px;justify-content:center;align-items:center;font-size:10px;font-weight:800;transition:all .2s;display:flex}.v-badge.validated{background:var(--color-brand-primary);color:#fff;border-color:var(--color-brand-primary)}.small-success{background:var(--color-accent-success)!important;color:#fff!important;border:none!important;border-radius:4px!important;padding:.3rem .6rem!important;font-size:.75rem!important}.small-danger{background:var(--color-accent-error)!important;color:#fff!important;border:none!important;border-radius:4px!important;padding:.3rem .6rem!important;font-size:.75rem!important}.date-filter{flex:400px;max-width:500px}.date-input-group{align-items:center;gap:2px;width:100%;height:42px;display:flex;padding:0 .5rem 0 2.8rem!important}.date-separator{color:var(--color-text-muted);padding:0 8px;font-size:1rem;font-weight:500}.filter-actions{align-items:center;margin-left:auto;padding-left:1rem;display:flex}.filter-reset-btn{letter-spacing:.05em;flex-shrink:0;height:42px;background:var(--color-bg-elevated)!important;color:var(--color-text-secondary)!important;border:1px solid var(--color-bg-elevated)!important;border-radius:var(--radius-button)!important;transition:all var(--transition-fast)!important;padding:0 1.25rem!important;font-size:.75rem!important;font-weight:700!important}.filter-reset-btn:hover:not([data-disabled]){background:var(--color-bg-base)!important;color:var(--color-accent-danger)!important;border-color:rgba(var(--color-accent-danger-rgb), .2)!important}.filter-reset-btn[data-disabled]{opacity:.45;pointer-events:none;cursor:not-allowed!important}.filters-grid .filter-item.date-filter{flex-flow:wrap;flex:2 420px;align-items:flex-end;gap:.75rem;max-width:none;display:flex}.filter-datepicker{flex-direction:column;flex:180px;gap:.3rem;min-width:0;display:flex}.filter-datepicker .date-input-group{padding-left:.9rem!important}.filter-datepicker .date-input{white-space:nowrap;flex:1}.filter-datepicker .date-input-group[data-invalid]{border-color:var(--color-accent-danger)!important;background:var(--color-danger-bg)!important}.filter-datepicker .date-input-group[data-invalid] .date-segment{color:var(--color-danger-text)}.filter-date-label{font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);font-weight:700}.filter-calendar-popover{background:var(--color-bg-panel);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);z-index:100;padding:1rem}.filter-calendar-header{color:var(--color-text-primary);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.85rem;display:flex}.filter-calendar-heading{text-align:center;font-family:var(--font-family-heading);text-transform:capitalize;flex:1;margin:0;font-size:.95rem;font-weight:600}.calendar-nav-btn{cursor:pointer;justify-content:center;align-items:center;width:28px;height:28px;font-size:.7rem;border-radius:var(--radius-button)!important;box-shadow:none!important;color:var(--color-text-secondary)!important;background:0 0!important;border:none!important;padding:0!important;display:flex!important}.calendar-nav-btn:hover{background:var(--color-bg-muted)!important;color:var(--color-text-primary)!important}.filter-calendar-weekday{color:var(--color-text-muted);text-align:center;padding-bottom:.5rem;font-size:.75rem;font-weight:600}.filter-calendar-cell{border-radius:var(--radius-button);width:32px;height:32px;color:var(--color-text-primary);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);outline:none;justify-content:center;align-items:center;margin:0 auto 4px;font-size:.875rem;display:flex}.filter-calendar-cell[data-hovered]{background:var(--color-bg-muted)}.filter-calendar-cell[data-selected]{background:var(--color-brand-primary);color:var(--color-text-inverse);font-weight:600}.filter-calendar-cell[data-outside-month]{color:var(--color-text-muted);opacity:.45}.filter-calendar-cell[data-unavailable],.filter-calendar-cell[data-disabled]{opacity:.35;cursor:not-allowed}.filter-calendar-cell[data-focus-visible]{outline:2px solid var(--color-brand-secondary);outline-offset:1px}@media (width<=640px){.date-filter{flex-direction:column;align-items:stretch}}.date-picker-trigger{cursor:pointer;width:30px;height:30px;transition:background-color var(--transition-fast), color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;border-radius:var(--radius-button)!important;box-shadow:none!important;color:var(--color-text-secondary)!important;background:0 0!important;border:none!important;padding:0!important;display:flex!important}.date-picker-trigger:hover{background:var(--color-bg-muted)!important;color:var(--color-text-primary)!important}.date-picker-trigger[data-focus-visible]{outline:2px solid var(--color-brand-secondary);outline-offset:1px}.status-badge-validated{background:var(--color-success-bg);color:var(--color-success-text)}.status-badge-disputed{background:var(--color-danger-bg);color:var(--color-danger-text)}@media (width<=1024px){.housekeeping-page{padding:1.25rem}.missions-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem}.header-title-section h1{font-size:1.5rem}}@media (width<=768px){.housekeeping-header{flex-direction:column;align-items:stretch}.header-actions{grid-template-columns:1fr 1fr;display:grid}.filter-item,.date-filter{flex:100%}.missions-grid{grid-template-columns:1fr}.mission-card{padding:1.25rem}}@media (width<=480px){.header-actions{grid-template-columns:1fr}.header-actions span{display:block}.mission-card-header{flex-direction:column;gap:1rem}.mission-stats{text-align:left;border-top:1px solid var(--color-bg-elevated);justify-content:space-between;align-items:center;width:100%;padding-top:.75rem;display:flex}.mission-price{font-size:1.1rem}}.filter-input-group .select-label{display:none}.menu-item:hover{background:var(--color-bg-base)}.menu-item[data-focused]{background:var(--color-bg-base);color:var(--color-brand-primary)}.filter-input-group .filter-icon{flex-shrink:0;margin-right:.25rem}.hk-details-simple{max-width:1200px;margin:0 auto;padding:2.5rem;font-family:inherit}.hk-header-simple{margin-bottom:3rem}.hk-back{color:var(--color-text-secondary);align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.hk-back:hover{color:var(--color-brand-primary)}.hk-title-block{align-items:center;gap:1.5rem;margin-bottom:1rem;display:flex}.hk-title-block h1{color:var(--color-text-primary);letter-spacing:-.03em;margin:0;font-size:2.25rem;font-weight:800}.hk-badge-primary{background:var(--color-brand-primary);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:6px 14px;font-size:.8rem;font-weight:700}.hk-badge-primary.is-late{background:var(--color-accent-danger);animation:2s infinite pulse-late}@keyframes pulse-late{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.hk-meta-row{color:var(--color-text-secondary);gap:2rem;display:flex}.hk-meta-item{align-items:center;gap:.5rem;font-size:.95rem;display:flex}.hk-main-grid{grid-template-columns:1fr 320px;align-items:start;gap:2.5rem;display:grid}@media (width<=900px){.hk-main-grid{grid-template-columns:1fr}}.hk-card{border:1px solid var(--color-border-subtle);background:#fff;border-radius:4px;padding:2rem;box-shadow:0 4px 24px #0000000a}.hk-card-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.hk-card-header h2{margin:0;font-size:1.25rem;font-weight:700}.hk-count{color:var(--color-text-secondary);font-weight:600}.hk-room-list{flex-direction:column;gap:.75rem;display:flex}.hk-room-row{background:var(--color-bg-base);cursor:pointer;border-radius:4px;align-items:center;padding:1.25rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.hk-room-row:hover{border:1px solid var(--color-brand-primary);background:#fff;transform:translateY(-2px);box-shadow:0 10px 20px #0000000d}.hk-room-number{width:44px;height:44px;color:var(--color-brand-primary);background:#fff;border-radius:4px;justify-content:center;align-items:center;margin-right:1.25rem;font-weight:800;display:flex}.is-completed .hk-room-number{background:var(--color-success-bg);color:var(--color-success-text)}.is-validated .hk-room-number{background:rgba(var(--color-brand-primary-rgb), .1);color:var(--color-brand-primary)}.hk-room-info{flex-direction:column;flex:1;display:flex}.hk-room-name{color:var(--color-text-primary);font-weight:700}.hk-room-type{color:var(--color-text-muted);font-size:.8rem}.hk-room-status{text-align:center;flex:1}.hk-status-text{text-transform:uppercase;align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:inline-flex}.hk-status-text.completed{color:var(--color-success-text)}.hk-status-text.validated{color:var(--color-brand-primary)}.hk-status-text.pending{color:var(--color-text-muted);opacity:.5}.hk-room-price{color:var(--color-text-primary);margin:0 1.5rem;font-weight:800}.hk-arrow{color:var(--color-text-muted);opacity:.3;transition:transform .2s}.hk-room-row:hover .hk-arrow{opacity:1;color:var(--color-brand-primary);transform:translate(4px)}.hk-sidebar-simple{flex-direction:column;gap:1.5rem;display:flex}.hk-sidebar-simple h3{text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.05em;margin:0 0 1rem;font-size:.85rem}.hk-progress-value{color:var(--color-brand-primary);margin-bottom:.5rem;font-size:2.5rem;font-weight:900}.hk-progress-bar{background:var(--color-bg-base);border-radius:px;height:8px;margin-bottom:1rem;overflow:hidden}.hk-progress-fill{background:var(--color-brand-primary);border-radius:4px;height:100%;transition:width .8s}.hk-progress-detail{color:var(--color-text-secondary);margin:0;font-size:.85rem}.hk-user-block{align-items:center;gap:1rem;display:flex}.hk-avatar{background:var(--color-brand-primary);color:#fff;border-radius:4px;justify-content:center;align-items:center;width:48px;height:48px;font-weight:800;display:flex}.hk-user-text{flex-direction:column;display:flex}.hk-user-name{color:var(--color-text-primary);font-weight:700}.hk-user-role{color:var(--color-text-muted);font-size:.75rem}.instructions p{color:var(--color-text-secondary);margin:0;font-size:.9rem;line-height:1.6}.loading-simple{text-align:center;color:var(--color-text-muted);padding:100px;font-weight:600}.notifications-page{max-width:1100px;min-height:100vh;margin:0 auto;padding:2.5rem}.dashboard-header{justify-content:space-between;align-items:center;margin-bottom:2.5rem;display:flex}.page-title{letter-spacing:-.03em;color:var(--color-text-primary);margin-bottom:.5rem;font-size:1.875rem;font-weight:800}.page-subtitle{color:var(--color-text-secondary);opacity:.8;font-size:1rem}.btn-mark-all{border:1px solid var(--color-bg-elevated);border-radius:var(--radius-button);color:var(--color-text-primary);cursor:pointer;background:0 0;align-items:center;gap:.625rem;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.btn-mark-all:hover:not(:disabled){background:var(--color-bg-elevated);transform:translateY(-2px)}.btn-mark-all:disabled{opacity:.3;cursor:not-allowed}.notifications-content{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-lg);border-radius:4px;overflow:hidden}.content-toolbar{background:rgba(var(--color-bg-elevated), .3);border-bottom:1px solid var(--color-bg-elevated);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.filter-tabs{background:var(--color-bg-base);border-radius:4px;gap:.25rem;padding:.3125rem;display:flex}.tab-btn{border-radius:var(--radius-button);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:.8125rem;font-weight:600;transition:all .2s;display:flex}.tab-btn.active{background:var(--color-bg-surface);color:var(--color-brand-primary);box-shadow:var(--shadow-sm)}.tab-badge{background:var(--color-brand-primary);color:#fff;border-radius:100px;min-width:18px;padding:2px 6px;font-size:.7rem}.search-bar{width:100%;max-width:300px;position:relative}.search-icon{color:var(--color-text-secondary);opacity:.5;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-input{border:1px solid var(--color-bg-elevated);background:var(--color-bg-base);width:100%;color:var(--color-text-primary);border-radius:4px;padding:.625rem 1rem .625rem 2.5rem;font-size:.875rem;transition:all .2s}.search-input:focus{border-color:var(--color-brand-primary);background:var(--color-bg-surface);outline:none}.notification-item{border-bottom:1px solid var(--color-bg-elevated);cursor:pointer;background:var(--color-bg-surface);gap:1.25rem;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.notification-item:hover{background:var(--color-bg-base);padding-left:1.75rem}.notification-item.unread{background:rgba(var(--color-brand-primary-rgb), .03)}.notif-indicator{background:var(--color-brand-primary);opacity:0;width:4px;transition:all .3s;position:absolute;top:0;bottom:0;left:0}.notification-item.unread .notif-indicator{opacity:1}.notif-icon-container{background:var(--color-bg-base);width:50px;height:50px;color:var(--color-text-secondary);border:1px solid var(--color-bg-elevated);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:all .3s;display:flex}.notification-item:hover .notif-icon-container{transform:scale(1.05)rotate(2deg)}.type-message .notif-icon-container{color:var(--color-accent-info);background:#3b82f61a}.type-success .notif-icon-container{color:var(--color-accent-success);background:#10b9811a}.type-warning .notif-icon-container{color:var(--color-accent-warning);background:#f59e0b1a}.type-task .notif-icon-container{color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb), .1)}.notification-item.unread .notif-icon-container{box-shadow:0 0 15px rgba(var(--color-brand-primary-rgb), .1)}.notif-main{flex:1;min-width:0}.notif-header{justify-content:space-between;align-items:baseline;margin-bottom:.375rem;display:flex}.notif-title{color:var(--color-text-primary);margin:0;font-size:1.0625rem;font-weight:700;transition:color .2s}.notification-item:hover .notif-title{color:var(--color-brand-primary)}.notif-time{color:var(--color-text-secondary);font-size:.75rem;font-weight:500}.notif-message{color:var(--color-text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.notification-item.unread .notif-message{color:var(--color-text-primary);font-weight:400}.notif-action{opacity:0;align-items:center;transition:all .3s;display:flex;transform:translate(-10px)}.notification-item:hover .notif-action{opacity:1;transform:translate(0)}.arrow-icon{color:var(--color-brand-primary)}.empty-state{text-align:center;flex-direction:column;align-items:center;padding:5rem 2rem;display:flex}.empty-icon-wrapper{background:var(--color-bg-base);width:90px;height:90px;color:var(--color-text-secondary);opacity:.5;border-radius:100px;justify-content:center;align-items:center;margin-bottom:1.5rem;display:flex}.loading-state{text-align:center;padding:4rem}.shimmer{background:linear-gradient(90deg, transparent, rgba(var(--color-brand-primary-rgb), .1), transparent);background-size:200% 100%;border-radius:4px;width:60px;height:60px;margin:0 auto 1rem;animation:1.5s infinite shimmer}body:not(.dark-theme) .notification-item.unread{background:rgba(var(--color-brand-primary-rgb), .05)}body:not(.dark-theme) .notifications-content{background:#fff}.pagination-container{border-top:1px solid var(--color-bg-elevated);background:rgba(var(--color-bg-elevated), .1);justify-content:center;align-items:center;gap:1.5rem;margin-top:1rem;padding:1.5rem;display:flex}.pagination-btn{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-button);color:var(--color-text-primary);cursor:pointer;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:all .2s;display:flex}.pagination-btn:hover:not(:disabled){border-color:var(--color-brand-primary);color:var(--color-brand-primary);transform:translateY(-1px)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-pages{align-items:center;gap:.5rem;display:flex}.page-number{border:1px solid var(--color-bg-elevated);background:var(--color-bg-base);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;font-size:.8125rem;font-weight:700;transition:all .2s;display:flex}.page-number:hover:not(.active){border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.page-number.active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:#fff;box-shadow:0 4px 12px rgba(var(--color-brand-primary-rgb), .3)}.pagination-info{text-align:center;background:var(--color-bg-base);color:var(--color-text-muted);padding:1rem;font-size:.75rem;font-style:italic}.inv-page{flex-direction:column;gap:1.5rem;max-width:1600px;min-height:100%;margin:0 auto;padding:2rem 2.5rem;display:flex}.inv-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.inv-title{color:var(--color-text-primary);margin:0 0 .25rem;font-size:1.75rem;font-weight:700}.inv-subtitle{color:var(--color-text-secondary);margin:0;font-size:.9rem}.inv-tabs{border-bottom:1.5px solid var(--color-bg-elevated);gap:1.5rem;margin-top:1rem;display:flex}.inv-tab{color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.6rem;margin-bottom:-1.5px;padding:.75rem .25rem;font-size:.95rem;font-weight:600;display:flex}.inv-tab:hover{color:var(--color-brand-primary)}.inv-tab--active{color:var(--color-brand-primary);border-bottom-color:var(--color-brand-primary)}.inv-kpi-row{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.inv-kpi-card{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast), transform var(--transition-fast);align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.inv-kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.inv-kpi-icon{background:rgb(from var(--kpi-color) r g b / .12);width:44px;height:44px;color:var(--kpi-color);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.inv-kpi-value{color:var(--color-text-primary);font-size:1.3rem;font-weight:700;line-height:1.2}.inv-kpi-label{color:var(--color-text-secondary);margin-top:2px;font-size:.8rem}.inv-toolbar{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex}.inv-status-chips{flex-wrap:wrap;gap:.5rem;display:flex}.inv-chip{border-radius:var(--radius-pill);border:1.5px solid var(--color-bg-elevated);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;align-items:center;gap:.4rem;padding:.35rem .85rem;font-size:.82rem;font-weight:600;display:inline-flex}.inv-chip:hover{border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.inv-chip--active,.inv-chip--active:hover{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:#fff}.inv-chip--PENDING.inv-chip--active{background:var(--color-accent-warning);border-color:var(--color-accent-warning)}.inv-chip--VALIDATED.inv-chip--active{background:var(--color-accent-info);border-color:var(--color-accent-info)}.inv-chip--PAID.inv-chip--active{background:var(--color-accent-success);border-color:var(--color-accent-success)}.inv-chip--REJECTED.inv-chip--active{background:var(--color-accent-danger);border-color:var(--color-accent-danger)}.inv-chip-count{color:inherit;border-radius:var(--radius-pill);text-align:center;background:#ffffff40;min-width:18px;padding:0 5px;font-size:.75rem;font-weight:700}.inv-chip:not(.inv-chip--active) .inv-chip-count{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.inv-controls{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.inv-search-box{border:1.5px solid var(--color-bg-elevated);border-radius:var(--border-radius-sm);background:var(--color-bg-base);min-width:220px;color:var(--color-text-secondary);transition:border-color var(--transition-fast);flex:1;align-items:center;gap:.5rem;padding:.45rem .75rem;display:flex}.inv-search-box:focus-within{border-color:var(--color-brand-primary);color:var(--color-text-primary);box-shadow:0 0 0 3px rgb(from var(--color-brand-primary) r g b / .1)}.inv-search-input{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-size:.875rem}.inv-search-input::placeholder{color:var(--color-text-muted)}.inv-search-clear{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;align-items:center;padding:0;display:flex}.inv-search-clear:hover{color:var(--color-text-primary)}.inv-select{border:1.5px solid var(--color-bg-elevated);border-radius:var(--border-radius-sm);background:var(--color-bg-base);color:var(--color-text-primary);cursor:pointer;transition:border-color var(--transition-fast);outline:none;padding:.45rem .7rem;font-size:.85rem}.inv-select:focus,.inv-select:hover{border-color:var(--color-brand-primary)}.inv-btn-ghost{border:1.5px solid var(--color-bg-elevated);border-radius:var(--radius-button);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.85rem;font-weight:500;display:inline-flex}.inv-btn-ghost:hover{border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.inv-workspace{transition:grid-template-columns var(--transition-normal);grid-template-columns:1fr;align-items:start;gap:1rem;display:grid}.inv-workspace--split{grid-template-columns:1fr 360px}.inv-table-wrap{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);flex-direction:column;min-height:200px;display:flex;overflow:auto hidden}.inv-table-wrap>.inv-table{min-width:600px}.inv-table{border-collapse:collapse;width:100%;font-size:.875rem}.inv-table thead{background:var(--color-bg-base);border-bottom:1px solid var(--color-bg-elevated);z-index:1;position:sticky;top:0}.inv-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);text-align:left;white-space:nowrap;padding:.75rem 1rem;font-size:.78rem;font-weight:600}.inv-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;display:table-cell}.inv-th-sortable:hover{color:var(--color-brand-primary)}.inv-table th.inv-th-sortable{display:table-cell}.inv-table th{vertical-align:middle}.inv-table td{border-bottom:1px solid var(--color-bg-elevated);vertical-align:middle;padding:.875rem 1rem}.inv-table tbody tr:last-child td{border-bottom:none}.inv-row{cursor:pointer;transition:background var(--transition-fast)}.inv-row:hover{background:var(--color-bg-base)}.inv-row--selected{outline:2px solid var(--color-brand-primary);outline-offset:-2px;background:rgb(from var(--color-brand-primary) r g b / .06)!important}.inv-cell-primary{color:var(--color-text-primary);font-weight:500}.inv-cell-muted{color:var(--color-text-muted);font-size:.85rem}.inv-amount{color:var(--color-brand-primary);font-size:.9rem;font-weight:700}.inv-badge{border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.inv-badge--lg{padding:.35rem .9rem;font-size:.85rem}.inv-badge--PENDING{background:rgb(from var(--color-accent-warning) r g b / .15);color:var(--color-accent-warning)}.inv-badge--VALIDATED{background:rgb(from var(--color-accent-info) r g b / .15);color:var(--color-accent-info)}.inv-badge--PAID{background:rgb(from var(--color-accent-success) r g b / .15);color:var(--color-accent-success)}.inv-badge--REJECTED{background:rgb(from var(--color-accent-danger) r g b / .15);color:var(--color-accent-danger)}.inv-doc-btn{border-radius:var(--radius-button);border:1.5px solid var(--color-bg-elevated);color:var(--color-brand-primary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;align-items:center;gap:.35rem;padding:.4rem .8rem;font-size:.8rem;font-weight:600;display:inline-flex}.inv-doc-btn:hover{background:rgb(from var(--color-brand-primary) r g b / .08);border-color:var(--color-brand-primary)}.inv-doc-btn:disabled{opacity:.5;cursor:not-allowed}.inv-doc-btn--full{justify-content:center;width:100%;margin-top:.25rem}.sort-icon-idle{color:var(--color-text-muted);vertical-align:middle}.sort-icon-active{color:var(--color-brand-primary);vertical-align:middle}.inv-pagination{border-top:1px solid var(--color-bg-elevated);background:var(--color-bg-base);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.inv-page-info{color:var(--color-text-secondary);font-size:.82rem}.inv-page-btns{align-items:center;gap:.25rem;display:flex}.inv-page-btn{border-radius:var(--radius-button);border:1.5px solid var(--color-bg-elevated);background:var(--color-bg-surface);width:32px;height:32px;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:.82rem;font-weight:500;display:flex}.inv-page-btn:hover:not(:disabled){border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.inv-page-btn:disabled{opacity:.4;cursor:not-allowed}.inv-page-btn--active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:#fff}.inv-page-ellipsis{color:var(--color-text-muted);padding:0 .25rem}.inv-empty{color:var(--color-text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;font-size:.95rem;display:flex}.inv-spinner{border:3px solid var(--color-bg-elevated);border-top-color:var(--color-brand-primary);border-radius:50%;width:36px;height:36px;animation:.75s linear infinite inv-spin}@keyframes inv-spin{to{transform:rotate(360deg)}}.inv-panel{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);box-shadow:var(--shadow-md);flex-direction:column;max-height:calc(100vh - 2rem);animation:.4s cubic-bezier(.16,1,.3,1) both inv-panel-in;display:flex;position:sticky;top:1rem;overflow:hidden}@keyframes inv-panel-in{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.inv-panel-header{animation:.5s cubic-bezier(.16,1,.3,1) .1s both inv-fade-slide-up}.inv-panel-body>*{animation:.5s cubic-bezier(.16,1,.3,1) both inv-fade-slide-up}.inv-panel-body>:first-child{animation-delay:.15s}.inv-panel-body>:nth-child(2){animation-delay:.2s}.inv-panel-body>:nth-child(3){animation-delay:.25s}.inv-panel-actions{animation:.5s cubic-bezier(.16,1,.3,1) .3s both inv-fade-slide-up}@keyframes inv-fade-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.inv-panel-header{border-bottom:1px solid var(--color-bg-elevated);background:var(--color-bg-base);justify-content:space-between;align-items:flex-start;gap:.5rem;padding:1.25rem 1.25rem 1rem;display:flex}.inv-panel-title{color:var(--color-text-primary);font-size:1rem;font-weight:700}.inv-panel-sub{color:var(--color-text-secondary);margin-top:2px;font-size:.82rem}.inv-panel-close{cursor:pointer;color:var(--color-text-muted);border-radius:var(--radius-card);transition:color var(--transition-fast);background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;display:flex}.inv-panel-close:hover{color:var(--color-text-primary)}.inv-panel-body{flex-direction:column;flex:1;gap:1rem;padding:1.25rem;display:flex;overflow-y:auto}.inv-panel-dl{grid-template-columns:auto 1fr;gap:.5rem 1rem;margin:0;font-size:.875rem;display:grid}.inv-panel-dl dt{color:var(--color-text-secondary);white-space:nowrap;font-weight:500}.inv-panel-dl dd{color:var(--color-text-primary);word-break:break-word;margin:0;font-weight:500}.inv-panel-amount{font-size:1rem;color:var(--color-brand-primary)!important;font-weight:700!important}.inv-panel-reject-reason{font-style:italic;color:var(--color-accent-danger)!important}.inv-panel-actions{border-top:1px solid var(--color-bg-elevated);flex-direction:column;gap:.5rem;padding:1rem 1.25rem;display:flex}.inv-panel-confirm{border-top:1px solid var(--color-bg-elevated);flex-direction:column;gap:.75rem;padding:1rem 1.25rem;font-size:.875rem;display:flex}.inv-panel-confirm p{color:var(--color-text-secondary);margin:0;line-height:1.5}.inv-panel-confirm--danger{background:rgb(from var(--color-accent-danger) r g b / .04)}.inv-panel-confirm--success{background:rgb(from var(--color-accent-success) r g b / .04)}.inv-panel-confirm-btns{justify-content:flex-end;gap:.5rem;display:flex}.inv-action-btn{border-radius:var(--radius-button);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1.25rem;font-size:.875rem;font-weight:600;display:inline-flex}.inv-action-btn--validate{background:rgb(from var(--color-accent-info) r g b / .12);color:var(--color-accent-info)}.inv-action-btn--validate:hover{background:var(--color-accent-info);color:#fff}.inv-action-btn--reject{background:rgb(from var(--color-accent-danger) r g b / .12);color:var(--color-accent-danger)}.inv-action-btn--reject:hover{background:var(--color-accent-danger);color:#fff}.inv-action-btn--pay{background:var(--color-accent-success);color:#fff}.inv-action-btn--pay:hover{opacity:.88}.inv-textarea{border-radius:var(--border-radius-sm);border:1.5px solid var(--color-bg-elevated);background:var(--color-bg-base);width:100%;color:var(--color-text-primary);resize:vertical;box-sizing:border-box;transition:border-color var(--transition-fast);outline:none;padding:.65rem;font-family:inherit;font-size:.875rem}.inv-textarea:focus{border-color:var(--color-brand-primary)}@media (width<=1100px){.inv-workspace--split{grid-template-columns:1fr}.inv-panel{max-height:none;position:static}}@media (width<=768px){.inv-page{gap:1rem;padding:1rem}.inv-kpi-row{grid-template-columns:1fr 1fr}.inv-controls{flex-wrap:wrap}.inv-select{flex:120px}}.filter-input-group{background:var(--color-bg-base);border:1.5px solid var(--color-bg-elevated);border-radius:var(--border-radius-sm);transition:all var(--transition-normal);flex:1;align-items:center;min-width:160px;display:flex;position:relative}.filter-input-group:hover{border-color:var(--color-brand-primary)}.filter-input-group:focus-within{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px rgba(var(--color-brand-primary-rgb), .1)}.filter-icon{color:var(--color-text-secondary);opacity:.6;pointer-events:none;position:absolute;left:12px}.filter-input-group:focus-within .filter-icon{color:var(--color-brand-primary);opacity:1}.filter-input-group .styled-select-container{flex-direction:column;flex:1;min-width:0;display:flex}.filter-input-group .select-button{width:100%;height:38px;color:var(--color-text-primary);cursor:pointer;justify-content:space-between;align-items:center;font-family:inherit;font-size:.85rem;display:flex;background:0 0!important;border:none!important;padding:0 1rem 0 2.5rem!important}.filter-input-group .select-value-text{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.filter-input-group .select-chevron{opacity:.5;color:var(--color-text-secondary);flex-shrink:0;margin-left:.5rem;font-size:.6rem}.menu-popover{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-lg);z-index:1000;border-radius:4px;min-width:200px;max-height:300px;margin-top:6px;padding:.25rem;overflow-y:auto}.select-listbox{outline:none;flex-direction:column;gap:2px;display:flex}.menu-item{color:var(--color-text-primary);cursor:pointer;border-radius:4px;outline:none;padding:.5rem .75rem;font-size:.875rem;transition:background .15s}.menu-item:hover,.menu-item[data-focused]{background:var(--color-bg-base);color:var(--color-brand-primary)}.inv-btn-ghost[data-disabled],.inv-btn-ghost:disabled{opacity:.45;pointer-events:none;cursor:not-allowed!important}.inv-edit-container{flex-direction:column;gap:2rem;max-width:1000px;min-height:100%;margin:0 auto;padding:2rem 2.5rem;display:flex}.inv-edit-header{justify-content:space-between;align-items:center;display:flex}.inv-edit-back{color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.inv-edit-back:hover{color:var(--color-brand-primary)}.inv-edit-header-actions{align-items:center;gap:.75rem;display:flex}.inv-header-btn{border-radius:var(--radius-button);text-transform:uppercase;cursor:pointer;background:var(--color-brand-primary);color:#fff;border:none;align-items:center;gap:.5rem;height:38px;padding:.6rem 1.25rem;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.inv-header-btn.secondary{background:var(--color-bg-elevated);color:var(--color-text-primary)}.inv-header-btn.validate{color:#fff;background:#10b981}.inv-header-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.inv-header-btn:active{transform:translateY(0)}.inv-header-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.inv-paper{border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);box-shadow:var(--shadow-xl);color:#1a1a1b;background:#fff;flex-direction:column;gap:2.5rem;padding:3rem;display:flex}[data-theme=dark] .inv-paper{background:var(--color-bg-surface);color:var(--color-text-primary)}.inv-paper-header{justify-content:space-between;align-items:flex-start;display:flex}.inv-brand-section h1{color:var(--color-brand-primary);letter-spacing:-.02em;margin:0;font-size:2rem;font-weight:800}.inv-brand-info{color:var(--color-text-secondary);margin-top:1rem;font-size:.875rem;line-height:1.5}.inv-brand-name-input{color:var(--color-brand-primary);letter-spacing:-.02em;background:0 0;border:1.5px dashed #0000;border-radius:4px;width:100%;margin-bottom:.5rem;padding:.25rem;font-size:2rem;font-weight:800;transition:all .2s}.inv-brand-name-input:hover,.inv-brand-name-input:focus{border-color:var(--color-brand-primary);background:var(--color-bg-base);outline:none}.inv-brand-address-input{width:100%;color:var(--color-text-secondary);resize:none;background:0 0;border:1.1px dashed #0000;border-radius:4px;padding:.25rem;font-family:inherit;font-size:.875rem;line-height:1.5;transition:all .2s}.inv-brand-address-input:hover,.inv-brand-address-input:focus{border-color:var(--color-bg-elevated);background:var(--color-bg-base);outline:none}.inv-brand-siret-row{color:var(--color-text-secondary);align-items:center;gap:.25rem;margin-top:.5rem;font-size:.875rem;display:flex}.inv-brand-siret-input{color:var(--color-text-secondary);background:0 0;border:1.1px dashed #0000;border-radius:4px;flex:1;padding:.1rem .25rem;font-size:.875rem;transition:all .2s}.inv-brand-siret-input:hover,.inv-brand-siret-input:focus{border-color:var(--color-bg-elevated);background:var(--color-bg-base);outline:none}.inv-meta-section{text-align:right;flex-direction:column;gap:.5rem;display:flex}.inv-meta-row{justify-content:flex-end;align-items:center;gap:1rem;display:flex}.inv-meta-label{text-transform:uppercase;color:var(--color-text-muted);font-size:.8rem;font-weight:600}.inv-meta-value{font-size:1rem;font-weight:700}.inv-meta-french-date{text-align:right;min-width:120px;font-size:1rem;font-weight:700}.inv-input-overlay{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;right:0}.inv-meta-row{justify-content:flex-end;align-items:center;gap:1rem;display:flex;position:relative}.inv-rac-datepicker{width:auto;min-width:130px}.inv-rac-group{background:0 0;border:1px dashed #0000;border-radius:4px;align-items:center;gap:.25rem;padding:2px 4px;transition:all .2s;display:flex}.inv-rac-picker-btn{color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-button);opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;transition:all .1s;display:flex}.inv-rac-picker-btn:hover{background:var(--color-bg-elevated);opacity:1;color:var(--color-brand-primary)}.inv-rac-picker-btn[data-pressed]{transform:scale(.95)}.inv-rac-group:hover,.inv-rac-group[data-focus-within]{border-color:var(--color-bg-elevated);background:var(--color-bg-base)}.inv-rac-date-input{color:#1a1a1b;font-size:1rem;font-weight:700;display:flex}[data-theme=dark] .inv-rac-date-input{color:var(--color-text-primary)}.inv-rac-datepicker.danger .inv-rac-date-input{color:var(--color-accent-danger)}.inv-rac-segment{border-radius:4px;outline:none;padding:0 1px}.inv-rac-segment[data-placeholder]{color:var(--color-text-muted);font-weight:400}.inv-rac-segment:focus{background:var(--color-brand-primary);color:#fff!important}.inv-rac-month-picker{justify-content:flex-end;gap:.5rem;display:flex}.inv-rac-select-btn{border-radius:var(--radius-button);color:#1a1a1b;cursor:pointer;text-transform:uppercase;background:0 0;border:1px dashed #0000;align-items:center;gap:.25rem;height:28px;padding:2px 8px;font-size:1rem;font-weight:700;transition:all .2s;display:flex}[data-theme=dark] .inv-rac-select-btn{color:var(--color-text-primary)}.inv-rac-select-btn:hover,[data-focus-within] .inv-rac-select-btn{border-color:var(--color-bg-elevated);background:var(--color-bg-base)}.inv-rac-select-icon{opacity:.4}.inv-rac-listbox{outline:none;flex-direction:column;gap:2px;max-height:300px;padding:.5rem;display:flex;overflow-y:auto}.inv-rac-listbox-item{cursor:pointer;border-radius:4px;outline:none;padding:.5rem .75rem;font-size:.875rem;transition:all .1s}.inv-rac-listbox-item:hover,.inv-rac-listbox-item[data-focused]{background:var(--color-bg-elevated);color:var(--color-brand-primary)}.inv-rac-listbox-item[data-selected]{background:var(--color-brand-primary);color:#fff}.inv-rac-dialog{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);box-shadow:var(--shadow-xl);border-radius:4px;outline:none;padding:1rem}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.calendar-heading{margin:0;font-size:.9rem;font-weight:700}.calendar-grid-body{border-collapse:separate;border-spacing:2px;width:100%}.calendar-day-header{color:var(--color-text-muted);text-transform:uppercase;padding:.25rem;font-size:.7rem;font-weight:700}.calendar-cell{cursor:pointer;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;transition:all .1s;display:flex}.calendar-cell:hover{background:var(--color-bg-elevated)}.calendar-cell[data-selected]{background:var(--color-brand-primary);color:#fff}.calendar-cell[data-outside-month]{color:var(--color-text-muted);opacity:.3}.calendar-cell[data-disabled],.calendar-cell[data-unavailable]{color:var(--color-text-muted);opacity:.35;cursor:not-allowed;text-decoration:line-through}.calendar-cell[data-disabled]:hover,.calendar-cell[data-unavailable]:hover{background:0 0}.calendar-cell[data-today]{border:1.5px solid var(--color-brand-primary);font-weight:700}.inv-billing-section{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.inv-bill-to h3{text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.75rem;font-size:.8rem;font-weight:700}.inv-client-select{border:1.5px solid var(--color-bg-elevated);border-radius:var(--border-radius-sm);background:var(--color-bg-base);width:100%;padding:.75rem;font-size:.95rem;font-weight:600}.inv-client-info{margin-top:1rem;font-size:.9rem;line-height:1.6}.inv-items-section{margin-top:1rem}.inv-items-table{border-collapse:collapse;width:100%}.inv-items-table th{text-align:left;text-transform:uppercase;color:var(--color-text-muted);border-bottom:2px solid var(--color-bg-elevated);padding:.75rem .5rem;font-size:.75rem;font-weight:700}.inv-items-table td{border-bottom:1px solid var(--color-bg-elevated);padding:1rem .5rem}.inv-input-inline{background:0 0;border:1px solid #0000;border-radius:4px;width:100%;padding:.4rem;font-size:.9rem;transition:all .2s}.inv-input-inline:focus,.inv-input-inline:hover{border-color:var(--color-bg-elevated);background:var(--color-bg-base)}.inv-item-remove{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.4rem}.inv-item-remove:hover{color:var(--color-accent-danger);background:rgb(from var(--color-accent-danger) r g b / .1)}.inv-add-item{border:2px dashed var(--color-bg-elevated);width:100%;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--border-radius-sm);background:0 0;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem;font-weight:600;transition:all .2s;display:flex}.inv-add-item:hover{border-color:var(--color-brand-primary);color:var(--color-brand-primary);background:rgb(from var(--color-brand-primary) r g b / .04)}.inv-summary-section{grid-template-columns:1fr 300px;gap:2rem;display:grid}.inv-notes label{text-transform:uppercase;color:var(--color-text-muted);font-size:.8rem;font-weight:700}.inv-notes textarea{border:1.5px solid var(--color-bg-elevated);border-radius:var(--border-radius-sm);background:var(--color-bg-base);resize:none;width:100%;margin-top:.5rem;padding:.75rem;font-size:.9rem}.inv-totals{flex-direction:column;gap:.75rem;display:flex}.inv-total-row{justify-content:space-between;align-items:center;display:flex}.inv-total-label{color:var(--color-text-secondary);font-size:.9rem}.inv-total-value{font-weight:600}.inv-total-row--grand{border-top:2px solid var(--color-bg-elevated);margin-top:.5rem;padding-top:.75rem}.inv-total-row--grand .inv-total-label{color:var(--color-text-primary);font-weight:700}.inv-total-row--grand .inv-total-value{color:var(--color-brand-primary);font-size:1.25rem;font-weight:800}.inv-edit-actions{z-index:10;justify-content:flex-end;gap:1rem;display:flex;position:sticky;bottom:2rem}@media (width<=768px){.inv-edit-container{padding:1rem}.inv-paper{gap:1.5rem;padding:1.5rem}.inv-paper-header{flex-direction:column;gap:1.5rem}.inv-meta-section{text-align:left}.inv-meta-row{justify-content:flex-start}.inv-billing-section{grid-template-columns:1fr;gap:1.5rem}.inv-summary-section{grid-template-columns:1fr}.inv-items-table th:nth-child(2),.inv-items-table td:nth-child(2),.inv-items-table th:nth-child(4),.inv-items-table td:nth-child(4){display:none}}@media print{.inv-edit-header,.inv-edit-actions,.inv-add-item,.inv-item-remove,.inv-edit-back{display:none!important}.inv-edit-container{max-width:none;margin:0;padding:0}.inv-paper{box-shadow:none;border:none;padding:0}}.absences-page{background-color:var(--color-bg-base);flex-direction:column;gap:2rem;max-width:1200px;min-height:100vh;margin:0 auto;padding:2rem 3rem;display:flex}.page-header{border-bottom:2px solid var(--color-brand-primary);justify-content:space-between;align-items:flex-end;padding-bottom:1.5rem;display:flex}.title-section h1{text-transform:uppercase;letter-spacing:-.02em;color:var(--color-text-primary);margin:0;font-size:2rem;font-weight:800}.page-subtitle{color:var(--color-text-secondary);margin-top:.25rem;font-size:.875rem;font-weight:500}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;display:grid}.metric-glass-card{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);align-items:center;gap:1.25rem;padding:1.5rem;transition:transform .2s;display:flex}.metric-glass-card:hover{transform:translateY(-4px)}.metric-icon-box{background:var(--color-bg-base);width:48px;height:48px;color:var(--color-brand-primary);justify-content:center;align-items:center;display:flex}.metric-details h3{text-transform:uppercase;color:var(--color-text-secondary);margin:0 0 .25rem;font-size:.7rem;font-weight:800}.metric-value{color:var(--color-text-primary);margin:0;font-size:1.5rem;font-weight:900}.filters-panel{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.filters-top{justify-content:space-between;align-items:center;display:flex}.filters-title{text-transform:uppercase;color:var(--color-text-secondary);align-items:center;gap:.5rem;font-size:.75rem;font-weight:800;display:flex}.clear-link{color:var(--color-brand-primary)!important;text-transform:uppercase!important;box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important;font-size:.7rem!important;font-weight:800!important;text-decoration:underline!important}.filters-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;display:grid}.timeline-group{flex-direction:column;gap:1rem;margin-bottom:3rem;display:flex}.timeline-date{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);border-left:3px solid var(--color-brand-primary);padding-left:1rem;font-size:.8125rem;font-weight:900}.absence-item-row{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);cursor:pointer;align-items:center;min-height:100px;transition:all .2s;display:flex}.absence-item-row:hover{border-color:var(--color-brand-primary);box-shadow:var(--shadow-md);transform:translate(4px)}.absence-date-info{background:var(--color-bg-base);border-right:1px solid var(--color-bg-elevated);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-width:160px;padding:1.5rem;display:flex}.date-day{color:var(--color-text-primary);font-size:1.25rem;font-weight:900}.date-month{text-transform:uppercase;color:var(--color-text-secondary);font-size:.7rem;font-weight:800}.duration-tag{background:var(--color-brand-primary);color:#fff;text-transform:uppercase;margin-top:.5rem;padding:2px 8px;font-size:.6rem;font-weight:900}.absence-main-content{flex:1;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.content-left h4{color:var(--color-text-primary);margin:0 0 .5rem;font-size:1.125rem;font-weight:700}.meta-info{flex-wrap:wrap;gap:1.5rem;display:flex}.info-item{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:500;display:flex}.info-item svg{color:var(--color-brand-primary)}.absence-reason{color:var(--color-text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:400px;margin-top:.75rem;font-size:.8125rem;font-style:italic;display:-webkit-box;overflow:hidden}.content-right{align-items:center;gap:2rem;display:flex}.status-pill{text-transform:uppercase;letter-spacing:.02em;background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);text-align:center;min-width:100px;padding:.35rem 1rem;font-size:.7rem;font-weight:800}.pill-pending{color:var(--color-accent-warning);border-color:var(--color-accent-warning);background:#f59e0b0d}.pill-approved{color:var(--color-accent-success);border-color:var(--color-accent-success);background:#10b9810d}.pill-rejected{color:var(--color-accent-danger);border-color:var(--color-accent-danger);background:#ef44440d}.quick-actions-bar{border-left:1px solid var(--color-bg-elevated);gap:.5rem;padding:1.5rem;display:flex}.action-btn{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);cursor:pointer;width:38px;height:38px;color:var(--color-text-primary);justify-content:center;align-items:center;transition:all .2s;display:flex}.action-btn.success:hover{background:var(--color-accent-success);color:#fff;border-color:var(--color-accent-success)}.action-btn.danger:hover{background:var(--color-accent-danger);color:#fff;border-color:var(--color-accent-danger)}.type-badge{text-transform:uppercase;background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);color:var(--color-text-secondary);padding:2px 8px;font-size:.65rem;font-weight:800}.type-badge.CONGE{color:var(--color-accent-info);border-color:var(--color-accent-info)}.type-badge.MALADIE{color:var(--color-accent-danger);border-color:var(--color-accent-danger)}.type-badge.OFF{color:var(--color-accent-success);border-color:var(--color-accent-success)}.empty-state-container{text-align:center;background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;padding:6rem 2rem;display:flex}.empty-icon-box{background:var(--color-bg-base);width:100px;height:100px;color:var(--color-brand-primary);opacity:.6;justify-content:center;align-items:center;display:flex}.empty-state-container h3{text-transform:uppercase;color:var(--color-text-primary);margin:0;font-size:1.5rem;font-weight:800}.empty-state-container p{color:var(--color-text-secondary);max-width:400px;margin:0;line-height:1.6}.loading-state{color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;padding:5rem;display:flex}.pulse-loader{background-color:var(--color-brand-primary);border-radius:50%;width:48px;height:48px;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%{opacity:.5;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}to{opacity:.5;transform:scale(.8)}}@media (width<=900px){.absence-main-content{flex-direction:column;align-items:flex-start;gap:1.5rem}.content-right{justify-content:space-between;width:100%}.quick-actions-bar{border-left:none;border-top:1px solid var(--color-bg-elevated);justify-content:flex-end;width:100%}}.msg-container{background:var(--color-bg-base);height:calc(100vh - 64px);margin:-2rem;display:flex;overflow:hidden}.msg-sidebar{border-right:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);flex-direction:column;width:340px;min-width:340px;display:flex;overflow:hidden}.msg-sidebar-header{border-bottom:1px solid var(--color-bg-elevated);justify-content:space-between;align-items:center;padding:1.25rem 1.25rem 1rem;display:flex}.msg-sidebar-title{color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.6rem;font-size:1rem;font-weight:800;display:flex}.msg-unread-badge{background:var(--color-brand-primary);color:#fff;border-radius:var(--radius-pill);padding:2px 7px;font-size:.65rem;font-weight:800;line-height:1.4}.msg-new-btn{background:var(--color-brand-primary);color:#fff;border-radius:var(--radius-button);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;transition:all .2s;display:flex}.msg-new-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.msg-search-bar{border-bottom:1px solid var(--color-bg-elevated);color:var(--color-text-muted);align-items:center;gap:.5rem;padding:.75rem 1.25rem;display:flex}.msg-search-bar input{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.msg-search-bar button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.msg-filters{border-bottom:1px solid var(--color-bg-elevated);background:var(--color-bg-base);gap:.4rem;padding:.75rem 1.25rem;display:flex}.msg-filter-btn{border:1px solid var(--color-bg-elevated);color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-button);text-transform:uppercase;letter-spacing:.04em;background:0 0;align-items:center;gap:4px;padding:5px 12px;font-size:.7rem;font-weight:700;transition:all .15s;display:flex}.msg-filter-btn:hover{border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.msg-filter-btn.active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:#fff}.msg-filter-dot{background:#ef4444;border-radius:50%;width:6px;height:6px;display:inline-block}.msg-conv-list{flex:1;overflow-y:auto}.msg-conv-item{cursor:pointer;border-bottom:1px solid #0000000a;align-items:center;gap:.85rem;padding:.9rem 1.25rem;transition:background .15s;display:flex;position:relative}.msg-conv-item:hover{background:var(--color-bg-base)}.msg-conv-item.active{background:color-mix(in srgb, var(--color-brand-primary) 8%, transparent);border-left:3px solid var(--color-brand-primary)}.msg-conv-item.unread .msg-conv-title{font-weight:800}.msg-conv-avatar{color:#fff;text-transform:uppercase;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:.9rem;font-weight:900;display:flex;position:relative}.msg-conv-dot{background:var(--color-brand-primary);border:2px solid var(--color-bg-surface);border-radius:50%;width:11px;height:11px;position:absolute;top:-3px;right:-3px}.msg-conv-body{flex:1;overflow:hidden}.msg-conv-top{justify-content:space-between;align-items:center;margin-bottom:3px;display:flex}.msg-conv-title{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.msg-conv-time{color:var(--color-text-muted);flex-shrink:0;font-size:.7rem;font-weight:600}.msg-conv-bottom{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.msg-conv-preview{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.78rem;overflow:hidden}.msg-conv-status{letter-spacing:.05em;border-radius:4px;flex-shrink:0;padding:2px 7px;font-size:.6rem;font-weight:800}.msg-conv-status.open{color:#10b981;background:#10b9811a;border:1px solid #10b98133}.msg-conv-status.assigned{background:color-mix(in srgb, var(--color-brand-primary) 10%, transparent);color:var(--color-brand-primary);border:1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent)}.msg-list-loading{padding:.5rem 0}.msg-conv-skeleton{align-items:center;gap:.85rem;padding:.9rem 1.25rem;display:flex}.sk-avatar{background:var(--color-bg-elevated);border-radius:10px;flex-shrink:0;width:44px;height:44px;animation:1.5s ease-in-out infinite shimmer}.sk-lines{flex-direction:column;flex:1;gap:8px;display:flex}.sk-line{background:var(--color-bg-elevated);border-radius:4px;height:10px;animation:1.5s ease-in-out infinite shimmer}.sk-line.short{width:45%}.sk-line.long{width:75%}.msg-conv-empty{color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.msg-conv-empty p{text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.msg-chat{background:var(--color-bg-base);flex-direction:column;flex:1;display:flex;overflow:hidden}.msg-chat-header{border-bottom:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex;box-shadow:0 1px 8px #0000000a}.msg-chat-header-left{align-items:center;gap:1rem;display:flex}.msg-chat-avatar{color:#fff;text-transform:uppercase;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:.9rem;font-weight:900;display:flex}.msg-chat-title{color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.02em;margin:0;font-size:.975rem;font-weight:800}.msg-chat-subtitle{color:var(--color-text-secondary);align-items:center;gap:5px;margin:2px 0 0;font-size:.75rem;font-weight:500;display:flex}.msg-chat-header-actions{gap:.6rem;display:flex}.msg-action-btn{border-radius:var(--radius-button);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border:none;align-items:center;gap:.4rem;height:36px;padding:.5rem 1rem;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.msg-action-btn.primary{background:var(--color-brand-primary);color:#fff}.msg-action-btn.primary:hover{filter:brightness(1.1)}.msg-action-btn.secondary{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-bg-elevated)}.msg-action-btn.secondary:hover{border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.msg-messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:1.25rem;padding:1.5rem;display:flex;overflow-y:auto}.msg-bubble-wrapper{align-items:flex-end;gap:.6rem;max-width:78%;display:flex}.msg-bubble-wrapper.own{flex-direction:row-reverse;align-self:flex-end}.msg-bubble-avatar{color:#fff;text-transform:uppercase;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.7rem;font-weight:900;display:flex}.msg-bubble-col{flex-direction:column;gap:3px;display:flex}.msg-bubble-sender{color:var(--color-brand-primary);text-transform:uppercase;letter-spacing:.03em;padding-left:2px;font-size:.7rem;font-weight:700}.own .msg-bubble-sender{text-align:right;padding-left:0;padding-right:2px}.msg-bubble{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:14px 14px 14px 4px;max-width:100%;padding:.75rem 1rem}.msg-bubble-wrapper.own .msg-bubble{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:#fff;border-radius:14px 14px 4px}.msg-bubble-text{color:var(--color-text-primary);word-break:break-word;margin:0;font-size:.9rem;line-height:1.5}.msg-bubble-wrapper.own .msg-bubble-text{color:#fff}.msg-bubble-time{color:var(--color-text-muted);text-align:right;margin-top:5px;font-size:.62rem;display:block}.msg-bubble-wrapper.own .msg-bubble-time{color:#ffffffa6}.msg-attachments{flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem;display:flex}.msg-attachment-img{object-fit:cover;cursor:pointer;border-radius:10px;max-width:260px;max-height:260px;transition:transform .2s}.msg-attachment-img:hover{transform:scale(1.02)}.msg-attachment-video{border-radius:10px;max-width:260px}.msg-timeline-action{justify-content:center;margin:.5rem 0;display:flex}.msg-timeline-action span{background:var(--color-bg-elevated);color:var(--color-text-secondary);border-radius:var(--radius-pill);padding:4px 14px;font-size:.72rem;font-weight:500}.msg-typing{align-items:center;gap:.6rem;display:flex}.msg-typing-dots{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:12px;gap:3px;padding:8px 12px;display:flex}.msg-typing-dots span{background:var(--color-text-secondary);opacity:.5;border-radius:50%;width:6px;height:6px;animation:1.4s infinite msg-bounce}.msg-typing-dots span:nth-child(2){animation-delay:.2s}.msg-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes msg-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.msg-typing-label{color:var(--color-text-muted);font-size:.75rem;font-style:italic}.msg-file-previews{background:var(--color-bg-surface);border-top:1px solid var(--color-bg-elevated);flex-wrap:wrap;gap:.6rem;padding:.75rem 1.5rem;display:flex}.msg-file-chip{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-radius:10px;align-items:center;gap:.6rem;padding:6px 10px;transition:transform .2s;display:flex;position:relative}.msg-file-chip:hover{transform:translateY(-2px)}.msg-file-thumb{object-fit:cover;border-radius:7px;width:40px;height:40px}.msg-file-icon{background:var(--color-bg-elevated);width:40px;height:40px;color:var(--color-brand-primary);border-radius:7px;justify-content:center;align-items:center;display:flex}.msg-file-info{flex-direction:column;display:flex}.msg-file-name{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:110px;font-size:.78rem;font-weight:600;overflow:hidden}.msg-file-size{color:var(--color-text-muted);font-size:.68rem}.msg-file-remove{color:#ef4444;cursor:pointer;background:#ef44441a;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:background .15s;display:flex}.msg-file-remove:hover{background:#ef444433}.msg-input-bar{border-top:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.msg-attach-btn{background:var(--color-bg-elevated);border:1px solid var(--color-bg-elevated);width:42px;min-width:42px;height:42px;color:var(--color-text-secondary);border-radius:var(--radius-button);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.msg-attach-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-brand-primary) 10%, transparent);border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.msg-text-input{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);color:var(--color-text-primary);border-radius:4px;outline:none;flex:1;padding:.65rem 1rem;font-size:.9rem;transition:border-color .2s}.msg-text-input:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-brand-primary) 15%, transparent)}.msg-send-btn{background:var(--color-brand-primary);border-radius:var(--radius-button);color:#fff;cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;width:42px;min-width:42px;height:42px;transition:all .2s;display:flex}.msg-send-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.msg-send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.msg-empty-state{color:var(--color-text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex}.msg-empty-icon{background:color-mix(in srgb, var(--color-brand-primary) 8%, transparent);border:1.5px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent);width:80px;height:80px;color:var(--color-brand-primary);border-radius:20px;justify-content:center;align-items:center;margin-bottom:.5rem;display:flex}.msg-empty-state h3{color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:1.1rem;font-weight:800}.msg-empty-state p{color:var(--color-text-secondary);margin:0;font-size:.85rem}.msg-empty-cta{background:var(--color-brand-primary);color:#fff;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border:none;border-radius:4px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.65rem 1.5rem;font-size:.8rem;font-weight:700;transition:all .2s;display:flex}.msg-empty-cta:hover{filter:brightness(1.1);transform:translateY(-1px)}.msg-modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000008c;justify-content:center;align-items:center;animation:.18s msg-fade-in;display:flex;position:fixed;inset:0}@keyframes msg-fade-in{0%{opacity:0}to{opacity:1}}.msg-modal{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:4px;flex-direction:column;width:100%;max-width:480px;max-height:85vh;animation:.22s msg-slide-up;display:flex;overflow:hidden;box-shadow:0 24px 80px #00000040}@keyframes msg-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.msg-modal-header{border-bottom:1px solid var(--color-bg-elevated);background:var(--color-bg-base);justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;display:flex}.msg-modal-title{color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.95rem;font-weight:800}.msg-modal-subtitle{color:var(--color-text-secondary);margin:4px 0 0;font-size:.78rem;font-weight:500}.msg-modal-close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px;transition:all .15s;display:flex}.msg-modal-close:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.msg-modal-body{flex-direction:column;flex:1;gap:1.1rem;padding:1.5rem;display:flex;overflow-y:auto}.msg-modal-footer{border-top:1px solid var(--color-bg-elevated);background:var(--color-bg-base);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.msg-btn-cancel,.msg-btn-create{border-radius:var(--radius-button);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border:none;align-items:center;gap:.4rem;padding:.6rem 1.25rem;font-size:.78rem;font-weight:700;transition:all .2s;display:flex}.msg-btn-cancel{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.msg-btn-cancel:hover{color:var(--color-text-primary)}.msg-btn-create{background:var(--color-brand-primary);color:#fff}.msg-btn-create:hover:not(:disabled){filter:brightness(1.1)}.msg-btn-create:disabled{opacity:.5;cursor:not-allowed}.msg-form-field{flex-direction:column;gap:.5rem;display:flex}.msg-form-field label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:800}.msg-label-opt{text-transform:none;letter-spacing:0;color:var(--color-text-muted);font-weight:500}.msg-input-with-icon{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);color:var(--color-text-muted);border-radius:4px;align-items:center;gap:.6rem;padding:0 .85rem;transition:border-color .2s;display:flex}.msg-input-with-icon:focus-within{border-color:var(--color-brand-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-brand-primary) 12%, transparent)}.msg-input-with-icon input{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;padding:.65rem 0;font-size:.875rem}.msg-participants-chips{flex-wrap:wrap;gap:.4rem;display:flex}.msg-participant-chip{background:color-mix(in srgb, var(--color-brand-primary) 10%, transparent);border:1px solid color-mix(in srgb, var(--color-brand-primary) 25%, transparent);color:var(--color-brand-primary);border-radius:var(--radius-pill);align-items:center;gap:.3rem;padding:4px 10px;font-size:.78rem;font-weight:600;display:flex}.msg-participant-chip button{color:var(--color-brand-primary);cursor:pointer;opacity:.7;background:0 0;border:none;align-items:center;padding:0;display:flex}.msg-participant-chip button:hover{opacity:1}.msg-user-dropdown{border:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);border-radius:4px;overflow:hidden;box-shadow:0 8px 24px #0000001a}.msg-user-option{border:none;border-bottom:1px solid var(--color-bg-elevated);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:.75rem;width:100%;padding:.65rem .85rem;transition:background .1s;display:flex}.msg-user-option:last-child{border-bottom:none}.msg-user-option:hover{background:var(--color-bg-elevated)}.msg-user-option.selected{background:color-mix(in srgb, var(--color-brand-primary) 8%, transparent)}.msg-user-option-avatar{color:#fff;text-transform:uppercase;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.72rem;font-weight:900;display:flex}.msg-user-option-info{flex-direction:column;flex:1;display:flex}.msg-user-option-info span:first-child{color:var(--color-text-primary);font-size:.85rem;font-weight:600}.msg-user-option-role{color:var(--color-text-muted);text-transform:uppercase;font-size:.7rem;font-weight:500}.msg-user-check{color:var(--color-brand-primary);flex-shrink:0}.msg-members-list{flex-direction:column;gap:.5rem;max-height:360px;display:flex;overflow-y:auto}.msg-member-row{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-radius:4px;align-items:center;gap:.75rem;padding:.75rem;display:flex}.msg-member-avatar{color:#fff;text-transform:uppercase;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.78rem;font-weight:900;display:flex}.msg-member-info{flex-direction:column;flex:1;display:flex}.msg-member-name{color:var(--color-text-primary);font-size:.875rem;font-weight:600}.msg-member-role{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:600}.msg-member-actions{align-items:center;gap:.4rem;display:flex}.msg-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:3px 9px;font-size:.65rem;font-weight:800}.msg-badge.admin{background:color-mix(in srgb, var(--color-brand-primary) 12%, transparent);color:var(--color-brand-primary);border:1px solid color-mix(in srgb, var(--color-brand-primary) 25%, transparent)}.msg-badge.member{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.msg-btn-sm{border-radius:var(--radius-button);text-transform:uppercase;letter-spacing:.03em;cursor:pointer;background:var(--color-brand-primary);color:#fff;border:none;align-items:center;gap:.3rem;height:30px;padding:5px 12px;font-size:.72rem;font-weight:700;transition:all .15s;display:flex}.msg-btn-sm.outline{border:1px solid var(--color-brand-primary);color:var(--color-brand-primary);background:0 0}.msg-btn-sm.outline:hover{background:var(--color-brand-primary);color:#fff}.msg-btn-sm.danger{color:#ef4444;background:#ef44441a;justify-content:center;width:30px;padding:0}.msg-btn-sm.danger:hover{color:#fff;background:#ef4444}.msg-filters{flex-wrap:wrap}.msg-filter-count{background:var(--color-bg-muted);color:var(--color-text-secondary);border-radius:var(--radius-pill);padding:0 5px;font-size:.65rem;line-height:1.5}.msg-filter-btn.active .msg-filter-count{color:#fff;background:#ffffff40}.msg-conv-menu{flex-shrink:0;position:relative}.msg-conv-menu-btn{width:28px;height:28px;color:var(--color-text-muted);border-radius:var(--radius-button);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.msg-conv-menu-btn:hover,.msg-conv-menu-btn[aria-expanded=true]{background:var(--color-bg-muted);color:var(--color-text-primary)}.msg-conv-menu-btn:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:1px}.msg-conv-menu-popover{z-index:40;background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);min-width:200px;box-shadow:var(--shadow-lg);flex-direction:column;gap:2px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0}.msg-conv-menu-popover button{width:100%;color:var(--color-text-primary);text-align:left;border-radius:var(--radius-button);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:.55rem .65rem;font-size:.85rem;display:flex}.msg-conv-menu-popover button:hover{background:var(--color-bg-base)}.msg-seen-by{max-width:70%;color:var(--color-text-muted);flex-wrap:wrap;align-self:flex-end;align-items:center;gap:.35rem;padding:.15rem .25rem .5rem;font-size:.72rem;display:flex}.msg-seen-names{flex-wrap:wrap;gap:.25rem;display:flex}.msg-seen-chip{background:var(--color-bg-muted);border-radius:var(--radius-pill);color:var(--color-text-secondary);cursor:default;padding:1px 7px}.msg-seen-none{font-style:italic}.first-login-page{background:var(--color-bg-base);justify-content:center;align-items:center;min-height:100vh;padding:24px;font-family:inherit;display:flex}.first-login-card{border-radius:var(--radius-card);flex-direction:column;gap:2rem;width:600px;max-width:100%;padding:3rem;transition:all .3s;display:flex}.first-login-header{text-align:center}.first-login-header .status-icon{width:64px;height:64px;color:var(--color-brand-primary);background:#8013b61a;border-radius:4px;justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex}.first-login-header h1{color:var(--color-text-primary);margin-bottom:.75rem;font-size:1.75rem;font-weight:700}.first-login-header p{color:var(--color-text-secondary);max-width:500px;margin:0 auto;font-size:1rem;line-height:1.6}.first-login-form{flex-direction:column;gap:1.5rem;display:flex}.first-login-form .form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.first-login-actions{flex-direction:column;gap:1rem;margin-top:1rem;display:flex}.first-login-actions .primary-btn{border-radius:var(--radius-button);justify-content:center;align-items:center;gap:.75rem;width:100%;height:52px;font-size:1rem;font-weight:600;display:flex}.logout-btn{width:100%;color:var(--color-text-secondary);border-radius:var(--radius-button);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:.875rem;transition:all .2s;display:flex}.logout-btn:hover{color:var(--color-accent-danger);background:#ef44440d}.first-login-actions .primary-btn{background:var(--color-brand-primary);color:#fff;cursor:pointer;border:none;transition:transform .2s,background .2s}.first-login-actions .primary-btn:hover:not([disabled]){background:var(--color-brand-primary-hover);transform:translateY(-2px)}.first-login-actions .primary-btn[disabled]{opacity:.6;cursor:not-allowed}@media (width<=640px){.first-login-form .form-grid{grid-template-columns:1fr}.first-login-card{padding:2rem}}.email-campaign-page{max-width:1400px;margin:0 auto;padding:2rem}.campaign-composer{grid-template-columns:1fr 340px;align-items:start;gap:2.5rem;display:grid}@media (width<=1100px){.campaign-composer{grid-template-columns:1fr}}.recipient-fields{flex-direction:column;gap:0;margin-bottom:2rem;display:flex;overflow:hidden}.recipient-field-row{border-bottom:1px solid var(--color-bg-elevated);grid-template-columns:80px 1fr;align-items:start;gap:1.5rem;padding:1.25rem 1.5rem;transition:background .2s;display:grid}.recipient-field-row:hover{background:rgba(var(--color-brand-primary-rgb), .01)}.field-label{color:var(--color-text-secondary);text-align:right;padding-top:.4rem;font-size:.875rem;font-weight:700}.target-group-container{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.unified-filter-block{background:var(--color-bg-elevated);border:1px solid rgba(var(--color-brand-primary-rgb), .2);border-radius:8px;align-items:center;gap:2px;padding:2px;display:flex}.filter-part{align-items:center;gap:.5rem;padding:.4rem .75rem;font-size:.8125rem;font-weight:600;display:flex}.filter-part.roles{color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb), .05);border-radius:6px 0 0 6px}.filter-part.hotels{color:var(--color-accent-success);border-left:1px solid rgba(var(--color-brand-primary-rgb), .1);background:#10b9810d}.filter-separator{color:var(--color-text-muted);padding:0 .25rem;font-size:.75rem;font-weight:800}.remove-group-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:0 4px 4px 0;padding:.4rem}.remove-group-btn:hover{color:var(--color-accent-danger);background:#ef44441a}.manual-tag{color:var(--color-accent-warning);background:#f59e0b0d;border:1px solid #f59e0b33;border-radius:8px;align-items:center;gap:.5rem;padding:.4rem .75rem;font-size:.8125rem;display:flex}.add-recipient-btn{color:var(--color-brand-primary);border:1.5px dashed rgba(var(--color-brand-primary-rgb), .4);border-radius:var(--radius-button);cursor:pointer;background:0 0;align-items:center;gap:.6rem;padding:.45rem 1.25rem;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.add-recipient-btn:hover{background:var(--color-brand-primary);color:#fff;border-style:solid;transform:translateY(-1px)}.editor-panel{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-card);padding:2.5rem}.subject-input-wrapper{border-bottom:2px solid var(--color-bg-elevated);margin-bottom:2rem}.subject-input{background:0 0;outline:none;width:100%;padding:.75rem 0;font-size:1.25rem;font-weight:600;border:none!important}.message-textarea{border:1px solid var(--color-bg-elevated);background:0 0;border-radius:8px;outline:none;width:100%;min-height:450px;padding:1.25rem;font-size:1.05rem;line-height:1.7}.audience-sidebar{flex-direction:column;gap:1.25rem;display:flex;position:sticky;top:2rem}.stat-card{background:var(--color-bg-elevated);border-radius:var(--radius-card);cursor:pointer;border:1.5px solid #0000;padding:1.25rem;transition:all .2s}.stat-card:hover{border-color:rgba(var(--color-brand-primary-rgb), .2);transform:translate(-4px)}.stat-card.active{border-color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb), .05)}.audience-summary-big{background:var(--color-brand-primary);color:#fff;text-align:center;cursor:pointer;box-shadow:0 8px 24px rgba(var(--color-brand-primary-rgb), .2);border-radius:12px;padding:2rem}.campaign-modal{background:var(--color-bg-base);border-radius:12px;width:95vw;position:relative;outline:none!important;flex-direction:column!important;max-width:600px!important;max-height:90vh!important;display:flex!important;overflow:hidden!important;box-shadow:0 15px 45px #0003!important}.campaign-modal [role=dialog]{width:100%;outline:none!important;flex-direction:column!important;max-height:90vh!important;display:flex!important}.campaign-modal .modal-body{flex:1;min-height:0;padding:2rem;overflow-y:auto!important}.campaign-modal .modal-header,.campaign-modal .modal-footer{flex-shrink:0;padding:1.5rem 2rem}.selection-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.selection-item{background:var(--color-bg-elevated);border-radius:var(--radius-card);cursor:pointer;border:2px solid #0000;align-items:center;gap:.75rem;padding:1rem;transition:all .2s;display:flex}.selection-item:hover{background:rgba(var(--color-brand-primary-rgb), .04);border-color:rgba(var(--color-brand-primary-rgb), .1)}.selection-item.selected{background:rgba(var(--color-brand-primary-rgb), .08);border-color:var(--color-brand-primary)}.selection-item.selected-hotel{border-color:var(--color-accent-success);background:#10b98114}.audience-table{border-collapse:collapse;width:100%}.audience-table td,.audience-table th{text-align:left;border-bottom:1px solid var(--color-bg-elevated);padding:1rem}.staffing-requests-page{background-color:var(--color-bg-base);max-width:1400px;min-height:100vh;margin:0 auto;padding:2rem 3rem}.request-card{cursor:pointer;border:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);margin-bottom:1.25rem;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;border-radius:var(--radius-card)!important}.request-card:hover{border-color:var(--color-brand-primary);box-shadow:var(--shadow-lg);transform:translate(4px)}.request-card.selected{border-color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb), .03);box-shadow:inset 4px 0 0 var(--color-brand-primary)}.request-header{justify-content:space-between;align-items:flex-start;padding:1.5rem 1.5rem 1rem;display:flex}.request-type-badge{text-transform:uppercase;letter-spacing:.1em;border-radius:4px;padding:.35rem .75rem;font-size:.65rem;font-weight:800}.type-housekeeping{background:var(--status-published-bg);color:var(--status-published-text)}.type-shift{background:var(--color-info-bg);color:var(--color-info-text)}.request-status-pill{text-transform:uppercase;letter-spacing:.05em;border:1px solid;border-radius:4px;padding:.25rem .75rem;font-size:.65rem;font-weight:800}.status-pending{background:var(--color-neutral-bg);color:var(--color-neutral-text)}.status-partially_filled{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-filled{background:var(--color-success-bg);color:var(--color-success-text)}.request-body{padding:0 1.5rem 1.5rem}.slots-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-top:1rem;display:grid}.slot-item{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-radius:4px;padding:.75rem}.suggestions-sidebar{background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);flex-direction:column;height:calc(100vh - 4rem);display:flex;position:sticky;top:2rem;border-radius:4px!important}.suggestion-item{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-radius:4px;align-items:center;gap:1.25rem;margin-bottom:.75rem;padding:1.25rem;transition:all .2s;display:flex}.suggestion-item:hover{border-color:var(--color-brand-primary)}.suggestion-item.assigned{border-color:var(--color-accent-success);background:#10b9810d}.avatar-initials{background:var(--color-brand-primary);color:#fff;border-radius:4px;justify-content:center;align-items:center;width:44px;height:44px;font-size:.875rem;font-weight:800;display:flex}.suggestion-info{flex:1}.suggestion-name{color:var(--color-text-primary);margin-bottom:.25rem;font-size:.9375rem;font-weight:700;display:block}.suggestion-job{color:var(--color-text-secondary);font-size:.75rem;font-weight:500}.modal-slots-builder{border:1px solid var(--color-bg-elevated);background:#0000001a;max-height:400px;margin-top:.75rem;padding:.5rem;overflow-y:auto}.slot-builder-row{background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);align-items:flex-end;gap:.75rem;margin-bottom:1rem;padding:1rem;display:flex}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon svg{color:var(--color-brand-primary);opacity:.7;pointer-events:none;position:absolute;left:.75rem}.input-with-icon input{padding-left:2.5rem!important}.empty-suggestions{text-align:center;color:var(--color-text-secondary);padding:3rem 2rem;font-size:.875rem;font-style:italic}.modal-content.glass-panel{overflow:hidden;border-radius:var(--radius-card)!important;background:var(--color-bg-surface)!important;border:1px solid var(--color-bg-elevated)!important;box-shadow:var(--shadow-2xl)!important;padding:0!important}.modal-header-refined{border-bottom:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-body-refined{flex-direction:column;flex:1;gap:1.75rem;padding:1.5rem 2rem;display:flex;overflow-y:auto}.modal-footer-refined{border-top:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);flex-shrink:0;justify-content:flex-end;gap:1rem;padding:1.25rem 1.5rem;display:flex}.modal-header h2{text-transform:uppercase!important;letter-spacing:.05em!important;color:var(--color-text-primary)!important;font-size:1.25rem!important;font-weight:900!important}.react-aria-Button.primary{background:var(--color-brand-primary)!important;color:#fff!important}.react-aria-Button.ghost{border:1px solid var(--color-bg-elevated)!important;color:var(--color-text-secondary)!important;background:0 0!important}.react-aria-Button.ghost:hover{background:var(--color-bg-base)!important;color:var(--color-text-primary)!important}@media (width<=1024px){.requests-layout{flex-direction:column}.suggestions-sidebar{height:auto;position:static;width:100%!important}}.pp-root{background:var(--color-bg-base);min-height:100vh;color:var(--color-text-primary);font-family:Poppins,sans-serif}.pp-header{background:var(--color-brand-primary);border-bottom:1px solid #ffffff14}.pp-header-inner{max-width:1100px;margin:0 auto;padding:64px 40px 56px}.pp-header-label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-success);margin-bottom:18px;font-size:.7rem;font-weight:700}.pp-header-title{color:#fff;letter-spacing:-.01em;margin:0 0 16px;font-family:Montserrat,sans-serif;font-size:clamp(1.6rem,3.5vw,2.2rem);font-weight:800;line-height:1.25}.pp-header-sub{color:#fff9;max-width:620px;margin:0 0 28px;font-size:.92rem;line-height:1.75}.pp-header-meta{color:#ffffff59;flex-wrap:wrap;align-items:center;gap:10px;font-size:.78rem;display:flex}.pp-dot{background:#ffffff40;border-radius:50%;flex-shrink:0;width:3px;height:3px}.pp-body{grid-template-columns:220px 1fr;align-items:start;gap:64px;max-width:1100px;margin:0 auto;padding:56px 40px;display:grid}.pp-toc{position:sticky;top:32px}.pp-toc-heading{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);border-bottom:1px solid var(--color-bg-elevated);margin:0 0 12px;padding-bottom:12px;font-size:.68rem;font-weight:700}.pp-toc nav{flex-direction:column;gap:2px;display:flex}.pp-toc nav a{color:var(--color-text-muted);border-radius:5px;padding:6px 8px;font-size:.8rem;font-weight:500;line-height:1.4;text-decoration:none;transition:color .15s,background .15s}.pp-toc nav a:hover{color:var(--color-brand-primary);background:var(--color-brand-primary-light)}.pp-main{border-left:1px solid var(--color-bg-elevated);flex-direction:column;gap:0;margin-left:-32px;padding-left:56px;display:flex}.pp-article{border-bottom:1px solid var(--color-bg-elevated);padding:40px 0;scroll-margin-top:32px}.pp-article:last-child{border-bottom:none;padding-bottom:0}.pp-article-index{text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);margin-bottom:10px;font-size:.68rem;font-weight:700}.pp-article-title{color:var(--color-text-primary);letter-spacing:-.01em;margin:0 0 18px;font-family:Montserrat,sans-serif;font-size:1.05rem;font-weight:800}.pp-article p{color:var(--color-text-secondary);margin:0 0 18px;font-size:.875rem;line-height:1.85}.pp-article p:last-child{margin-bottom:0}.pp-article a{color:var(--color-brand-primary);border-bottom:1px solid #0000;font-weight:600;text-decoration:none;transition:border-color .15s}.pp-article a:hover{border-bottom-color:var(--color-brand-primary)}.pp-definition-list{border:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);border-radius:8px;margin-top:18px;overflow:hidden}.pp-definition-row{border-bottom:1px solid var(--color-bg-elevated);grid-template-columns:140px 1fr;display:grid}.pp-definition-row:last-child{border-bottom:none}.pp-definition-row dt,.pp-definition-row dd{margin:0;padding:12px 16px;font-size:.845rem;line-height:1.6}.pp-definition-row dt{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--color-bg-subtle);border-right:1px solid var(--color-bg-elevated);align-items:center;font-size:.78rem;font-weight:700;display:flex}.pp-definition-row dd{color:var(--color-text-primary);font-weight:500}.pp-table{border-collapse:collapse;background:var(--color-bg-surface);border:1px solid var(--color-bg-elevated);border-radius:8px;width:100%;margin:18px 0;font-size:.845rem;overflow:hidden}.pp-table thead tr{background:var(--color-bg-subtle)}.pp-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);border-bottom:1px solid var(--color-bg-elevated);padding:11px 16px;font-size:.72rem;font-weight:700}.pp-table td{color:var(--color-text-secondary);border-bottom:1px solid var(--color-bg-elevated);vertical-align:top;padding:12px 16px;line-height:1.65}.pp-table tbody tr:last-child td{border-bottom:none}.pp-table tbody tr:hover td{background:var(--color-bg-subtle)}.pp-table code{background:var(--color-bg-elevated);color:var(--color-brand-primary);border-radius:4px;padding:2px 6px;font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:.8rem}.pp-badge{text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;background:var(--color-bg-elevated);color:var(--color-text-primary);border-radius:4px;padding:3px 9px;font-size:.72rem;font-weight:700;display:inline-block}.pp-list{flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.pp-list li{color:var(--color-text-secondary);border-left:2px solid var(--color-bg-elevated);padding:0 0 0 14px;font-size:.875rem;line-height:1.75;position:relative}.pp-list li:before{content:"";background:var(--color-accent-success);border-radius:1px;width:2px;height:14px;position:absolute;top:8px;left:-2px}.pp-list li strong{color:var(--color-text-primary);font-weight:700}.pp-notice{border-left:3px solid var(--color-brand-primary);background:var(--color-bg-surface);color:var(--color-text-secondary);border-radius:0 6px 6px 0;margin-top:20px;padding:16px 20px;font-size:.845rem;line-height:1.75}.pp-notice strong{color:var(--color-text-primary);margin-bottom:4px;font-weight:700;display:block}.pp-footer{border-top:1px solid var(--color-bg-elevated);background:var(--color-bg-surface)}.pp-footer-inner{max-width:1100px;color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:12px;margin:0 auto;padding:20px 40px;font-size:.78rem;display:flex}@media (width<=900px){.pp-body{grid-template-columns:1fr;gap:32px;padding:40px 24px}.pp-toc{border:1px solid var(--color-bg-elevated);background:var(--color-bg-surface);border-radius:8px;padding:20px;position:static}.pp-main{border-left:none;margin-left:0;padding-left:0}.pp-header-inner{padding:40px 24px 36px}.pp-footer-inner{padding:20px 24px}.pp-definition-row{grid-template-columns:110px 1fr}}@media (width<=560px){.pp-definition-row{grid-template-columns:1fr}.pp-definition-row dt{border-right:none;border-bottom:1px solid var(--color-bg-elevated)}.pp-header-title{font-size:1.4rem}.pp-header-meta{display:none}}html{scrollbar-gutter:stable}:root{--brand-forest:#1c3d36;--brand-forest-deep:#16302b;--brand-forest-darker:#0f211d;--brand-emerald:#119b72;--brand-green:#0dbf7a;--brand-mint:#00e08a;--brand-cream:#fcefe3;--brand-gray:#b3b3b3;--color-brand-primary:#1c3d36;--color-brand-primary-rgb:28, 61, 54;--color-brand-primary-hover:#119b72;--color-brand-primary-light:#e8efec;--color-brand-secondary:#0dbf7a;--color-brand-accent:#00e08a;--color-brand-dark:#16302b;--color-brand-darker:#0f211d;--color-brand-light:#f4f7f5;--color-primary:#1c3d36;--color-primary-rgb:28, 61, 54;--color-bg-base:#f4f7f5;--color-bg-surface:#fff;--color-bg-panel:#fff;--color-bg-subtle:#f7f9f8;--color-bg-muted:#f1f3f2;--color-bg-strong:#e8efec;--color-bg-elevated:#e4eae7;--color-border:#e4eae7;--color-border-subtle:#eef2f0;--color-border-strong:#d3deda;--color-on-brand-surface:#193730;--color-on-brand-surface-strong:#33514a;--color-on-brand-border:#ffffff1f;--color-on-brand-text:#fff;--color-on-brand-text-muted:#9fb8b0;--color-text-primary:#1c3d36;--color-text-primary-rgb:28, 61, 54;--color-text-secondary:#4a6b61;--color-text-muted:#8aa39b;--color-text-inverse:#fff;--color-accent-success:#0dbf7a;--color-accent-success-rgb:13, 191, 122;--color-accent-danger:#c0392b;--color-accent-danger-rgb:192, 57, 43;--color-accent-warning:#b45309;--color-accent-warning-rgb:180, 83, 9;--color-accent-info:#0369a1;--color-accent-info-rgb:3, 105, 161;--color-accent-error:#c0392b;--color-success:#0dbf7a;--color-success-rgb:13, 191, 122;--color-danger:#c0392b;--color-error:#c0392b;--color-warning:#b45309;--color-info:#0369a1;--color-info-rgb:3, 105, 161;--color-indigo:#4f46e5;--color-zinc-400:#a1a1aa;--color-success-bg:#ebf9f5;--color-success-border:#c6eee0;--color-success-text:#0a7d52;--color-danger-bg:#faefee;--color-danger-border:#f3d5d1;--color-danger-text:#c0392b;--color-danger-accent:#f87171;--color-warning-bg:#fef6e7;--color-warning-border:#f7e2bc;--color-warning-text:#92400e;--color-info-bg:#eaf4fb;--color-info-border:#c9e2f3;--color-info-text:#0369a1;--color-neutral-bg:#f1f3f2;--color-neutral-border:#e4eae7;--color-neutral-text:#4a6b61;--status-planned-bg:#eef0fd;--status-planned-text:#414ac4;--status-published-bg:#f5edfd;--status-published-text:#7c56d4;--entity-personnel:#5b61d9;--entity-hotel:#0e86c4;--entity-group:#7c56d4;--entity-mission:#c77a0c;--entity-shift:#0a9e63;--entity-product:#dc6b18;--entity-job:#c0392b;--chart-1:#0a9e63;--chart-2:#5b61d9;--chart-3:#c77a0c;--chart-4:#0e86c4;--chart-5:#c0392b;--chart-6:#7c56d4;--chart-grid:#e4eae7;--chart-axis-text:#8aa39b;--font-family-sans:"Poppins", system-ui, -apple-system, sans-serif;--font-family-heading:"Montserrat", system-ui, -apple-system, sans-serif;--font-size-xs:.6875rem;--font-size-sm:.8125rem;--font-size-base:.9375rem;--font-size-lg:1.0625rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--border-radius-xs:4px;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:16px;--border-radius-xl:24px;--border-radius-full:999px;--radius-card:4px;--radius-button:4px;--radius-pill:4px;--shadow-xs:0 1px 2px #1028220a;--shadow-sm:0 1px 3px #1028220f, 0 1px 2px #1028220a;--shadow:0 1px 3px #1028220f, 0 1px 2px #1028220a;--shadow-md:0 4px 12px #10282212;--shadow-lg:0 12px 28px #1028221a;--shadow-xl:0 20px 44px #1028221f;--shadow-2xl:0 32px 64px #10282229;--shadow-glow:0 0 0 4px #0dbf7a24;--transition-fast:.15s ease-in-out;--transition-normal:.25s ease;--transition-slow:.4s cubic-bezier(.16, 1, .3, 1)}body.dark-theme{--color-brand-primary:#00e08a;--color-brand-primary-rgb:0, 224, 138;--color-brand-primary-hover:#4debaf;--color-brand-primary-light:#1b2f2a;--color-brand-secondary:#0dbf7a;--color-brand-accent:#00e08a;--color-brand-dark:#0b1512;--color-brand-darker:#060d0b;--color-brand-light:#16211e;--color-primary:#00e08a;--color-primary-rgb:0, 224, 138;--color-bg-base:#0e1614;--color-bg-surface:#16211e;--color-bg-panel:#1b2825;--color-bg-subtle:#1b2825;--color-bg-muted:#22302c;--color-bg-strong:#2a3a35;--color-bg-elevated:#2a3a35;--color-border:#2a3a35;--color-border-subtle:#223029;--color-border-strong:#3a4c46;--color-on-brand-surface:#1b2825;--color-on-brand-surface-strong:#2a3a35;--color-on-brand-border:#ffffff1a;--color-on-brand-text:#e8f0ed;--color-on-brand-text-muted:#8aa39b;--color-text-primary:#e8f0ed;--color-text-primary-rgb:232, 240, 237;--color-text-secondary:#9db3ac;--color-text-muted:#6e8880;--color-text-inverse:#0e1614;--color-accent-success:#34d399;--color-accent-success-rgb:52, 211, 153;--color-accent-danger:#f87171;--color-accent-danger-rgb:248, 113, 113;--color-accent-warning:#fbbf24;--color-accent-warning-rgb:251, 191, 36;--color-accent-info:#38bdf8;--color-accent-info-rgb:56, 189, 248;--color-accent-error:#f87171;--color-success:#34d399;--color-success-rgb:52, 211, 153;--color-danger:#f87171;--color-error:#f87171;--color-warning:#fbbf24;--color-info:#38bdf8;--color-info-rgb:56, 189, 248;--color-indigo:#818cf8;--color-zinc-400:#71717a;--color-success-bg:#122e26;--color-success-border:#1e4a3c;--color-success-text:#5ee7b7;--color-danger-bg:#34191a;--color-danger-border:#572829;--color-danger-text:#fca5a5;--color-danger-accent:#f87171;--color-warning-bg:#33260f;--color-warning-border:#55401a;--color-warning-text:#fcd34d;--color-info-bg:#102a38;--color-info-border:#1b4257;--color-info-text:#7dd3fc;--color-neutral-bg:#22302c;--color-neutral-border:#2a3a35;--color-neutral-text:#9db3ac;--status-planned-bg:#1d2140;--status-planned-text:#a8adf5;--status-published-bg:#271b3d;--status-published-text:#c4a9f2;--entity-personnel:#8d93f0;--entity-hotel:#4fb8e8;--entity-group:#a98bea;--entity-mission:#e8ae4b;--entity-shift:#34d399;--entity-product:#f2954d;--entity-job:#f87171;--chart-1:#12a46b;--chart-2:#6a70e0;--chart-3:#bc8320;--chart-4:#2e93c9;--chart-5:#de5a50;--chart-6:#8b67d8;--chart-grid:#2a3a35;--chart-axis-text:#6e8880;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 3px #0000005c, 0 1px 2px #0000003d;--shadow:0 1px 3px #0000005c, 0 1px 2px #0000003d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 28px #0000007a;--shadow-xl:0 20px 44px #0000008a;--shadow-2xl:0 32px 64px #0000009e;--shadow-glow:0 0 0 4px #00e08a2e}body.light-theme{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body.dark-theme{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family-sans);background-color:var(--color-bg-base);color:var(--color-text-primary);font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;transition:background-color var(--transition-normal), color var(--transition-normal);line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);font-family:var(--font-family-heading);letter-spacing:-.02em;margin-bottom:1rem;font-weight:700;line-height:1.25}a{color:var(--color-brand-secondary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-brand-primary-hover)}::placeholder{color:var(--color-text-muted);opacity:1}:focus-visible{outline:2px solid var(--color-brand-secondary);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background-color:var(--color-border-strong);border-radius:var(--radius-pill);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-track{background:0 0}.glass-panel{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-card)}.react-aria-Button{background:var(--color-brand-primary);color:var(--color-text-inverse);font-family:inherit;font-size:var(--font-size-sm);border-radius:var(--radius-button);border:1px solid #0000;padding:.625rem 1.125rem;cursor:pointer!important;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast)!important;justify-content:center!important;align-items:center!important;gap:.5rem!important;font-weight:600!important;display:inline-flex!important}.react-aria-Button:hover{background:var(--color-brand-primary-hover)!important;box-shadow:var(--shadow-sm)!important}.react-aria-Button[data-pressed]{transform:translateY(1px);box-shadow:none!important}.react-aria-Button[data-focus-visible]{box-shadow:var(--shadow-glow)!important}.react-aria-Button[data-disabled]{opacity:.5;cursor:not-allowed!important}.react-aria-Button.secondary{background:var(--color-bg-strong)!important;color:var(--color-text-primary)!important;border-color:#0000!important}.react-aria-Button.secondary:hover{background:var(--color-border)!important;box-shadow:none!important}.react-aria-Input,.react-aria-TextField input,.react-aria-SearchField input,.react-aria-TextArea{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--border-radius-md);color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-base);width:100%;transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);padding:.75rem 1rem}.react-aria-Input:focus,.react-aria-TextField input:focus,.react-aria-SearchField input:focus,.react-aria-TextArea:focus{border-color:var(--color-brand-secondary);background:var(--color-bg-surface);box-shadow:var(--shadow-glow);outline:none}.react-aria-Label{font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.5rem;font-weight:600;display:block}.react-aria-DatePicker .react-aria-Button,.react-aria-DateRangePicker .react-aria-Button,.react-aria-ComboBox .react-aria-Button,.react-aria-Select .react-aria-Button,.react-aria-Group>.react-aria-Button{border-radius:var(--radius-button);width:auto;min-width:32px;color:var(--color-text-secondary)!important;box-shadow:none!important;background:0 0!important;border:none!important;padding:.35rem!important}.react-aria-DatePicker .react-aria-Button:hover,.react-aria-DateRangePicker .react-aria-Button:hover,.react-aria-ComboBox .react-aria-Button:hover,.react-aria-Select .react-aria-Button:hover,.react-aria-Group>.react-aria-Button:hover{background:var(--color-bg-muted)!important;color:var(--color-text-primary)!important}.react-aria-Popover,.menu-popover{background:var(--color-bg-panel);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);overflow:hidden}.app-container{width:100vw;min-height:100vh;display:flex;overflow-x:hidden}.main-content{background:var(--color-bg-base);flex-direction:column;flex:1;min-width:0;transition:transform .4s cubic-bezier(.16,1,.3,1),border-radius .4s cubic-bezier(.16,1,.3,1),filter .4s;display:flex}.app-container.mobile-menu-open .main-content{border-radius:var(--border-radius-lg);pointer-events:none;filter:brightness(.9);overflow:hidden;transform:translate(12px)scale(.96)}.content-wrapper{flex:1;padding:2rem;overflow-y:auto}.sidebar-spacer{width:260px;transition:width var(--transition-normal);flex-shrink:0;display:block}.sidebar-spacer[data-collapsed=true]{width:80px}.mobile-sidebar-backdrop{-webkit-backdrop-filter:blur(8px);z-index:45;background:#0c1a1652;animation:.4s cubic-bezier(.16,1,.3,1) backdrop-fade-in;position:fixed;inset:0}@media (width<=1024px){.sidebar-spacer{flex:0!important;width:0!important;display:none!important}.content-wrapper{padding:1.25rem}}.table-scroll-container{-webkit-overflow-scrolling:touch;width:100%;margin-bottom:1rem;overflow-x:auto}.table-scroll-container table{min-width:600px}.animate-fade-in{animation:fadeIn var(--transition-slow) forwards}.react-aria-Popover[data-entering],.react-aria-Modal[data-entering],.react-aria-Dialog[data-entering],.menu-popover[data-entering],.search-modal[data-entering]{animation:.2s cubic-bezier(.16,1,.3,1) forwards pop-in}.react-aria-Popover[data-exiting],.react-aria-Modal[data-exiting],.react-aria-Dialog[data-exiting],.menu-popover[data-exiting],.search-modal[data-exiting]{animation:.15s ease-in forwards pop-out}@keyframes pop-in{0%{opacity:0;transform:scale(.92)translateY(-8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes pop-out{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.92)translateY(-8px)}}.react-aria-ModalOverlay[data-entering],.search-overlay[data-entering]{animation:.2s ease-out forwards backdrop-fade-in}.react-aria-ModalOverlay[data-exiting],.search-overlay[data-exiting]{animation:.15s ease-in forwards backdrop-fade-out}@keyframes backdrop-fade-in{0%{opacity:0}to{opacity:1}}@keyframes backdrop-fade-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.if-header{background:var(--color-brand-primary);color:var(--color-on-brand-text);border-radius:var(--border-radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.25rem;margin-bottom:1.5rem;padding:1.5rem 1.75rem;display:flex}body.dark-theme .if-header{background:var(--color-bg-surface);border:1px solid var(--color-border)}.if-header__titles{min-width:0}.if-header__eyebrow{border-radius:var(--radius-pill);background:var(--color-brand-accent);width:32px;height:3px;margin-bottom:.875rem;display:block}.if-header__title{font-family:var(--font-family-heading);font-size:var(--font-size-2xl);letter-spacing:-.02em;color:var(--color-on-brand-text);margin:0;font-weight:700}.if-header__subtitle{font-size:var(--font-size-sm);color:var(--color-on-brand-text-muted);margin-top:.25rem}.if-header__actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.if-header__icon-btn{border-radius:var(--radius-button);background:var(--color-on-brand-surface-strong);border:1px solid var(--color-on-brand-border);width:40px;height:40px;color:var(--color-on-brand-text);cursor:pointer;transition:background-color var(--transition-fast), transform var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.if-header__icon-btn:hover{background:#ffffff29}.if-header__icon-btn[aria-pressed=true],.if-header__icon-btn.is-active{background:var(--color-bg-surface);color:var(--color-brand-primary);border-color:#0000}.if-header__context{border-radius:var(--border-radius-md);background:var(--color-on-brand-surface);border:1px solid var(--color-on-brand-border);width:100%;color:var(--color-on-brand-text);font-family:inherit;font-size:var(--font-size-base);cursor:pointer;transition:background-color var(--transition-fast);justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;font-weight:600;display:inline-flex}.if-header__context:hover{background:#ffffff1a}.page-header,.housekeeping-header,.inventory-header,.products-header,.product-details-header,.pers-header,.jobs-header,.settings-header,.details-header{background:var(--color-brand-primary);border-radius:var(--border-radius-lg);border:none;margin-bottom:1.5rem;padding:1.75rem}body.dark-theme .page-header,body.dark-theme .housekeeping-header,body.dark-theme .inventory-header,body.dark-theme .products-header,body.dark-theme .product-details-header,body.dark-theme .pers-header,body.dark-theme .jobs-header,body.dark-theme .settings-header,body.dark-theme .details-header{background:var(--color-bg-surface);border:1px solid var(--color-border)}.page-header :is(h1,h2,h3),.housekeeping-header :is(h1,h2,h3),.inventory-header :is(h1,h2,h3),.products-header :is(h1,h2,h3),.product-details-header :is(h1,h2,h3),.pers-header :is(h1,h2,h3),.jobs-header :is(h1,h2,h3),.settings-header :is(h1,h2,h3),.details-header :is(h1,h2,h3){color:var(--color-on-brand-text);font-family:var(--font-family-heading);font-size:var(--font-size-2xl);letter-spacing:-.02em;margin:0 0 .25rem;font-weight:700}.page-header p,.housekeeping-header p,.inventory-header p,.products-header p,.product-details-header p,.pers-header p,.jobs-header p,.settings-header p,.details-header p{color:var(--color-on-brand-text-muted);font-size:var(--font-size-sm);max-width:60ch;margin:0}.page-header :is(.eyebrow,.header-eyebrow,.page-eyebrow),.settings-header :is(.eyebrow,.header-eyebrow,.page-eyebrow){color:var(--color-brand-accent)}.page-header .react-aria-Button,.housekeeping-header .react-aria-Button,.inventory-header .react-aria-Button,.products-header .react-aria-Button,.pers-header .react-aria-Button,.jobs-header .react-aria-Button,.settings-header .react-aria-Button,.details-header .react-aria-Button{background:var(--color-accent-success)!important;color:var(--brand-forest)!important;border-color:#0000!important}.page-header .react-aria-Button:hover,.housekeeping-header .react-aria-Button:hover,.inventory-header .react-aria-Button:hover,.products-header .react-aria-Button:hover,.pers-header .react-aria-Button:hover,.jobs-header .react-aria-Button:hover,.settings-header .react-aria-Button:hover,.details-header .react-aria-Button:hover{background:var(--brand-emerald)!important}.page-header .react-aria-Button.secondary,.housekeeping-header .react-aria-Button.secondary,.inventory-header .react-aria-Button.secondary,.products-header .react-aria-Button.secondary,.pers-header .react-aria-Button.secondary,.jobs-header .react-aria-Button.secondary,.settings-header .react-aria-Button.secondary,.details-header .react-aria-Button.secondary{background:var(--color-on-brand-surface-strong)!important;color:var(--color-on-brand-text)!important;border:1px solid var(--color-on-brand-border)!important}body.dark-theme :is(.page-header,.housekeeping-header,.inventory-header,.products-header,.pers-header,.jobs-header,.settings-header,.details-header) .react-aria-Button{color:var(--color-bg-base)!important}body.dark-theme :is(.page-header,.housekeeping-header,.inventory-header,.products-header,.pers-header,.jobs-header,.settings-header,.details-header) .react-aria-Button.secondary{background:var(--color-bg-muted)!important;color:var(--color-text-primary)!important;border-color:var(--color-border)!important}.if-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-xs);padding:1.25rem}.if-card--flat{box-shadow:none}.if-card--interactive{cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast)}.if-card--interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.if-card--accent{border-left:4px solid var(--if-accent,var(--color-brand-primary))}.if-card--accent-success{--if-accent:var(--color-accent-success)}.if-card--accent-danger{--if-accent:var(--color-danger-accent)}.if-card--accent-warning{--if-accent:var(--color-accent-warning)}.if-card--accent-info{--if-accent:var(--color-accent-info)}.if-card__header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.if-card__title{font-family:var(--font-family-heading);font-size:var(--font-size-lg);color:var(--color-text-primary);margin:0;font-weight:700}.if-section-label{font-size:var(--font-size-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.75rem;font-weight:700;display:block}.if-section{margin-bottom:2rem}.if-section__title{font-family:var(--font-family-heading);font-size:var(--font-size-xl);color:var(--color-text-primary);margin:0 0 .25rem;font-weight:700}.if-section__desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:1rem}.if-chips{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.if-chip{border-radius:var(--border-radius-md);background:var(--color-bg-muted);color:var(--color-text-secondary);font-family:inherit;font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;align-items:center;gap:.4rem;padding:.5rem .9rem;font-weight:600;display:inline-flex}.if-chip:hover{background:var(--color-bg-strong);color:var(--color-text-primary)}.if-chip[aria-pressed=true],.if-chip.is-active{background:var(--color-accent-success);color:var(--brand-forest);border-color:#0000}body.dark-theme .if-chip.is-active,body.dark-theme .if-chip[aria-pressed=true]{color:var(--color-bg-base)}.if-chip--outline{background:var(--color-bg-surface);border-color:var(--color-border);color:var(--color-text-primary)}.if-chip--outline.is-active{background:var(--color-bg-surface);border-color:var(--color-brand-primary);color:var(--color-text-primary)}.if-chip__dot{border-radius:var(--radius-pill);background:var(--color-accent-danger);width:6px;height:6px}.if-segment{border-radius:var(--border-radius-md);background:var(--color-bg-muted);gap:4px;padding:4px;display:inline-flex}.if-segment__option{border-radius:var(--border-radius-sm);color:var(--color-text-secondary);font-family:inherit;font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:700;display:inline-flex}.if-segment__option:hover{color:var(--color-text-primary)}.if-segment__option[aria-selected=true],.if-segment__option.is-active{background:var(--color-bg-surface);color:var(--color-text-primary);box-shadow:var(--shadow-xs)}.if-tabs{border-bottom:1px solid var(--color-border);gap:0;margin-bottom:1.5rem;display:flex}.if-tab{color:var(--color-text-secondary);font-family:inherit;font-size:var(--font-size-base);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.875rem 1rem;font-weight:600}.if-tab:hover{color:var(--color-text-primary)}.if-tab[aria-selected=true],.if-tab.is-active{color:var(--color-text-primary);border-bottom-color:var(--color-brand-primary);font-weight:700}body.dark-theme .if-tab.is-active,body.dark-theme .if-tab[aria-selected=true]{border-bottom-color:var(--color-brand-accent)}.if-badge{border-radius:var(--border-radius-sm);background:var(--color-neutral-bg);border:1px solid var(--color-neutral-border);color:var(--color-neutral-text);font-size:var(--font-size-xs);letter-spacing:.04em;white-space:nowrap;align-items:center;gap:.35rem;padding:.3rem .7rem;font-weight:700;display:inline-flex}.if-badge--success{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-text)}.if-badge--danger{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger-text)}.if-badge--warning{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning-text)}.if-badge--info{background:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-info-text)}.if-badge--solid{background:var(--color-brand-primary);color:var(--color-text-inverse);border-color:#0000}.if-badge--lg{font-size:var(--font-size-sm);padding:.5rem .85rem}.if-badge--on-brand{background:var(--color-on-brand-surface-strong);border-color:var(--color-on-brand-border);color:var(--color-on-brand-text)}.if-btn{border-radius:var(--radius-button);background:var(--color-brand-primary);color:var(--color-text-inverse);font-family:inherit;font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.15rem;font-weight:600;line-height:1.2;display:inline-flex}.if-btn:hover{background:var(--color-brand-primary-hover);box-shadow:var(--shadow-sm)}.if-btn:active{box-shadow:none;transform:translateY(1px)}.if-btn:disabled,.if-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.if-btn--primary{background:var(--color-accent-success);color:var(--brand-forest)}.if-btn--primary:hover{background:var(--brand-mint)}body.dark-theme .if-btn--primary{color:var(--color-bg-base)}.if-btn--dark{background:var(--color-brand-primary);color:var(--color-text-inverse)}body.dark-theme .if-btn--dark,.if-btn--secondary{background:var(--color-bg-strong);color:var(--color-text-primary)}.if-btn--secondary:hover{background:var(--color-border);box-shadow:none}.if-btn--outline{border-color:var(--color-border);color:var(--color-text-primary);background:0 0}.if-btn--outline:hover{background:var(--color-bg-subtle);border-color:var(--color-border-strong);box-shadow:none}.if-btn--ghost{color:var(--color-text-secondary);background:0 0}.if-btn--ghost:hover{background:var(--color-bg-muted);color:var(--color-text-primary);box-shadow:none}.if-btn--danger{background:var(--color-accent-danger);color:#fff}.if-btn--danger:hover{background:#a93226}.if-btn--danger-soft{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger-text)}.if-btn--danger-soft:hover{background:var(--color-danger-border);box-shadow:none}.if-btn--block{width:100%}.if-btn--sm{font-size:var(--font-size-xs);padding:.45rem .8rem}.if-btn--lg{font-size:var(--font-size-base);padding:.9rem 1.5rem}.if-btn--icon{flex-shrink:0;width:40px;height:40px;padding:0}.if-btn--uppercase{text-transform:uppercase;letter-spacing:.06em;font-weight:700}.if-fab{z-index:30;border-radius:var(--radius-button);background:var(--color-accent-success);width:56px;height:56px;color:var(--brand-forest);cursor:pointer;box-shadow:var(--shadow-lg);transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:none;justify-content:center;align-items:center;display:inline-flex;position:fixed;bottom:2rem;right:2rem}.if-fab:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.if-list{flex-direction:column;gap:.75rem;display:flex}.if-list-row{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:center;gap:1rem;padding:.875rem 1rem;display:flex}.if-list-row--interactive{cursor:pointer}.if-list-row--interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.if-list-row__body{flex:1;min-width:0}.if-list-row__eyebrow{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:.15rem;font-weight:700}.if-list-row__title{font-size:var(--font-size-base);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.if-list-row__meta{font-size:var(--font-size-sm);color:var(--color-text-secondary);align-items:center;gap:.4rem;margin-top:.25rem;display:flex}.if-list-row__trailing{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.if-stack{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);overflow:hidden}.if-stack__row{border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-primary);transition:background-color var(--transition-fast);align-items:center;gap:1rem;padding:1rem 1.15rem;display:flex}.if-stack__row:last-child{border-bottom:none}.if-stack__row--interactive{cursor:pointer}.if-stack__row--interactive:hover{background:var(--color-bg-subtle)}.if-stack__label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.if-stack__value{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:600}.if-thumb{border-radius:var(--border-radius-md);background:var(--color-bg-subtle);width:56px;height:56px;color:var(--color-text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.if-thumb img{object-fit:cover;width:100%;height:100%}.if-thumb--sm{width:40px;height:40px}.if-thumb--lg{width:72px;height:72px}.if-avatar{border-radius:var(--border-radius-md);background:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);width:48px;height:48px;color:var(--color-text-primary);font-family:var(--font-family-heading);font-size:var(--font-size-lg);text-transform:uppercase;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex;position:relative}.if-avatar__status{border-radius:var(--radius-pill);background:var(--color-accent-success);border:2px solid var(--color-bg-surface);width:12px;height:12px;position:absolute;top:-3px;right:-3px}.if-field{margin-bottom:1.15rem}.if-field__label{font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.5rem;font-weight:700;display:block}.if-input-wrap{align-items:center;display:flex;position:relative}.if-input-wrap__icon{color:var(--color-text-muted);pointer-events:none;display:inline-flex;position:absolute;left:.9rem}.if-input-wrap__action{border-radius:var(--border-radius-sm);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.35rem;display:inline-flex;position:absolute;right:.6rem}.if-input-wrap__action:hover{color:var(--color-text-primary);background:var(--color-bg-muted)}.if-input{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--border-radius-md);width:100%;color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-base);transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);padding:.8rem 1rem}.if-input-wrap__icon~.if-input,.if-input--with-icon{padding-left:2.75rem}.if-input:focus{border-color:var(--color-brand-secondary);background:var(--color-bg-surface);box-shadow:var(--shadow-glow);outline:none}.if-input:disabled{opacity:.6;cursor:not-allowed}.if-input--invalid{border-color:var(--color-accent-danger)}.if-field__error{font-size:var(--font-size-sm);color:var(--color-accent-danger);margin-top:.4rem;display:block}.if-field__hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:.4rem;display:block}.if-toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.if-toolbar__search{flex:1;min-width:220px}.if-overlay{z-index:100;-webkit-backdrop-filter:blur(6px);background:#0c1a1673;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.if-modal{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-xl);width:100%;max-width:560px;max-height:calc(100vh - 4rem);box-shadow:var(--shadow-2xl);flex-direction:column;display:flex;overflow:hidden}.if-modal--sm{max-width:420px}.if-modal--lg{max-width:760px}.if-modal__header{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.if-modal__header--brand{background:var(--color-brand-primary);border-bottom:none;justify-content:center}.if-modal__header--brand .if-modal__title{color:var(--color-on-brand-text);text-transform:uppercase;letter-spacing:.08em;font-size:var(--font-size-base)}.if-modal__title{font-family:var(--font-family-heading);font-size:var(--font-size-xl);color:var(--color-text-primary);margin:0;font-weight:700}.if-modal__close{border-radius:var(--radius-pill);background:var(--color-bg-muted);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.if-modal__close:hover{background:var(--color-bg-strong);color:var(--color-text-primary)}.if-modal__body{flex:1;padding:1.5rem;overflow-y:auto}.if-modal__footer{border-top:1px solid var(--color-border-subtle);background:var(--color-bg-subtle);justify-content:flex-end;align-items:center;gap:.75rem;padding:1.15rem 1.5rem;display:flex}.if-confirm{text-align:center;background:var(--color-bg-surface);border-radius:var(--border-radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-2xl);padding:2rem 1.75rem 1.5rem}.if-confirm__icon{border-radius:var(--border-radius-lg);background:var(--color-danger-bg);width:64px;height:64px;color:var(--color-accent-danger);justify-content:center;align-items:center;margin:0 auto 1.25rem;display:inline-flex}.if-confirm__icon--success{background:var(--color-success-bg);color:var(--color-success-text)}.if-confirm__icon--warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.if-confirm__title{font-family:var(--font-family-heading);font-size:var(--font-size-lg);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-primary);margin:0 0 .5rem;font-weight:700}.if-confirm__text{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:1.5rem}.if-confirm__actions{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.if-note{border-radius:var(--border-radius-md);background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success-text);align-items:flex-start;gap:.75rem;padding:1rem 1.15rem;display:flex}.if-note--danger{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger-text)}.if-note--warning{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning-text)}.if-note--info{background:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-info-text)}.if-note__title{font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.2rem;font-weight:700}.if-note__text{font-size:var(--font-size-sm);line-height:1.5}.if-empty{text-align:center;color:var(--color-text-secondary);padding:3.5rem 1.5rem}.if-empty__icon{border-radius:var(--border-radius-lg);background:var(--color-bg-muted);width:64px;height:64px;color:var(--color-text-muted);justify-content:center;align-items:center;margin:0 auto 1rem;display:inline-flex}.if-empty__title{font-family:var(--font-family-heading);font-size:var(--font-size-lg);color:var(--color-text-primary);margin-bottom:.35rem;font-weight:700}.if-empty__text{font-size:var(--font-size-sm);max-width:380px;margin:0 auto}.if-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.if-stat{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-xs);padding:1.25rem}.if-stat__label{font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);align-items:center;gap:.5rem;margin-bottom:.6rem;font-weight:700;display:flex}.if-stat__value{font-family:var(--font-family-heading);font-size:var(--font-size-3xl);color:var(--color-text-primary);font-weight:700;line-height:1.1}.if-stat__delta{font-size:var(--font-size-sm);color:var(--color-text-secondary);align-items:center;gap:.25rem;margin-top:.5rem;font-weight:600;display:inline-flex}.if-stat__delta--up{color:var(--color-success-text)}.if-stat__delta--down{color:var(--color-danger-text)}.if-divider{background:var(--color-border-subtle);border:none;height:1px;margin:1.25rem 0}.if-muted{color:var(--color-text-secondary)}.if-subtle{color:var(--color-text-muted)}.if-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.if-row{align-items:center;gap:.5rem;display:flex}.if-row--between{justify-content:space-between}.if-grid{gap:1rem;display:grid}.if-grid--cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}@media (width<=640px){.if-header{padding:1.25rem}.if-header__title{font-size:var(--font-size-xl)}.if-confirm__actions{grid-template-columns:1fr}.if-fab{bottom:1.25rem;right:1.25rem}}
