@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700;800&display=swap";:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px}.cdp-wrapper{display:flex;flex-direction:column;overflow:hidden;width:100%;flex-shrink:0}.cdp-container{position:relative;height:960px;cursor:pointer;user-select:none;-webkit-user-select:none}.cdp-hour-row{position:absolute;left:0;right:0;display:flex;align-items:flex-start;pointer-events:none}.cdp-hour-label{width:36px;flex-shrink:0;text-align:right;padding-right:4px;font-size:.6rem;color:var(--color-text-secondary);transform:translateY(-.4em)}.cdp-hour-line{flex:1;height:1px;background:var(--color-border)}.cdp-block{position:absolute;left:38px;right:4px;border-radius:var(--radius-sm);border-left:3px solid var(--color-accent-blue);background:#3d7cc914;box-shadow:var(--shadow-sm);z-index:5;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow var(--transition-fast);min-height:15px}.cdp-block:hover{box-shadow:var(--shadow-md)}.cdp-block.cdp-block-active{box-shadow:var(--shadow-lg);z-index:10}.cdp-block-content{flex:1;display:flex;flex-direction:column;justify-content:center;padding:2px 4px;cursor:grab;min-height:0;overflow:hidden}.cdp-block-content:active{cursor:grabbing}.cdp-block-time{font-size:.6rem;font-weight:600;color:var(--color-text-dark);line-height:1.3;white-space:nowrap}.cdp-block-title{font-size:.55rem;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.cdp-block-duration{font-size:.55rem;color:var(--color-text-secondary);line-height:1.2}.cdp-resize-handle{position:absolute;left:0;right:0;height:8px;z-index:6}.cdp-resize-top{top:-2px;cursor:n-resize}.cdp-resize-bottom{bottom:-2px;cursor:s-resize}.cdp-resize-handle:after{content:"";position:absolute;left:50%;transform:translate(-50%);width:20px;height:3px;border-radius:2px;background:transparent;transition:background var(--transition-fast)}.cdp-resize-top:after{top:2px}.cdp-resize-bottom:after{bottom:2px}.cdp-block:hover .cdp-resize-handle:after{background:var(--color-accent-blue);opacity:.5}.cdp-block-active .cdp-resize-handle:after{background:var(--color-accent-blue);opacity:.8}.cdp-existing-item{position:absolute;left:38px;right:4px;border-radius:var(--radius-sm);border-left:3px solid #94a3b8;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:1px 4px;overflow:hidden;pointer-events:none;min-height:10px;opacity:.7}.cdp-existing-time{font-size:.55rem;font-weight:600;color:var(--color-text-secondary);line-height:1.2;white-space:nowrap}.cdp-existing-title{font-size:.5rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.user-multi-select{position:relative;width:100%}.ums-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.ums-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;background:#e8f0fe;color:#3d7cc9;border-radius:9999px;font-size:.7rem;font-weight:500;line-height:1.3}.ums-chip-remove{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:0;margin-left:2px;color:#3d7cc9;opacity:.6;transition:opacity .15s}.ums-chip-remove:hover{opacity:1}.ums-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:7px 10px;background:var(--color-bg-light, #f8f9fa);border:1px solid var(--color-border, #dee2e6);border-radius:var(--radius-sm, 4px);font-size:.8rem;color:var(--color-text-secondary, #6c757d);cursor:pointer;transition:border-color .15s}.ums-trigger:hover{border-color:var(--color-primary, #3D7CC9)}.ums-trigger-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ums-chevron{flex-shrink:0;transition:transform .2s}.ums-chevron.open{transform:rotate(180deg)}.ums-dropdown{position:absolute;z-index:100;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid var(--color-border, #dee2e6);border-radius:var(--radius-sm, 4px);box-shadow:0 4px 12px #0000001f;overflow:hidden}.ums-search-wrapper{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid var(--color-border, #dee2e6);color:var(--color-text-secondary, #6c757d)}.ums-search-input{flex:1;border:none;outline:none;font-size:.8rem;background:transparent;color:var(--color-text, #212529)}.ums-search-input::placeholder{color:var(--color-text-secondary, #adb5bd)}.ums-search-clear{display:flex;align-items:center;background:none;border:none;cursor:pointer;padding:2px;color:var(--color-text-secondary, #6c757d)}.ums-options{max-height:200px;overflow-y:auto;padding:4px 0}.ums-option{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:.8rem;cursor:pointer;transition:background .1s}.ums-option:hover{background:var(--color-bg-light, #f8f9fa)}.ums-option.selected{background:#e8f0fe}.ums-option input[type=checkbox]{width:14px;height:14px;flex-shrink:0;accent-color:var(--color-primary, #3D7CC9)}.ums-option-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ums-no-results{padding:12px;text-align:center;font-size:.8rem;color:var(--color-text-secondary, #6c757d)}.ums-footer{padding:6px 10px;border-top:1px solid var(--color-border, #dee2e6)}.ums-select-all{background:none;border:none;cursor:pointer;font-size:.75rem;color:var(--color-primary, #3D7CC9);padding:2px 0;font-weight:500}.ums-select-all:hover{text-decoration:underline}.aim-container{background:var(--color-bg-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-height:90vh;display:flex;flex-direction:column;animation:aimScaleIn .2s ease}.aim-panels-1{max-width:640px}.aim-panels-2{max-width:960px}.aim-panels-3{max-width:1200px}@keyframes aimScaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.aim-body{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);overflow:hidden;flex:1;min-height:0}.aim-card{background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden;display:flex;flex-direction:column}.aim-card-notes{width:260px;flex-shrink:0}.aim-card-main{flex:1;min-width:0;overflow-y:auto;padding:var(--spacing-lg)}.aim-card-preview{width:220px;flex-shrink:0}.aim-card-preview-header{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);background:var(--color-bg-light);display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.aim-card-preview-header svg{color:var(--color-primary-medium);flex-shrink:0}.aim-card-preview-header h3{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-dark)}.aim-card-preview-content{overflow-y:auto;flex:1;min-height:0}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg);animation:aimFadeIn .2s ease}@keyframes aimFadeIn{0%{opacity:0}to{opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--gradient-header);color:#fff;border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-shrink:0}.modal-header h2{font-size:1.1rem;color:inherit;margin:0}.modal-close{background:none;border:none;cursor:pointer;color:#fff;padding:var(--spacing-xs);opacity:.8;transition:opacity var(--transition-fast)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border-top:1px solid var(--color-border);border-radius:0 0 var(--radius-lg) var(--radius-lg);flex-shrink:0;background:#fff}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-weight:500;color:var(--color-text-primary);font-size:var(--font-size-sm)}.form-group .textarea{resize:vertical;min-height:60px}.toggle-container{display:flex;align-items:center}.toggle-container .toggle-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);transition:all var(--transition-fast)}.toggle-container .toggle-btn svg{transition:color var(--transition-fast)}.toggle-container .toggle-btn.active{background:#e8f4ea;border-color:#28a745;color:#28a745}.toggle-container .toggle-btn.active svg{color:#28a745}.searchable-dropdown{position:relative}.dropdown-backdrop{position:fixed;inset:0;z-index:99}.dropdown-list{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:#fff;border:1px solid var(--color-border);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-lg);z-index:100}.dropdown-item{padding:var(--spacing-sm) var(--spacing-md);display:flex;flex-direction:column;gap:2px;cursor:pointer;transition:background var(--transition-fast)}.dropdown-item:hover{background:var(--color-bg-light)}.dropdown-item.selected{background:var(--color-very-light-blue)}.dropdown-item-name{font-weight:500;color:var(--color-text-dark)}.dropdown-item-sub{font-size:.75rem;color:var(--color-text-secondary)}.aim-view-details{display:flex;flex-direction:column;gap:var(--spacing-md)}.aim-validation-status{margin-bottom:0}.aim-validation-status .status-validated{display:inline-flex;align-items:center;gap:var(--spacing-xs);background:#d4edda;color:#155724;padding:6px 12px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500}.aim-validation-status .status-pending{display:inline-flex;align-items:center;gap:var(--spacing-xs);background:#fff3cd;color:#856404;padding:6px 12px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm) var(--spacing-md)}.detail-item{display:flex;flex-direction:column;gap:4px;padding:var(--spacing-sm);background:var(--color-bg-light);border-radius:var(--radius-sm)}.detail-item-full{grid-column:1 / -1}.detail-item label{font-size:.7rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.detail-value{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-dark);flex-wrap:wrap;line-height:1.4}.detail-value svg{color:var(--color-primary-medium);flex-shrink:0}.detail-sub{display:block;color:var(--color-text-secondary);font-size:.8em;margin-top:2px}.type-badge{padding:4px 12px;border-radius:9999px;font-size:.75rem;font-weight:500;color:#fff}.status-badge{padding:4px 12px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.aim-footer-creator{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.8125rem;color:var(--color-text-secondary);margin-right:auto}.aim-card-notes .aim-notes-sidebar{border:none;width:100%;background:transparent}.aim-notes-sidebar{display:flex;flex-direction:column;flex:1;min-height:0}.notes-header{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;background:var(--color-bg-light);flex-shrink:0}.notes-header h3{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-dark)}.notes-list{flex:1;overflow-y:auto;padding:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-xs)}.notes-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-lg);color:var(--color-text-secondary);text-align:center;flex:1;font-size:var(--font-size-sm)}.note-item{background:var(--color-bg-light);padding:var(--spacing-sm);border-radius:var(--radius-sm);border-left:3px solid var(--color-primary-medium)}.note-author{font-size:.7rem;font-weight:600;color:var(--color-text-dark);margin-bottom:2px}.note-text{font-size:.8rem;color:var(--color-text-primary);margin:0 0 2px;line-height:1.4}.note-date{font-size:.65rem;color:var(--color-text-secondary)}.btn-icon{background:none;border:none;padding:var(--spacing-xs);cursor:pointer;color:var(--color-primary-medium);transition:all var(--transition-fast);border-radius:var(--radius-sm)}.btn-icon:hover{background:var(--color-bg-light)}.overlap-warning{display:flex;gap:var(--spacing-sm);align-items:flex-start;background:#fff8e1;border:1px solid #ffcc02;border-left:4px solid #f5a623;border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md)}.overlap-warning>svg{color:#f5a623;flex-shrink:0;margin-top:1px}.overlap-warning-content{flex:1;min-width:0}.overlap-warning-content strong{color:#b7791f;display:block;font-size:var(--font-size-sm);margin-bottom:2px}.overlap-warning-content>span{font-size:.8rem;color:#92610e}.overlap-list{list-style:none;padding:0;margin:var(--spacing-xs) 0 0 0}.overlap-list li{font-size:.8rem;color:#92610e;padding:2px 0;display:flex;align-items:center;gap:var(--spacing-xs)}.overlap-list li:before{content:"";width:6px;height:6px;border-radius:50%;background:#f5a623;flex-shrink:0}.aim-duration-picker{display:flex;gap:var(--spacing-sm);align-items:center}.aim-duration-field{display:flex;align-items:center;gap:var(--spacing-xs);flex:1}.aim-duration-field select{flex:1;min-width:0}.aim-duration-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}@media(max-width:900px){.aim-panels-3{max-width:100%}.aim-body{flex-direction:column;overflow-y:auto}.aim-card-notes{width:100%;max-height:200px;order:2}.aim-card-main{order:1}.aim-card-preview{display:none}}@media(max-width:768px){.aim-panels-1,.aim-panels-2,.aim-panels-3{max-width:100%}.aim-body{flex-direction:column;overflow-y:auto;padding:var(--spacing-sm);gap:var(--spacing-sm)}.aim-card-notes{width:100%;max-height:200px;order:2}.aim-card-main{order:1;padding:var(--spacing-md)}.aim-card-preview{display:none}.form-grid,.detail-grid{grid-template-columns:1fr}.modal-footer{padding:var(--spacing-sm)}}.aim-panels-1{max-width:580px}.aim-panels-2{max-width:900px}.aim-panels-3{max-width:1080px}.modal-overlay{padding:12px;background:#10223557;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.aim-container{max-height:min(88vh,920px);border:1px solid rgba(188,202,216,.74);border-radius:16px;background:#fffffff5;box-shadow:var(--shadow-xl)}.aim-body{gap:10px;padding:10px}.aim-card{border-radius:10px;box-shadow:none;background:#fffffff5}.aim-card-notes{width:244px}.aim-card-main{padding:14px}.aim-card-preview{width:208px}.aim-card-preview-header,.notes-header{padding:10px 12px;background:linear-gradient(180deg,#f8fbfdfa,#f3f7fbfa)}.aim-card-preview-header h3,.notes-header h3{font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.aim-container .modal-header{padding:12px 16px;background:linear-gradient(180deg,#f8fbfdfa,#f3f7fbfa);color:var(--color-text-dark);border-bottom:1px solid var(--color-border-soft)}.aim-container .modal-header h2{font-size:1rem;font-weight:800;color:inherit}.aim-container .modal-close{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(188,202,216,.76);border-radius:8px;color:var(--color-text-secondary);background:#ffffffd1;opacity:1}.aim-container .modal-close:hover{background:var(--color-surface);color:var(--color-text-dark)}.aim-container .modal-footer{gap:8px;padding:10px 16px;border-top:1px solid var(--color-border-soft);background:linear-gradient(180deg,#fafcfdf5,#f7fafdfa)}.form-grid{gap:10px 12px}.form-group{gap:5px}.form-group label{font-size:.76rem;font-weight:800;color:var(--color-text-secondary);letter-spacing:.04em;text-transform:uppercase}.form-group .textarea{min-height:72px}.toggle-container .toggle-btn{min-height:36px;padding:0 10px;background:#f3f7fbeb;border-color:#bccad8d1;color:var(--color-text-primary);font-weight:700}.toggle-container .toggle-btn svg{width:18px;height:18px}.toggle-container .toggle-btn.active{background:#1f8f5f1a;border-color:#1f8f5f3d;color:var(--color-success)}.form-link-row{display:grid;grid-template-columns:minmax(170px,190px) minmax(0,1fr);gap:12px;align-items:end}.form-link-toggle,.form-link-select{min-width:0}.form-link-select.is-disabled label{color:var(--color-text-muted)}.form-link-select.is-disabled .input{background:#f3f7fbb8;border-style:dashed;color:var(--color-text-muted)}.searchable-dropdown .input:disabled{cursor:not-allowed}.dropdown-list{margin-top:2px;max-height:176px;border-top:1px solid var(--color-border);border-radius:0 0 10px 10px}.dropdown-item{gap:1px;padding:8px 10px}.dropdown-item-name{font-size:.82rem;font-weight:700}.dropdown-item-sub{font-size:.72rem}.aim-duration-picker{gap:8px;flex-wrap:wrap}.aim-duration-field .input{min-height:36px}.aim-duration-label{font-size:.76rem;font-weight:700}.overlap-warning{margin-bottom:10px;padding:10px 12px}.aim-view-details{gap:12px}.detail-grid{gap:8px 10px}.detail-item{padding:10px}.note-item{padding:8px 10px}@media(max-width:768px){.form-link-row{grid-template-columns:1fr;gap:8px}.aim-body{gap:8px;padding:8px}.aim-card-main{padding:12px}.aim-container .modal-header,.aim-container .modal-footer{padding-inline:12px}}.navbar{position:fixed;inset:0 0 auto;height:64px;background:#f6f9fcd1;border-bottom:1px solid rgba(188,202,216,.7);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 10px 28px #1022350d;z-index:1000}.navbar-container{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);width:min(100%,1680px);height:100%;margin:0 auto;padding:0 18px}.navbar-logo{display:flex;align-items:center;gap:10px;min-width:0;color:var(--color-text-dark);text-decoration:none;flex-shrink:0}.navbar-logo:hover{color:var(--color-primary-medium)}.navbar-logo-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:linear-gradient(135deg,#1f5e7a1f,#2d7ff029);color:var(--color-primary-medium)}.navbar-logo-icon svg{width:18px;height:18px}.navbar-logo-text{font-size:.96rem;font-weight:800;letter-spacing:-.03em}.navbar-nav{flex:1;display:flex;align-items:center;justify-content:center;min-width:0}.navbar-links{display:flex;align-items:center;gap:6px;list-style:none}.navbar-links-group{display:flex;align-items:center;gap:6px}.navbar-links-divider{width:1px;height:22px;margin:0 6px;background:var(--color-border)}.navbar-link,.navbar-developer-button{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 11px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-size:.84rem;font-weight:600;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.navbar-link:hover,.navbar-developer-button:hover{color:var(--color-text-primary);background:#1f5e7a14}.navbar-link-active{background:var(--color-surface);border-color:#1f5e7a24;box-shadow:var(--shadow-sm);color:var(--color-primary-dark)}.navbar-link-dev,.navbar-developer-button{color:#936217;background:#c97a1b14;border-color:#c97a1b29}.navbar-link-dev:hover,.navbar-developer-button:hover{color:#6c4910;background:#c97a1b24;border-color:#c97a1b42}.navbar-developer-menu{position:relative;display:flex;align-items:center}.navbar-developer-dropdown,.navbar-user-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:230px;padding:8px;background:#fffffff5;border:1px solid rgba(188,202,216,.7);border-radius:14px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:dropdownFadeIn .16s ease;overflow:hidden}.navbar-developer-dropdown{left:0;right:auto}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.navbar-developer-link,.navbar-user-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:0 10px;border:none;border-radius:10px;background:transparent;color:var(--color-text-primary);font-size:.84rem;text-decoration:none;cursor:pointer;text-align:left;transition:background var(--transition-fast),color var(--transition-fast)}.navbar-developer-link:hover,.navbar-user-dropdown-item:hover{background:var(--color-surface-muted)}.navbar-developer-link-active{background:#1f5e7a14;color:var(--color-primary-dark)}.navbar-user{position:relative;flex-shrink:0}.navbar-user-button{display:flex;align-items:center;gap:10px;min-height:38px;padding:4px 6px 4px 4px;background:#ffffffe0;border:1px solid rgba(188,202,216,.8);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:pointer;transition:border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.navbar-user-button:hover{transform:translateY(-1px);border-color:#1f5e7a40;box-shadow:var(--shadow-md)}.navbar-user-avatar{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,var(--color-primary-medium),var(--color-accent-blue));color:var(--color-text-on-dark)}.navbar-user-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:700;color:var(--color-text-dark)}.navbar-user-info{display:flex;flex-direction:column;gap:2px;padding:6px 8px 10px}.navbar-user-fullname{font-size:.88rem;font-weight:700;color:var(--color-text-dark)}.navbar-user-email{font-size:.76rem;color:var(--color-text-secondary)}.navbar-user-role{font-size:.74rem;font-weight:600;color:var(--color-primary-medium)}.navbar-user-divider{height:1px;margin:4px 0;background:var(--color-border-soft)}.navbar-user-version{padding:2px 8px 8px;font-size:.74rem;color:var(--color-text-muted);letter-spacing:.04em}.navbar-user-dropdown-item-danger{color:var(--color-danger)}.navbar-user-dropdown-item-danger:hover{background:#c1495314}.navbar-mobile-toggle{display:none;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid rgba(188,202,216,.8);border-radius:10px;background:#ffffffe0;color:var(--color-text-dark);box-shadow:var(--shadow-sm);cursor:pointer}.navbar-mobile-toggle:hover{background:var(--color-surface)}.navbar-mobile-user-section{display:none}.navbar-user-desktop{display:flex}.navbar-mobile-overlay{display:none;position:fixed;inset:64px 0 0;background:#10223524;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:998}@media(max-width:1240px){.navbar-link span,.navbar-developer-button span{display:none}.navbar-link,.navbar-developer-button{width:36px;justify-content:center;padding:0}}@media(max-width:1024px){.navbar{height:64px}.navbar-mobile-toggle{display:inline-flex}.navbar-user-desktop{display:none}.navbar-nav{position:fixed;top:68px;left:12px;right:12px;display:block;padding:12px;background:#fffffff5;border:1px solid rgba(188,202,216,.78);border-radius:16px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translateY(-10px);opacity:0;visibility:hidden;transition:opacity var(--transition-normal),transform var(--transition-normal),visibility var(--transition-normal);z-index:999}.navbar-nav-open{transform:translateY(0);opacity:1;visibility:visible}.navbar-links,.navbar-links-group{flex-direction:column;align-items:stretch}.navbar-links{gap:4px}.navbar-links-divider{width:100%;height:1px;margin:8px 0}.navbar-link,.navbar-developer-button{width:100%;justify-content:flex-start;padding:0 14px}.navbar-link span,.navbar-developer-button span{display:inline}.navbar-developer-menu{display:flex;flex-direction:column;align-items:stretch}.navbar-developer-dropdown{position:static;margin-top:6px;min-width:0;padding:6px;background:var(--color-surface-muted);border-radius:12px;border-color:transparent;box-shadow:none}.navbar-mobile-user-section{display:flex;flex-direction:column;gap:0}.navbar-mobile-user-info{display:flex;align-items:center;gap:12px;padding:10px;border-radius:12px;background:var(--color-surface-muted)}.navbar-mobile-user-text{display:flex;flex-direction:column;gap:2px;min-width:0}.navbar-mobile-account-link{background:var(--color-surface-muted)}.navbar-mobile-logout-link{color:var(--color-danger)}.navbar-mobile-logout-link:hover{background:#c1495314}.navbar-mobile-overlay{display:block}}@media(max-width:640px){.navbar-container{padding:0 16px}.navbar-logo-text{display:none}.navbar-nav{top:68px}}.main-layout{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-top:64px;background:transparent}.database-test{max-width:1200px;margin:0 auto;padding:var(--spacing-lg)}.test-header{text-align:center;margin-bottom:var(--spacing-xl)}.test-header h1{font-size:2rem;background:var(--gradient-header);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-sm)}.test-header p{color:var(--color-text-secondary)}.login-section{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.login-section h2{margin-bottom:var(--spacing-md);font-size:1.25rem}.login-form{display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:flex-end}.form-group{flex:1;min-width:200px}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--color-text-primary)}.login-success{display:flex;align-items:center;gap:var(--spacing-md)}.user-info{font-weight:500;color:var(--color-text-primary)}.user-role{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.alternative-login-section{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.alternative-login-toggle{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.alternative-login-toggle input[type=checkbox]{cursor:pointer}.login-success.alternative{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#17a2b81a;border-radius:var(--radius-sm)}.badge-info{background:#17a2b833;color:var(--color-info)}.error-message{width:100%;color:var(--color-danger);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.test-controls{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.run-tests-btn{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg)}.current-section{color:var(--color-text-secondary);font-style:italic}.overall-status{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-weight:500}.overall-status.status-running{background:#17a2b81a;color:var(--color-info)}.overall-status.status-success{background:#28a7451a;color:var(--color-success)}.overall-status.status-error{background:#dc35451a;color:var(--color-danger)}.overall-status .counts{font-weight:400;color:var(--color-text-secondary);margin-left:auto}.test-results{display:flex;flex-direction:column;gap:var(--spacing-lg)}.test-section-results{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.test-section-results h3{background:var(--gradient-header);color:#fff;padding:var(--spacing-md) var(--spacing-lg);margin:0;font-size:1rem}.test-list{padding:var(--spacing-md)}.test-item{padding:var(--spacing-md);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);transition:background var(--transition-fast)}.test-item:last-child{margin-bottom:0}.test-item:hover{background:var(--color-bg-light)}.test-info{display:flex;align-items:center;gap:var(--spacing-sm)}.test-status-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem}.test-item.status-pending .test-status-icon{color:var(--color-text-secondary)}.test-item.status-running .test-status-icon{color:var(--color-info)}.test-item.status-success .test-status-icon{color:var(--color-success)}.test-item.status-error .test-status-icon{color:var(--color-danger)}.test-item.status-skipped .test-status-icon{color:var(--color-warning)}.test-name{font-weight:500}.test-message{margin-top:var(--spacing-xs);margin-left:32px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.test-item.status-error .test-message{color:var(--color-danger)}.test-data{margin-top:var(--spacing-sm);margin-left:32px}.test-data summary{cursor:pointer;font-size:var(--font-size-sm);color:var(--color-accent-blue)}.test-data summary:hover{text-decoration:underline}.test-data pre{margin-top:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-sm);font-size:var(--font-size-sm);overflow-x:auto;max-height:300px;overflow-y:auto}.test-info-box{background:#17a2b81a;border-radius:var(--radius-md);padding:var(--spacing-lg);margin-top:var(--spacing-lg)}.test-info-box h4{color:var(--color-info);margin-bottom:var(--spacing-sm)}.test-info-box p{margin-bottom:var(--spacing-sm)}.test-info-box .info-note{font-size:var(--font-size-sm);color:var(--color-text-secondary)}@media(max-width:768px){.database-test{padding:var(--spacing-md)}.login-form{flex-direction:column}.form-group{width:100%}.test-controls{flex-direction:column;align-items:stretch}.run-tests-btn{width:100%}.overall-status{flex-direction:column;text-align:center}.overall-status .counts{margin-left:0;margin-top:var(--spacing-xs)}}.login-page{min-height:100vh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);background:linear-gradient(135deg,#1e3a5f,#2b5a8e,#3d7cc9);position:relative;overflow:hidden;box-sizing:border-box}.login-bg-decoration{position:absolute;border-radius:50%;background:#ffffff0d;pointer-events:none}.login-bg-decoration-1{width:600px;height:600px;top:-200px;right:-200px}.login-bg-decoration-2{width:400px;height:400px;bottom:-100px;left:-100px}.login-bg-decoration-3{width:200px;height:200px;top:50%;left:10%;background:#ffffff08}.login-logo{position:absolute;top:var(--spacing-lg);left:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm);color:#fff;z-index:10}.logo-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center}.logo-icon svg{width:100%;height:100%}.logo-text{font-size:1.5rem;font-weight:700;letter-spacing:-.5px}.login-card{background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg);width:100%;max-width:420px;position:relative;z-index:10;box-sizing:border-box}.login-card-header{text-align:center;margin-bottom:var(--spacing-lg);padding:0}.login-card-header h1{font-size:1.75rem;color:var(--color-text-dark);margin:0 0 var(--spacing-xs) 0;font-weight:700}.login-card-header p{color:var(--color-text-secondary);font-size:var(--font-size-md);margin:0}.login-form{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;margin:0;padding:0}.login-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%;margin:0}.login-form label{font-weight:500;color:var(--color-text-primary);font-size:var(--font-size-sm);text-align:left;display:block;margin:0}.login-form .input{width:100%;padding:14px 16px;font-size:var(--font-size-md);line-height:1.5;border-radius:var(--radius-md);border:2px solid var(--color-border);background-color:#fff;color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);box-sizing:border-box;display:block;margin:0}.login-form .input:focus{outline:none;border-color:var(--color-accent-blue);box-shadow:0 0 0 4px #3d7cc91a}.login-form .input::placeholder{color:#adb5bd}.login-form .input:disabled{background-color:var(--color-bg-light);cursor:not-allowed}.login-error{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#dc35451a;border-radius:var(--radius-sm);color:var(--color-danger);font-size:var(--font-size-sm);width:100%;box-sizing:border-box}.login-error svg{width:20px;height:20px;flex-shrink:0}.login-button{width:100%;margin-top:var(--spacing-sm);padding:14px var(--spacing-lg);font-size:var(--font-size-lg);font-weight:600;border-radius:var(--radius-md);background:var(--gradient-primary);color:#fff;border:none;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);box-sizing:border-box}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #2b5a8e66}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-button .spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.login-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);color:#fff;z-index:10}.login-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.login-footer{position:absolute;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);text-align:center;color:#ffffffb3;font-size:var(--font-size-sm);z-index:10;white-space:nowrap}@media(max-width:768px){.login-page{padding:var(--spacing-md);justify-content:flex-start;padding-top:100px}.login-logo{position:relative;top:auto;left:auto;margin-bottom:var(--spacing-lg);justify-content:center}.login-card{padding:var(--spacing-lg);max-width:100%}.login-card-header h1{font-size:1.5rem}.login-footer{position:relative;bottom:auto;left:auto;transform:none;margin-top:var(--spacing-xl)}}@media(max-width:480px){.login-page{padding:var(--spacing-sm);padding-top:60px}.login-card{padding:var(--spacing-md);border-radius:var(--radius-lg)}.logo-text{font-size:1.25rem}.login-button{padding:12px var(--spacing-md);font-size:var(--font-size-md)}}.account-page{max-width:800px;margin:0 auto;padding:var(--spacing-lg)}.account-header{margin-bottom:var(--spacing-xl)}.account-header h1{font-size:2rem;background:var(--gradient-header);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-xs)}.account-header p{color:var(--color-text-secondary)}.account-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.account-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.account-card-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--gradient-header);color:#fff}.account-card-header h2{font-size:1rem;font-weight:600;color:inherit}.account-card-body{padding:var(--spacing-lg)}.account-card-danger .account-card-header{background:linear-gradient(135deg,#dc3545,#c82333)}.account-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md)}.account-info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.account-info-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--spacing-xs)}.account-info-value{font-weight:500;color:var(--color-text-dark)}.account-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.account-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.account-form label{font-weight:500;color:var(--color-text-primary);font-size:var(--font-size-sm)}.account-form .input{padding:var(--spacing-sm) var(--spacing-md)}.account-form button{align-self:flex-start;margin-top:var(--spacing-sm)}.account-message{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.account-message-error{background:#dc35451a;color:var(--color-danger)}.account-message-success{background:#28a7451a;color:var(--color-success)}@media(max-width:768px){.account-page{padding:var(--spacing-md)}.account-info-grid{grid-template-columns:1fr}.account-form button{width:100%}}.personal-agenda-page{display:flex;flex-direction:column;height:calc(100vh - 64px);padding:var(--spacing-md);gap:var(--spacing-md);overflow:hidden}.personal-agenda-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:var(--spacing-md);color:var(--color-text-secondary)}.personal-agenda-notification{position:fixed;top:80px;right:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;animation:slideInNotification .3s ease}.personal-agenda-notification-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.personal-agenda-notification-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.personal-agenda-notification .notification-close{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);margin-left:var(--spacing-sm);opacity:.7;color:inherit}.personal-agenda-notification .notification-close:hover{opacity:1}.personal-agenda-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-md);background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-shrink:0}.header-left,.header-center,.header-right{display:flex;align-items:center;gap:var(--spacing-md)}.nav-btn{padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-primary)}.nav-btn:hover{border-color:var(--color-primary-medium);background:var(--color-bg-light)}.current-period{min-width:200px;text-align:center;font-weight:600;font-size:var(--font-size-md);color:var(--color-text-dark);margin:0}.view-toggle .toggle-btn{padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.view-toggle .toggle-btn:hover{color:var(--color-text-primary)}.view-toggle .toggle-btn.active{background:#fff;color:var(--color-primary-medium);box-shadow:var(--shadow-sm)}.week-view{--week-grid-cols: repeat(8, 1fr);flex:1;min-height:0;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow-y:auto;display:flex;flex-direction:column}.week-header{display:grid;grid-template-columns:var(--week-grid-cols);border-bottom:2px solid var(--color-border);background:var(--color-bg-light);flex-shrink:0}.week-header-time{padding:var(--spacing-sm) var(--spacing-xs);border-right:1px solid var(--color-border);font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center}.week-header-day{padding:var(--spacing-sm);border-right:1px solid var(--color-border);display:flex;flex-direction:column;align-items:center;gap:2px}.day-name{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-dark);text-transform:capitalize}.day-number{font-size:var(--font-size-lg);color:var(--color-text-dark);font-weight:500}.week-body{display:grid;grid-template-columns:var(--week-grid-cols);flex:1;min-height:480px}.week-time-column{background:var(--color-bg-light);border-right:1px solid var(--color-border);display:flex;flex-direction:column;min-height:0}.week-time-label{flex:1;display:flex;align-items:flex-start;justify-content:center;padding-top:2px;font-size:.65rem;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);min-height:0}.week-day-column{position:relative;border-right:1px solid var(--color-border);min-height:0}.week-day-column:last-child{border-right:none}.week-day-column.today{background:#bad4ec08}.week-time-grid{position:absolute;inset:0;background-image:repeating-linear-gradient(to bottom,transparent,transparent calc(100% / 24 - 1px),var(--color-border) calc(100% / 24 - 1px),var(--color-border) calc(100% / 24));pointer-events:none}.week-agenda-item{position:absolute;left:2px;right:2px;min-height:14px;padding:2px 4px;background:#fff;border-left:3px solid var(--color-primary-medium);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-fast);font-size:.65rem;z-index:2;overflow:hidden}.week-agenda-item:hover{box-shadow:var(--shadow-md);z-index:10;transform:scale(1.02)}.week-agenda-item .item-time{font-weight:600;color:var(--color-text-primary);font-size:.6rem;line-height:1.2}.week-agenda-item .item-title{color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:.65rem;line-height:1.2}.week-agenda-item .item-duration{color:var(--color-text-secondary);font-size:.55rem;line-height:1.2}.item-notes-bubble{position:absolute;top:2px;right:2px;background:var(--color-primary-medium);color:#fff;border-radius:50%;min-width:14px;height:14px;display:flex;align-items:center;justify-content:center;font-size:.55rem;font-weight:700;line-height:1;padding:0 2px;box-sizing:border-box;z-index:10;box-shadow:0 1px 2px #00000026;pointer-events:none}.day-view{flex:1;min-height:0;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow-y:auto;display:flex}.day-grid{display:flex;flex:1;min-height:480px}.time-column{width:60px;flex-shrink:0;background:var(--color-bg-light);border-right:1px solid var(--color-border);display:flex;flex-direction:column}.time-label{flex:1;display:flex;align-items:flex-start;justify-content:center;padding-top:2px;font-size:.7rem;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);min-height:0}.items-column{flex:1;position:relative}.time-grid-background{position:absolute;inset:0;background-image:repeating-linear-gradient(to bottom,transparent,transparent calc(100% / 24 - 1px),var(--color-border) calc(100% / 24 - 1px),var(--color-border) calc(100% / 24));pointer-events:none}.hour-drop-zone{position:absolute;left:0;right:0;height:calc(100% / 24);z-index:1}.day-agenda-item{position:absolute;left:8px;right:8px;min-height:14px;padding:var(--spacing-xs) var(--spacing-sm);background:#fff;border-left:3px solid var(--color-primary-medium);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-fast);font-size:.75rem;z-index:2;overflow:hidden}.day-agenda-item:hover{box-shadow:var(--shadow-md);z-index:10}.day-agenda-item .item-time{font-weight:600;color:var(--color-text-primary);font-size:.7rem}.day-agenda-item .item-title{color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.day-agenda-item .item-duration{color:var(--color-text-secondary);font-size:.65rem}.delete-confirmation{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-md);padding:var(--spacing-lg)}.warning-icon{color:var(--color-warning)}.delete-confirmation p{color:var(--color-text-primary);margin:0;font-size:var(--font-size-md)}.delete-item-summary{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md);width:100%;text-align:left}.delete-item-summary div{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.delete-item-summary strong{color:var(--color-text-dark)}.spinner{animation:spin 1s linear infinite}@media(max-width:1024px){.personal-agenda-header{flex-direction:column;align-items:stretch}.header-left,.header-center,.header-right{justify-content:center}.current-period{min-width:auto}}@media(max-width:768px){.personal-agenda-page{padding:var(--spacing-sm);height:calc(100vh - 56px)}.personal-agenda-header{padding:var(--spacing-sm);gap:var(--spacing-sm)}.week-view{--week-grid-cols: repeat(8, 1fr)}.week-header-time{font-size:.6rem;padding:var(--spacing-xs)}.week-header-day{padding:var(--spacing-xs)}.day-name{font-size:.7rem}.day-number{font-size:.85rem}.week-time-label{font-size:.55rem}.week-agenda-item{font-size:.55rem;padding:1px 2px}.week-agenda-item .item-time{font-size:.5rem}.week-agenda-item .item-title{font-size:.55rem}.week-agenda-item .item-duration{font-size:.45rem}.time-column{width:40px}}@media(max-width:480px){.current-period{font-size:.75rem;min-width:auto}.nav-btn{padding:4px}.header-right .btn span{display:none}.header-right .btn{padding:var(--spacing-xs)}.view-toggle{padding:1px;gap:1px}.view-toggle .toggle-btn{padding:6px 10px;font-size:.7rem}.day-agenda-item{font-size:.65rem}}.project-planning-section{border-bottom:1px solid var(--color-border);background:#f3f7fb8c}.project-planning-header{display:grid;border-bottom:1px solid var(--color-border);background:#edf5fbdb}.project-planning-company-label{padding:8px 10px;display:flex;align-items:center;gap:8px;font-size:.72rem;font-weight:800;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-right:1px solid var(--color-border)}.project-planning-company-label .company-color-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.project-header-day{border-right:1px solid rgba(215,225,234,.46)}.project-header-day:last-child{border-right:none}.project-planning-row{display:grid;min-height:32px;border-bottom:1px solid rgba(215,225,234,.55)}.project-planning-row:last-child{border-bottom:none}.project-planning-row.subproject{background:#10223505}.project-planning-info{padding:4px 10px;display:flex;align-items:center;gap:6px;border-right:1px solid var(--color-border);min-width:0}.project-expand-btn{background:none;border:none;padding:0;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;flex-shrink:0}.project-expand-btn:hover{color:var(--color-text-dark)}.subproject-indent{width:16px;flex-shrink:0}.project-icon{color:var(--color-text-secondary);flex-shrink:0}.project-title{font-size:.76rem;font-weight:600;color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.project-title:hover{color:var(--color-primary-medium)}.project-day-cell{border-right:1px solid rgba(215,225,234,.44);position:relative;min-height:32px;display:flex;align-items:center}.project-day-cell:last-child{border-right:none}.project-day-cell.today{background:#2d7ff00d}.project-bar{height:18px;width:100%;display:flex;align-items:center;overflow:hidden;box-shadow:inset 0 -1px #ffffff2e;transition:filter var(--transition-fast),transform var(--transition-fast)}.project-bar.bar-start{border-radius:6px 0 0 6px;margin-left:2px}.project-bar.bar-end{border-radius:0 6px 6px 0;margin-right:2px}.project-bar.bar-start.bar-end{border-radius:6px}.project-bar-label{font-size:.66rem;color:inherit;padding:0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;flex:1;min-width:0}.project-bar-count{font-size:.6rem;font-weight:800;color:inherit;opacity:.88;padding:0 6px;white-space:nowrap;flex-shrink:0}.project-bar:hover{filter:brightness(.96);transform:translateY(-1px)}.project-planning-info:hover .project-title{color:var(--color-primary-medium)}.unplanned-panel-backdrop{position:fixed;inset:0;background:#1022352e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999}.unplanned-panel{position:fixed;top:12px;right:12px;width:400px;max-width:calc(100vw - 24px);height:calc(100vh - 24px);background:#fffffff5;border:1px solid rgba(188,202,216,.72);border-radius:28px;box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:1000;display:flex;flex-direction:column;animation:slideIn .22s ease-out;overflow:hidden}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.unplanned-panel-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 16px;border-bottom:1px solid var(--color-border-soft);background:#f3f7fbd1}.unplanned-panel-header h3{display:flex;align-items:center;gap:8px;margin:0;font-size:1rem;font-weight:800;color:var(--color-text-dark)}.unplanned-panel-close{background:transparent;border:1px solid transparent;cursor:pointer;color:var(--color-text-secondary);padding:6px;border-radius:12px}.unplanned-panel-close:hover{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text-dark)}.unplanned-panel-actions,.unplanned-create-form{padding:14px 20px;border-bottom:1px solid var(--color-border-soft)}.unplanned-create-form{display:flex;flex-direction:column;gap:10px;background:#f3f7fb80}.unplanned-input,.unplanned-textarea,.unplanned-select{width:100%;min-height:42px;padding:10px 12px;border:1px solid rgba(188,202,216,.82);border-radius:14px;font-size:.9rem;font-family:inherit;color:var(--color-text-primary);background:#fffffff0;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.unplanned-input:focus,.unplanned-textarea:focus,.unplanned-select:focus{outline:none;background:var(--color-surface);border-color:var(--color-accent-blue);box-shadow:var(--focus-ring)}.unplanned-textarea{resize:vertical;min-height:64px}.unplanned-form-buttons{display:flex;gap:8px}.unplanned-panel-content{flex:1;overflow-y:auto;padding:0}.unplanned-loading,.unplanned-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;color:var(--color-text-secondary);gap:8px}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.unplanned-group{border-bottom:1px solid var(--color-border-soft)}.unplanned-group-header{padding:10px 20px;font-size:.72rem;font-weight:800;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;background:#f3f7fbad;display:flex;justify-content:space-between;align-items:center}.unplanned-group-count{background:#10223514;color:var(--color-text-primary);font-size:.66rem;padding:2px 8px;border-radius:999px}.unplanned-item{padding:14px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-bottom:1px solid rgba(215,225,234,.55);transition:background var(--transition-fast)}.unplanned-item:last-child{border-bottom:none}.unplanned-item:hover{background:#1f5e7a0a}.unplanned-item-main{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0}.unplanned-priority-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;margin-top:6px}.unplanned-item-info{display:flex;flex-direction:column;gap:3px;min-width:0}.unplanned-item-title{font-size:.92rem;font-weight:700;color:var(--color-text-dark)}.unplanned-item-desc{font-size:.78rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unplanned-item-date{font-size:.72rem;color:var(--color-text-muted)}.unplanned-item-actions{display:flex;gap:6px;flex-shrink:0}.unplanned-action-btn{background:#ffffffeb;border:1px solid rgba(188,202,216,.82);cursor:pointer;padding:6px;border-radius:12px;color:var(--color-text-secondary);display:flex;align-items:center;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.unplanned-action-btn:hover{background:var(--color-surface);color:var(--color-primary-medium);border-color:#1f5e7a38}.unplanned-action-btn.danger:hover{color:var(--color-danger);border-color:#c1495338}.btn-sm{padding:6px 12px;font-size:.8rem}.month-view{overflow-x:auto;min-width:0;background:transparent}.month-header{display:grid;border-bottom:1px solid var(--color-border);background:linear-gradient(180deg,#f3f7fbf5,#edf5fbf5);position:sticky;top:0;z-index:10}.month-header-label{padding:10px 12px;font-weight:700;font-size:.82rem;color:var(--color-text-dark);border-right:1px solid var(--color-border);display:flex;align-items:center;text-transform:capitalize}.month-header-day{padding:6px 2px;text-align:center;font-size:.66rem;border-right:1px solid rgba(188,202,216,.46);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;transition:background var(--transition-fast)}.month-header-day:hover{background:#1f5e7a0f}.month-header-day.today{background:#2d7ff017;font-weight:700}.month-header-day.weekend{background:#10223506}.month-day-name{color:var(--color-text-muted);text-transform:uppercase;font-size:.54rem;letter-spacing:.04em}.month-day-num{color:var(--color-text-dark);font-weight:700}.month-header-day:last-child{border-right:none}.month-grid-container{min-height:220px}.month-row{display:grid;min-height:28px;border-bottom:1px solid rgba(215,225,234,.65)}.month-project-row{background:#f3f7fb8c}.month-user-row:hover{background:#1f5e7a06}.month-row-label{padding:4px 10px;display:flex;align-items:center;gap:6px;border-right:1px solid var(--color-border);min-width:0;font-size:.74rem;color:var(--color-text-dark)}.month-row-label-clickable{cursor:pointer}.month-row-label-clickable:hover{color:var(--color-primary-medium)}.company-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.month-row-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.month-cell{border-right:1px solid rgba(215,225,234,.45);position:relative;display:flex;align-items:center;min-height:28px;cursor:pointer}.month-cell:last-child{border-right:none}.month-cell.weekend{background:#10223505}.month-cell.today{background:#2d7ff00d}.month-bar{height:18px;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 -1px #ffffff2e;transition:filter var(--transition-fast),transform var(--transition-fast)}.month-bar:hover{filter:brightness(.96);transform:translateY(-1px)}.month-bar-count{font-size:.58rem;font-weight:700;line-height:1;white-space:nowrap}.month-bar.bar-start{border-radius:6px 0 0 6px;margin-left:1px}.month-bar.bar-end{border-radius:0 6px 6px 0;margin-right:1px}.month-bar.bar-start.bar-end{border-radius:6px}.month-item-count{width:100%;margin:0 2px;text-align:center;font-size:.62rem;font-weight:700;color:var(--color-primary-dark);background:#2d7ff017;border-radius:999px;padding:2px 0}.month-empty{padding:52px 20px;text-align:center;color:var(--color-text-secondary)}.year-view{overflow-x:auto;min-width:0;background:transparent}.year-header{display:grid;grid-template-columns:200px repeat(12,1fr);border-bottom:1px solid var(--color-border);background:linear-gradient(180deg,#f3f7fbf5,#edf5fbf5);position:sticky;top:0;z-index:10}.year-header-label{padding:12px;font-weight:800;font-size:.92rem;color:var(--color-text-dark);border-right:1px solid var(--color-border);display:flex;align-items:center}.year-header-month{padding:12px 4px;text-align:center;font-size:.75rem;font-weight:700;color:var(--color-text-secondary);border-right:1px solid rgba(188,202,216,.44);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.year-header-month:hover{background:#1f5e7a0f}.year-header-month.current{background:#2d7ff017;color:var(--color-primary-dark)}.year-header-month:last-child{border-right:none}.year-grid-container{min-height:220px}.year-company-group{border-bottom:1px solid var(--color-border)}.year-company-header{display:grid;grid-template-columns:200px repeat(12,1fr);background:#f3f7fbd1;border-bottom:1px solid rgba(215,225,234,.8)}.year-company-label{padding:8px 12px;display:flex;align-items:center;gap:8px;font-size:.74rem;font-weight:800;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-right:1px solid var(--color-border)}.year-month-spacer{border-right:1px solid rgba(215,225,234,.4)}.year-month-spacer:last-child{border-right:none}.year-row{display:grid;grid-template-columns:200px repeat(12,1fr);min-height:36px;border-bottom:1px solid rgba(215,225,234,.62)}.year-row:last-child{border-bottom:none}.year-row:hover{background:#1f5e7a06}.year-row-label{padding:6px 12px;display:flex;align-items:center;gap:8px;border-right:1px solid var(--color-border);min-width:0;cursor:pointer;font-size:.8rem;color:var(--color-text-dark)}.year-row-label:hover{color:var(--color-primary-medium)}.year-row-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600;flex:1;min-width:0}.year-row-count{flex-shrink:0;font-size:.63rem;font-weight:700;color:var(--color-primary-dark);background:#2d7ff017;padding:2px 7px;border-radius:999px;margin-left:auto}.year-cell{border-right:1px solid rgba(215,225,234,.45);position:relative;display:flex;align-items:center;cursor:pointer}.year-cell:last-child{border-right:none}.year-cell.current{background:#2d7ff00d}.year-cell:hover{background:#1f5e7a0a}.year-bar{height:18px;flex:1;min-width:0;cursor:pointer;box-shadow:inset 0 -1px #ffffff2e;transition:filter var(--transition-fast),transform var(--transition-fast)}.year-bar:hover{filter:brightness(.97);transform:translateY(-1px)}.year-bar.bar-start{border-radius:6px 0 0 6px}.year-bar.bar-end{border-radius:0 6px 6px 0}.year-bar.bar-start.bar-end{border-radius:6px}.year-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 20px;color:var(--color-text-secondary);gap:8px}.year-empty p{margin:0}.year-empty-hint{font-size:.85rem;max-width:400px;text-align:center}.company-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.global-agenda-page{display:flex;flex-direction:column;height:calc(100vh - 64px);padding:var(--spacing-md);gap:var(--spacing-md);overflow:hidden}.planning-layout{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:var(--spacing-md);flex:1;min-height:0}.planning-sidebar{min-height:0}.planning-sidebar-card{height:100%;display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md);background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow-y:auto}.planning-sidebar-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.planning-sidebar-button{width:100%;justify-content:center}.planning-sidebar-separator{height:1px;background:var(--color-border)}.planning-display-mode{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;background:var(--color-bg-light);border-radius:var(--radius-md)}.planning-display-mode-button{border:none;border-radius:var(--radius-sm);background:transparent;padding:var(--spacing-sm) var(--spacing-xs);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.planning-display-mode-button:hover{color:var(--color-text-primary)}.planning-display-mode-button.active{background:#fff;color:var(--color-primary-medium);box-shadow:var(--shadow-sm)}.planning-weekend-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-dark)}.planning-filter-section{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;overflow:visible}.planning-filter-section-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-md);background:transparent;border:none;cursor:pointer;font-size:1rem;font-weight:700;color:var(--color-text-dark)}.planning-filter-section-header svg{transition:transform var(--transition-fast)}.planning-filter-section-header svg.rotate{transform:rotate(180deg)}.planning-selector-list{display:flex;flex-direction:column;gap:2px;padding:0 var(--spacing-sm) var(--spacing-sm)}.planning-selector-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:10px var(--spacing-sm);border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.planning-selector-row:hover{background:var(--color-bg-light)}.planning-selector-label{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0;color:var(--color-text-primary);font-size:var(--font-size-sm)}.planning-selector-label span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-collapsed-picker{padding:0 var(--spacing-sm) var(--spacing-sm)}.planning-dropdown-inline{width:100%}.planning-dropdown-trigger{width:100%;justify-content:space-between}.planning-dropdown-menu{min-width:100%}.planning-main{min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--spacing-md)}.planning-main-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.planning-main-header-left{display:flex;align-items:center;justify-content:flex-start;min-width:0}.planning-main-nav{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);min-width:0;justify-self:center}.planning-main-header-right{display:flex;align-items:center;justify-content:flex-end;min-width:0}.global-agenda-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:var(--spacing-md);color:var(--color-text-secondary)}.global-agenda-notification{position:fixed;top:80px;right:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;animation:slideInNotification .3s ease}@keyframes slideInNotification{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.global-agenda-notification-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.global-agenda-notification-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.global-agenda-notification .notification-close{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);margin-left:var(--spacing-sm);opacity:.7;color:inherit}.global-agenda-notification .notification-close:hover{opacity:1}.toggle-switch{position:relative;width:36px;height:20px;background:var(--color-border, #d1d5db);border-radius:10px;cursor:pointer;transition:background .2s;flex-shrink:0;border:none;padding:0}.toggle-switch.active{background:var(--color-primary-medium, #3b82f6)}.toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 2px #00000026}.company-dropdown-container,.role-dropdown-container{position:relative}.company-dropdown-trigger,.role-dropdown-trigger{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary);transition:all var(--transition-fast)}.company-dropdown-trigger:hover,.role-dropdown-trigger:hover{border-color:var(--color-primary-medium)}.company-dropdown-trigger svg.rotate,.role-dropdown-trigger svg.rotate{transform:rotate(180deg)}.company-dropdown-backdrop,.role-dropdown-backdrop{position:fixed;inset:0;z-index:99}.company-dropdown-menu,.role-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:300px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;animation:fadeInDown .15s ease}.company-dropdown-header,.role-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap;gap:var(--spacing-md)}.company-select-all,.role-select-all{background:none;border:none;color:var(--color-primary-medium);font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;margin-left:var(--spacing-sm)}.company-select-all:hover,.role-select-all:hover{text-decoration:underline}.company-dropdown-item,.role-dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:var(--font-size-sm);transition:background var(--transition-fast)}.company-dropdown-item:hover,.role-dropdown-item:hover{background:var(--color-bg-light)}.company-dropdown-item-project{padding-left:40px;font-size:.82em;color:var(--color-text-secondary);border-left:2px solid var(--color-border);margin-left:16px;margin-right:8px;border-radius:0;background:#f5f7fa66}.company-color-dot-outline{background:transparent!important;border:2px solid;width:8px;height:8px;border-radius:50%;box-sizing:border-box}.company-dropdown-item input[type=checkbox],.role-dropdown-item input[type=checkbox]{accent-color:var(--color-primary-medium)}.company-dropdown-footer{border-top:1px solid var(--color-border);padding:var(--spacing-xs)}.company-dropdown-action{display:flex;align-items:center;gap:6px;width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:none;background:none;border-radius:var(--radius-sm);color:var(--color-primary-medium);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:background var(--transition-fast)}.company-dropdown-action:hover{background:var(--color-bg-light)}.btn-today{padding:var(--spacing-sm) var(--spacing-md);font-weight:500}.btn-today.disabled{opacity:.5;cursor:not-allowed}.date-nav{display:flex;align-items:center;gap:var(--spacing-sm)}.btn-nav{padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center}.date-display{min-width:200px;text-align:center;font-weight:600;font-size:var(--font-size-md);color:var(--color-text-dark)}.view-toggle{display:flex;background:var(--color-bg-light);border-radius:var(--radius-md);padding:2px;gap:2px}.view-toggle-btn{padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.view-toggle-btn:hover{color:var(--color-text-primary)}.view-toggle-btn.active{background:#fff;color:var(--color-primary-medium);box-shadow:var(--shadow-sm)}.btn-secondary.active{background:var(--color-primary-light, #e8f0fe);color:var(--color-primary-medium);border-color:var(--color-primary-medium)}.global-agenda-content{flex:1;min-height:0;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:auto;position:relative;z-index:0}.week-view{display:flex;flex-direction:column;height:100%;min-height:100%}.week-header{display:grid;grid-template-columns:200px repeat(7,1fr);border-bottom:2px solid var(--color-border);position:sticky;top:0;background:#fff;z-index:10}.week-header-user{padding:var(--spacing-md);font-weight:600;color:var(--color-text-dark);border-right:1px solid var(--color-border);background:var(--color-bg-light);display:flex;align-items:center;justify-content:center}.week-header-day{min-width:0;padding:var(--spacing-sm) var(--spacing-md);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);border-right:1px solid var(--color-border);background:var(--color-bg-light)}.week-header-day:last-child{border-right:none}.week-header-day.today{background:var(--color-very-light-blue)}.week-header-day.today .day-name{color:var(--color-primary-medium)}.day-name{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-dark)}.standby-badge{display:flex;align-items:center;gap:4px;padding:2px 8px;background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:9999px;font-size:.7rem;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.standby-badge:hover{background:var(--color-very-light-blue);border-color:var(--color-primary-medium)}.standby-badge.has-standby{background:var(--color-very-light-blue);border-color:var(--color-primary-medium);color:var(--color-primary-medium)}.standby-count{font-weight:600}.standby-names{font-weight:500;font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.week-grid-container{flex:1;display:flex;flex-direction:column;overflow:auto}.week-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--color-text-secondary);gap:var(--spacing-md);flex:1}.week-user-row{display:grid;grid-template-columns:200px repeat(7,1fr);border-bottom:1px solid var(--color-border);min-height:60px;transition:background var(--transition-fast)}.week-user-row:last-child{border-bottom:none}.week-user-row:hover{filter:brightness(.98)}.week-user-cell{padding:var(--spacing-xs) var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-xs);border-right:1px solid var(--color-border);background:#ffffff80}.user-company-indicator{width:4px;align-self:stretch;border-radius:2px;flex-shrink:0}.user-info{display:flex;flex-direction:column;gap:0px;flex:1;min-width:0}.user-name{font-weight:500;font-size:.8rem;color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:.65rem;color:var(--color-text-secondary);text-transform:capitalize}.week-day-cell{min-width:0;padding:var(--spacing-xs);border-right:1px solid var(--color-border);display:flex;flex-direction:column;transition:background var(--transition-fast);overflow:hidden}.week-day-cell:last-child{border-right:none}.week-day-cell.today{background:#bad4ec0d}.week-day-cell:hover{background:#ffffff4d}.day-cell-content{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1;min-width:0;overflow:hidden}.week-agenda-item{padding:var(--spacing-xs) var(--spacing-sm);background:#fff;border-left:3px solid var(--color-primary-medium);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-fast);font-size:.75rem;display:flex;flex-direction:column;gap:2px;position:relative;min-width:0;max-width:100%}.week-agenda-item:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.week-agenda-item.dragging{opacity:.5;transform:scale(.95)}.week-agenda-item .item-header-row,.day-agenda-item .item-header-row{display:flex;align-items:center;justify-content:space-between;gap:4px}.week-agenda-item .item-time,.day-agenda-item .item-time{display:flex;align-items:center;gap:2px;font-weight:600;color:var(--color-text-primary);font-size:.7rem}.week-agenda-item .item-duration,.day-agenda-item .item-duration{display:flex;align-items:center;gap:2px;color:var(--color-text-secondary);font-size:.65rem;flex-shrink:0}.week-agenda-item .item-title,.day-agenda-item .item-title{color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.week-agenda-item .item-document-number,.day-agenda-item .item-document-number{color:var(--color-text-secondary);font-size:.65rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-notes-bubble{position:absolute;top:2px;right:2px;background:var(--color-primary-medium);color:#fff;border-radius:50%;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700;line-height:1;padding:0 3px;box-sizing:border-box;z-index:10;box-shadow:0 1px 2px #00000026;pointer-events:none}.day-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.day-users-header-row{display:flex;background:var(--color-bg-light);border-bottom:2px solid var(--color-border);position:sticky;top:0;z-index:20}.day-header-spacer{min-width:60px;max-width:60px;border-right:1px solid var(--color-border)}.day-user-header-cell{min-width:150px;flex:1;padding:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-sm);border-right:1px solid var(--color-border);justify-content:center}.day-user-header-cell:last-child{border-right:none}.day-user-header-cell .user-name{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-dark)}.day-grid{display:flex;flex:1;min-height:0}.time-column{min-width:60px;max-width:60px;background:var(--color-bg-light);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex:1}.time-slot{flex:1;display:flex;align-items:flex-start;justify-content:center;padding-top:var(--spacing-xs);font-size:.75rem;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);min-height:0}.day-users-container{display:flex;flex:1;overflow-x:auto;overflow-y:hidden;min-height:0}.day-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;color:var(--color-text-secondary);gap:var(--spacing-md)}.day-user-column{min-width:150px;flex:1;border-right:1px solid var(--color-border);display:flex;flex-direction:column;min-height:0}.day-user-column:last-child{border-right:none}.day-user-slots{flex:1;position:relative;height:100%;min-height:0;background-image:repeating-linear-gradient(to bottom,transparent,transparent calc(4.166% - 1px),var(--color-border) calc(4.166% - 1px),var(--color-border) 4.166%)}.day-agenda-item{position:absolute;left:4px;right:4px;min-height:20px;padding:var(--spacing-xs) var(--spacing-sm);background:#fff;border-left:3px solid var(--color-primary-medium);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-fast);font-size:.75rem}.day-agenda-item:hover{box-shadow:var(--shadow-md);z-index:5}.day-agenda-item.dragging{opacity:.5}.global-agenda-page .modal-header-danger{background:linear-gradient(135deg,#dc3545,#c82333)}.delete-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-md);padding:var(--spacing-lg)}.delete-icon{color:var(--color-danger)}.delete-content h3{color:var(--color-text-dark);margin:0}.delete-content p{color:var(--color-text-primary);margin:0}.delete-summary{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md);width:100%}.standby-content{display:flex;flex-direction:column;gap:var(--spacing-md)}.standby-date{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-very-light-blue);border-radius:var(--radius-md);color:var(--color-primary-medium);font-weight:500}.standby-users-list{display:flex;flex-direction:column;gap:var(--spacing-xs);max-height:300px;overflow-y:auto}.standby-user-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.standby-user-item:hover{background:var(--color-bg-light)}.standby-user-item input[type=checkbox]{accent-color:var(--color-primary-medium)}.user-company-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.standby-user-item .user-name{flex:1}.user-company{font-size:.75rem;color:var(--color-text-secondary)}.btn-danger{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;border:1px solid #dc3545}.btn-danger:hover{background:linear-gradient(135deg,#c82333,#bd2130)}@media(max-width:1024px){.planning-layout{grid-template-columns:1fr}.planning-sidebar-card{height:auto;max-height:none}.planning-main-header{grid-template-columns:1fr;align-items:stretch}.planning-main-header-left,.planning-main-header-right{justify-content:space-between}.planning-main-nav{justify-self:stretch}}@media(max-width:768px){.global-agenda-page{padding:var(--spacing-sm);height:calc(100vh - 56px)}.planning-layout{gap:var(--spacing-sm)}.planning-sidebar-card,.planning-main-header{padding:var(--spacing-sm);gap:var(--spacing-sm)}.planning-display-mode{width:100%}.planning-main-nav{width:100%;justify-content:center}.btn-today{padding:var(--spacing-xs) var(--spacing-sm);font-size:.8rem}.date-nav{flex:1;justify-content:center;min-width:0}.btn-nav{padding:var(--spacing-xs)}.planning-main-header-right,.view-toggle{width:100%;justify-content:space-between}.week-header,.week-user-row{grid-template-columns:140px repeat(7,1fr)}.week-header-user,.week-user-cell{padding:var(--spacing-sm)}.user-role{display:none}.day-user-column,.day-user-header-cell{min-width:120px}}@media(max-width:480px){.planning-display-mode{grid-template-columns:1fr}.planning-weekend-row{padding-inline:var(--spacing-sm)}.date-display{font-size:.75rem;min-width:auto}.btn-today{min-width:auto}.btn-today span{display:none}.btn-nav{padding:4px}.view-toggle{padding:1px;gap:1px}.view-toggle-btn{padding:6px 10px;font-size:.7rem}.week-header,.week-user-row{grid-template-columns:120px repeat(7,1fr)}.week-header-user,.week-user-cell{padding:var(--spacing-xs)}.week-agenda-item{font-size:.65rem}}.context-menu{position:fixed;z-index:2000;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--spacing-xs);min-width:180px;animation:fadeInScale .1s ease}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:none;background:none;border-radius:var(--radius-sm);font-size:.875rem;color:var(--color-text-primary);cursor:pointer;text-align:left;white-space:nowrap;transition:background .15s ease}.context-menu-item:hover{background:var(--color-surface-hover, rgba(0, 0, 0, .06))}.copied-indicator{position:fixed;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);z-index:1500;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-primary, #2B5A8E);border-radius:var(--radius-full, 999px);box-shadow:var(--shadow-md);font-size:.8125rem;color:var(--color-text-primary);animation:slideUpIndicator .25s ease;max-width:90vw}@keyframes slideUpIndicator{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.copied-indicator svg{flex-shrink:0;color:var(--color-primary, #2B5A8E)}.copied-indicator span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copied-indicator-clear{display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:2px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);transition:color .15s ease,background .15s ease}.copied-indicator-clear:hover{color:var(--color-text-primary);background:var(--color-surface-hover, rgba(0, 0, 0, .06))}.drag-delete-zone{position:fixed;bottom:24px;right:24px;z-index:1500;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:88px;height:88px;background:var(--color-surface);border:2px dashed #dc3545;border-radius:var(--radius-lg);color:#dc3545;font-size:.75rem;font-weight:500;cursor:default;transition:background .15s ease,transform .15s ease,box-shadow .15s ease;animation:slideUpIndicator .2s ease;pointer-events:all}.drag-delete-zone--active{background:#fde8e8;transform:scale(1.08);box-shadow:0 4px 16px #dc354540}.month-day-popup{position:fixed;z-index:2000;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:200px;max-width:280px;max-height:400px;overflow-y:auto;animation:contextMenuAppear .12s ease}.month-day-popup-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-bottom:1px solid var(--color-border);font-size:.75rem;font-weight:600;color:var(--color-text-secondary)}.month-day-popup-header button{background:none;border:none;cursor:pointer;color:var(--color-text-secondary);padding:2px;display:flex;align-items:center;border-radius:var(--radius-sm)}.month-day-popup-header button:hover{background:var(--color-surface-hover, rgba(0,0,0,.06))}.month-popup-item{margin:6px;cursor:pointer;width:calc(100% - 12px);box-sizing:border-box}.year-project-popup{position:fixed;z-index:2000;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:240px;max-width:320px;animation:contextMenuAppear .12s ease}.year-project-popup-header{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid var(--color-border);font-size:.8rem;font-weight:600;color:var(--color-text-dark)}.year-project-popup-header span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.year-project-popup-header button{background:none;border:none;cursor:pointer;color:var(--color-text-secondary);padding:2px;display:flex;align-items:center;border-radius:var(--radius-sm);flex-shrink:0}.year-project-popup-header button:hover{background:var(--color-surface-hover, rgba(0,0,0,.06))}.year-project-popup-body{padding:10px;display:flex;flex-direction:column;gap:6px}.year-popup-row{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--color-text-dark)}.year-popup-status{width:10px;height:10px;border-radius:50%;flex-shrink:0}.year-popup-dates{color:var(--color-text-secondary);font-size:.75rem}.year-popup-description{font-size:.75rem;color:var(--color-text-secondary);margin-top:4px;border-top:1px solid var(--color-border);padding-top:6px;white-space:pre-wrap;word-break:break-word}.global-agenda-page{gap:12px;padding:12px;background:transparent}.planning-layout{gap:12px}.planning-sidebar{display:flex;min-height:0}.planning-sidebar-card{gap:12px;padding:12px;background:linear-gradient(180deg,#f8fbfdf5,#f3f7fbf5);border:1px solid rgba(188,202,216,.68);border-radius:14px;box-shadow:var(--shadow-md);scrollbar-width:thin}.planning-sidebar-card::-webkit-scrollbar{width:8px}.planning-sidebar-card::-webkit-scrollbar-thumb{background:#64758b38;border-width:2px}.planning-sidebar-actions{gap:8px}.planning-sidebar-button{justify-content:flex-start;padding-inline:12px}.planning-sidebar-button.active{background:#1f5e7a1f;border-color:#1f5e7a33;color:var(--color-primary-dark)}.planning-sidebar-separator{background:linear-gradient(90deg,transparent 0%,rgba(188,202,216,.9) 18%,rgba(188,202,216,.9) 82%,transparent 100%)}.planning-display-mode,.view-toggle{padding:2px;background:#ffffffc7;border:1px solid rgba(188,202,216,.68);border-radius:10px;box-shadow:inset 0 1px #fff9}.planning-display-mode-button,.view-toggle-btn{min-height:30px;border-radius:8px;font-weight:700;font-size:.78rem;color:var(--color-text-secondary)}.planning-display-mode-button:hover,.view-toggle-btn:hover{background:#1f5e7a0f;color:var(--color-text-primary)}.planning-display-mode-button.active,.view-toggle-btn.active{background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:inset 0 0 0 1px #ffffff14;color:var(--color-text-on-dark)}.planning-weekend-row{padding:8px 10px;background:#fffc;border:1px solid rgba(188,202,216,.62);border-radius:10px;color:var(--color-text-primary);font-size:.8rem}.planning-filter-section{border:1px solid rgba(188,202,216,.68);border-radius:12px;background:#ffffffd1;box-shadow:inset 0 1px #fff9}.planning-filter-section-header{padding:10px 12px;font-size:.84rem;color:var(--color-text-dark)}.planning-filter-section-header svg{color:var(--color-text-secondary)}.planning-selector-list{gap:4px;padding:0 8px 8px}.planning-selector-row{min-height:34px;padding:6px 8px;border:1px solid transparent;border-radius:8px}.planning-selector-row:hover{background:#1f5e7a0f;border-color:#1f5e7a1a}.planning-selector-label{font-size:.8rem;font-weight:600;color:var(--color-text-primary)}.planning-collapsed-picker{padding:0 8px 8px}.planning-dropdown-trigger,.company-dropdown-trigger,.role-dropdown-trigger{min-height:34px;padding:0 10px;background:#ffffffeb;border:1px solid rgba(188,202,216,.8);border-radius:8px;box-shadow:var(--shadow-sm);font-weight:600;font-size:.8rem}.planning-dropdown-trigger:hover,.company-dropdown-trigger:hover,.role-dropdown-trigger:hover{border-color:#1f5e7a4d;box-shadow:var(--shadow-md)}.company-dropdown-menu,.role-dropdown-menu,.context-menu,.month-day-popup,.year-project-popup{background:#fffffff7;border:1px solid rgba(188,202,216,.75);border-radius:12px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.company-dropdown-header,.role-dropdown-header,.month-day-popup-header,.year-project-popup-header{padding:10px 12px;border-bottom:1px solid var(--color-border-soft)}.company-select-all,.role-select-all,.company-dropdown-action{font-weight:700}.company-dropdown-item,.role-dropdown-item,.context-menu-item{min-height:32px;border-radius:8px}.company-dropdown-item:hover,.role-dropdown-item:hover,.context-menu-item:hover{background:var(--color-surface-muted)}.planning-main{gap:12px}.planning-main-header{padding:10px 12px;background:#ffffffeb;border:1px solid rgba(188,202,216,.72);border-radius:14px;box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.planning-main-nav{gap:8px}.btn-today,.btn-nav{min-height:34px}.date-display{min-width:190px;font-size:.88rem;font-weight:800;color:var(--color-text-dark);letter-spacing:-.02em}.global-agenda-content{background:#fffffff0;border:1px solid rgba(188,202,216,.72);border-radius:14px;box-shadow:var(--shadow-md)}.global-agenda-notification{top:92px;border-radius:18px;box-shadow:var(--shadow-lg)}.global-agenda-notification-success{background:#f0fdf6f5;border-color:#1f8f5f2e}.global-agenda-notification-error{background:#fff4f5f5;border-color:#c149532e}.toggle-switch{width:36px;height:20px;background:#bccad8eb;box-shadow:inset 0 0 0 1px #ffffff8c}.toggle-switch.active{background:linear-gradient(135deg,var(--color-primary-medium),var(--color-accent-blue))}.toggle-thumb{top:2px;left:2px;width:16px;height:16px}.toggle-switch.active .toggle-thumb{transform:translate(16px)}.week-header{border-bottom:1px solid var(--color-border);background:var(--color-surface)}.week-header-user,.week-header-day,.day-users-header-row,.time-column{background:linear-gradient(180deg,#f3f7fbf2,#edf5fbf2)}.week-header-user{font-weight:700;color:var(--color-text-dark)}.week-header-day{padding:8px 8px 7px;gap:4px}.week-header-day.today{background:linear-gradient(180deg,#d7e8f2e6,#edf5fbf2)}.day-name{font-size:.76rem;letter-spacing:-.01em}.standby-badge{min-height:20px;padding:2px 7px;background:#ffffffd1;border:1px solid rgba(188,202,216,.85);color:var(--color-text-secondary);font-size:.62rem}.standby-badge:hover,.standby-badge.has-standby{background:#1f5e7a14;border-color:#1f5e7a33;color:var(--color-primary-dark)}.week-user-row{min-height:44px;border-bottom-color:var(--color-border-soft)}.week-user-row:hover{background:#1f5e7a05;filter:none}.week-user-cell{padding:6px 8px;background:#f9fbfdc7}.user-company-indicator{width:4px;border-radius:999px}.user-info{gap:2px}.user-name{font-size:.76rem;font-weight:700}.user-role{font-size:.62rem;color:var(--color-text-muted);letter-spacing:.01em}.week-day-cell{padding:4px;background:#ffffff8f}.week-day-cell.today,.project-day-cell.today,.month-cell.today,.year-cell.current{background:#2d7ff00d}.week-day-cell:hover{background:#1f5e7a0a}.day-cell-content{gap:4px}.week-agenda-item,.day-agenda-item{padding:5px 7px;border-left-width:3px;border-radius:8px;box-shadow:0 2px 8px #10223514}.week-agenda-item:hover,.day-agenda-item:hover{box-shadow:0 6px 14px #1022351a;transform:translateY(-1px)}.week-agenda-item .item-time,.day-agenda-item .item-time{font-size:.62rem;color:var(--color-text-secondary)}.week-agenda-item .item-duration,.day-agenda-item .item-duration,.week-agenda-item .item-document-number,.day-agenda-item .item-document-number{color:var(--color-text-muted)}.week-agenda-item .item-title,.day-agenda-item .item-title{font-size:.68rem;font-weight:700;color:var(--color-text-dark)}.item-notes-bubble{top:4px;right:4px;min-width:14px;height:14px;background:var(--color-primary-medium);box-shadow:none;font-size:.52rem}.day-users-header-row{border-bottom:1px solid var(--color-border)}.day-user-header-cell{padding:8px}.day-grid{background:var(--color-surface)}.time-slot{font-weight:600;font-size:.66rem;color:var(--color-text-muted);border-bottom-color:var(--color-border-soft)}.day-user-column{border-right-color:var(--color-border-soft)}.day-user-slots{background-image:repeating-linear-gradient(to bottom,transparent,transparent calc(4.166% - 1px),rgba(215,225,234,.55) calc(4.166% - 1px),rgba(215,225,234,.55) 4.166%)}.standby-date{background:#1f5e7a14;color:var(--color-primary-dark)}.standby-user-item{min-height:40px;border-color:#bccad8cc;border-radius:8px;background:#ffffffe6}.standby-user-item:hover{background:var(--color-surface-muted);border-color:#1f5e7a2e}.copied-indicator{padding:8px 10px;background:#fffffff2;border:1px solid rgba(31,94,122,.18);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:.74rem}.drag-delete-zone{width:84px;height:84px;background:#fffffff0;border:2px dashed rgba(193,73,83,.7);border-radius:12px;box-shadow:var(--shadow-lg)}.drag-delete-zone--active{background:#fff4f5f5;box-shadow:0 18px 36px #c149532e}.month-popup-item{margin:8px;width:calc(100% - 16px)}@media(max-width:1024px){.global-agenda-page{padding:10px}.planning-sidebar-card,.planning-main-header{border-radius:12px}}@media(max-width:768px){.global-agenda-page{padding:8px;gap:8px;height:calc(100vh - 64px)}.planning-layout,.planning-main{gap:8px}.planning-sidebar-card,.planning-main-header{padding:10px}.planning-main-header-left,.planning-main-header-right{gap:10px}.date-display{min-width:0}}.global-agenda-page{gap:10px;padding:10px}.planning-layout{gap:8px}.planning-sidebar-card{gap:10px;padding:10px}.planning-main{gap:0}.planning-main-shell{display:flex;flex:1;min-height:0;flex-direction:column;background:#fffffff0;border:1px solid rgba(188,202,216,.72);border-radius:14px;box-shadow:var(--shadow-md);overflow:hidden}.planning-main-header{padding:10px 12px 9px;background:linear-gradient(180deg,#f8fbfdfa,#f3f7fbfa);border:none;border-bottom:1px solid var(--color-border-soft);border-radius:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.planning-main-header-left,.planning-main-header-right{gap:8px}.planning-main-nav{gap:6px}.date-display{min-width:176px;font-size:.84rem}.global-agenda-content{flex:1;min-height:0;background:transparent;border:none;border-radius:0;box-shadow:none}.week-user-row{min-height:40px}.day-user-header-cell{padding:7px 8px}.day-agenda-item{min-height:18px;padding:4px 6px}.global-agenda-page .modal{background:#fffffffa;border:1px solid rgba(188,202,216,.76);border-radius:16px;box-shadow:var(--shadow-xl)}.global-agenda-page .modal-lg{max-width:720px}.global-agenda-page .modal-header:not(.modal-header-danger){padding:12px 16px;background:linear-gradient(180deg,#f8fbfdfa,#f3f7fbfa);color:var(--color-text-dark);border-bottom:1px solid var(--color-border-soft)}.global-agenda-page .modal-header h2{display:flex;align-items:center;gap:8px;font-size:1rem;color:inherit}.global-agenda-page .modal-close{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(188,202,216,.76);border-radius:8px;background:#ffffffd6;color:var(--color-text-secondary);opacity:1}.global-agenda-page .modal-body{padding:14px 16px}.global-agenda-page .modal-body .form-grid{gap:10px 12px}.global-agenda-page .modal-body .form-group{gap:5px}.global-agenda-page .modal-body .form-group label{font-size:.76rem;font-weight:800;color:var(--color-text-secondary);letter-spacing:.04em;text-transform:uppercase}.global-agenda-page .modal-footer{gap:8px;padding:0 16px 16px}.global-agenda-page .standby-content{gap:12px}.global-agenda-page .standby-date{padding:10px 12px;border-radius:10px}.global-agenda-page .standby-users-list{gap:6px}.global-agenda-page .standby-user-item{min-height:38px;padding:8px 10px;border-radius:10px}.global-agenda-page .delete-content{gap:12px;padding:8px}.global-agenda-page .delete-summary{gap:10px;padding:10px 12px}@media(max-width:1024px){.global-agenda-page{padding:8px}}@media(max-width:768px){.planning-layout{gap:8px}.planning-main-header{padding:10px}.global-agenda-page .modal-body,.global-agenda-page .modal-footer{padding-inline:12px}}.global-agenda-page{gap:8px;padding:8px}.planning-layout{gap:8px;grid-template-columns:236px minmax(0,1fr)}.planning-sidebar-card,.planning-main-shell{box-shadow:0 4px 14px #14324b0f}@media(max-width:768px){.global-agenda-page{padding:8px}.planning-layout{gap:6px;grid-template-columns:1fr}}.projects-page{display:flex;flex-direction:column;height:calc(100vh - 70px);padding:var(--spacing-md);gap:var(--spacing-md)}.projects-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--spacing-md);color:var(--color-text-secondary)}.projects-notification{position:fixed;top:80px;right:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;animation:slideInProjects .3s ease}@keyframes slideInProjects{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.projects-notification-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.projects-notification-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.projects-notification .notification-close{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);margin-left:var(--spacing-sm);opacity:.7;color:inherit}.projects-notification .notification-close:hover{opacity:1}.projects-page .modal-close:disabled{opacity:.45;cursor:not-allowed}.projects-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-md)}.projects-header-left,.projects-header-title{display:flex;align-items:center;gap:var(--spacing-md)}.projects-header-title svg{color:var(--color-primary-medium)}.projects-header-title h1{font-size:1.5rem;background:var(--gradient-header);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.projects-header-actions{display:flex;gap:var(--spacing-sm)}.projects-content{display:grid;grid-template-columns:380px 1fr;gap:var(--spacing-lg);flex:1;min-height:0}.projects-list-panel{display:flex;flex-direction:column;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.projects-filters{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--spacing-sm)}.projects-search{position:relative}.projects-search .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);pointer-events:none}.projects-search input{padding-left:40px;width:100%}.projects-filter-row{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:var(--spacing-xs)}.filter-group svg{color:var(--color-text-secondary)}.filter-group select{min-width:140px}.filter-checkbox{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer}.projects-sort{display:flex;align-items:center;gap:var(--spacing-sm)}.sort-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.sort-buttons{display:flex;gap:4px}.sort-btn{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.75rem;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.sort-btn:hover{border-color:var(--color-primary-medium);color:var(--color-primary-medium)}.sort-btn.active{background:var(--color-primary-medium);border-color:var(--color-primary-medium);color:#fff}.projects-list{flex:1;overflow-y:auto;padding:var(--spacing-sm)}.projects-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--color-text-secondary);gap:var(--spacing-sm);text-align:center}.project-card{position:relative;padding:var(--spacing-md);background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);cursor:pointer;transition:all var(--transition-fast);overflow:hidden}.project-card:hover{border-color:var(--color-primary-medium);box-shadow:var(--shadow-sm)}.project-card.selected{border-color:var(--color-primary-medium);background:#fff;box-shadow:var(--shadow-md)}.project-card-company-indicator{position:absolute;left:0;top:0;bottom:0;width:4px}.project-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs);padding-left:var(--spacing-sm)}.project-title{font-size:.95rem;font-weight:600;color:var(--color-text-dark);line-height:1.3}.project-title-row{display:flex;align-items:center;gap:var(--spacing-xs);min-width:0}.project-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.project-color-dot-lg{width:14px;height:14px;border-radius:50%;flex-shrink:0}.project-completed-badge{display:inline-flex;align-items:center;gap:4px;font-size:.65rem;padding:2px 8px;border-radius:9999px;color:#fff;background:#28a745;white-space:nowrap}.project-card-body{padding-left:var(--spacing-sm)}.project-customer{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.8rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.project-meta{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.project-status-badge{font-size:.7rem;padding:2px 8px;border-radius:9999px;color:#fff}.project-dates{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--color-text-secondary)}.color-picker-grid{display:flex;gap:6px;flex-wrap:wrap}.color-swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.color-swatch:hover{transform:scale(1.15)}.color-swatch.selected{border-color:var(--color-text-dark);box-shadow:0 0 0 2px #fff,0 0 0 4px var(--color-text-dark)}.assigned-users-selector{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;padding:var(--spacing-xs);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-light)}.assigned-user-option{display:flex;align-items:center;gap:var(--spacing-xs);padding:4px var(--spacing-xs);font-size:var(--font-size-sm);cursor:pointer;border-radius:var(--radius-sm)}.assigned-user-option:hover{background:#fff}.no-users-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--spacing-sm)}.assigned-users-list{display:flex;flex-wrap:wrap;gap:6px;padding:var(--spacing-sm) 0}.assigned-user-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--color-very-light-blue, #e8f0fe);color:var(--color-primary-medium, #3D7CC9);border-radius:9999px;font-size:.75rem;font-weight:500}.projects-stats{padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center}.project-details-panel{display:flex;flex-direction:column;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.project-details-loading,.project-details-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;color:var(--color-text-secondary);gap:var(--spacing-md);padding:var(--spacing-xl);text-align:center}.project-details-empty h3{color:var(--color-text-primary);margin:0}.project-details-empty p{margin:0}.project-details-header{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--spacing-lg);background:var(--gradient-header);color:#fff}.project-details-title h2{font-size:1.25rem;margin-bottom:var(--spacing-sm);color:#fff}.project-details-badges{display:flex;gap:var(--spacing-sm)}.status-badge,.priority-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:9999px;font-size:.75rem;color:#fff}.project-details-actions{display:flex;gap:var(--spacing-xs)}.project-details-actions .btn{background:#fff3;border-color:#ffffff4d;color:#fff}.project-details-actions .btn:hover{background:#ffffff4d}.project-details-actions .btn-danger{background:#dc3545cc;border-color:#dc354580}.project-details-actions .btn-danger:hover{background:var(--color-danger)}.project-details-content{flex:1;overflow-y:auto;padding:var(--spacing-lg);display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.project-info-column{display:flex;flex-direction:column;gap:var(--spacing-md)}.project-agenda-column{display:flex;flex-direction:column;gap:var(--spacing-md);position:sticky;top:var(--spacing-lg)}.info-card{background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.info-card.full-width{width:100%}.info-card-header{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.info-card-header svg{color:var(--color-primary-medium)}.info-card-text{color:var(--color-text-primary);font-size:var(--font-size-sm);line-height:1.5;margin:0;white-space:pre-wrap}.info-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.info-value{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-dark)}.info-value svg{color:var(--color-primary-medium)}.info-value.overdue{color:var(--color-danger)}.info-value.overdue svg{color:var(--color-danger)}.created-by-line{display:flex;align-items:center;gap:6px;padding:8px 0;font-size:.85rem;color:var(--color-text-secondary, #6b7280)}.created-by-line svg{color:var(--color-primary-medium, #5b8cb8);flex-shrink:0}.location-card{background:#fff}.customer-info{margin-bottom:var(--spacing-md)}.customer-info h4{font-size:1rem;color:var(--color-text-dark);margin-bottom:var(--spacing-xs)}.customer-address{display:flex;flex-direction:row!important;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.customer-address svg{display:inline-flex;color:var(--color-primary-medium);flex-shrink:0}.customer-vat{font-size:.75rem;color:var(--color-text-secondary);margin:var(--spacing-xs) 0 0}.location-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.location-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-primary);text-decoration:none;transition:all var(--transition-fast);font-weight:500}.location-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary-medium);color:var(--color-primary-medium)}.location-btn svg{flex-shrink:0}.location-btn-route{background:var(--gradient-header);border-color:var(--color-primary-medium);color:#fff}.location-btn-route:hover{opacity:.9;color:#fff;background:var(--gradient-header)}.location-btn-route svg{color:#fff}.map-container{border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border)}.agenda-items-section{background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);flex-wrap:wrap}.section-title{display:flex;align-items:center;gap:var(--spacing-sm)}.section-title svg{color:var(--color-primary-medium)}.section-title h3{font-size:1rem;color:var(--color-text-dark);margin:0}.section-stats{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);flex-wrap:wrap}.section-stats .stat{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--color-text-secondary);background:#fff;padding:4px 10px;border-radius:9999px;border:1px solid var(--color-border)}.section-stats .stat svg{color:var(--color-primary-medium)}.agenda-items-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.agenda-item-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.agenda-item-time{display:flex;flex-direction:column;min-width:100px}.agenda-item-time .date{font-size:.8rem;color:var(--color-text-dark);font-weight:500}.agenda-item-time .duration{font-size:.7rem;color:var(--color-text-secondary)}.agenda-item-content{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.agenda-item-title-row{display:flex;align-items:center;gap:6px;min-width:0}.agenda-item-title{font-size:var(--font-size-sm);color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-notes-bubble{background:var(--color-primary-medium);color:#fff;border-radius:50%;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;line-height:1;padding:0 3px;box-sizing:border-box;flex-shrink:0}.agenda-item-user{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--color-text-secondary)}.agenda-item-status{flex-shrink:0}.validated-badge{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;padding:2px 8px;background:#d4edda;color:#155724;border-radius:9999px}.pending-badge{font-size:.7rem;padding:2px 8px;background:#fff3cd;color:#856404;border-radius:9999px}.agenda-item-card.clickable{cursor:pointer;transition:all .2s ease}.agenda-item-card.clickable:hover{background:var(--color-bg-light);border-color:var(--color-primary-medium);transform:translate(2px)}.agenda-item-actions{display:flex;align-items:center;color:var(--color-text-secondary);opacity:0;transition:opacity .2s ease}.agenda-item-card.clickable:hover .agenda-item-actions{opacity:1}.action-icon{color:var(--color-primary-medium)}.delete-item-info{display:flex;flex-direction:column;gap:var(--spacing-xs);text-align:left;background:var(--color-bg-light);padding:var(--spacing-md);border-radius:var(--radius-sm);margin-top:var(--spacing-md)}.delete-item-info span{font-size:var(--font-size-sm);color:var(--color-text-dark)}.agenda-items-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);color:var(--color-text-secondary);gap:var(--spacing-sm);text-align:center}.projects-page .modal-header-danger{background:linear-gradient(135deg,#dc3545,#c82333)}.searchable-select{position:relative}.searchable-select-trigger{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);min-height:42px}.searchable-select-trigger:hover{border-color:var(--color-primary-medium)}.searchable-select-trigger .placeholder{color:var(--color-text-secondary)}.selected-customer{display:flex;flex-wrap:wrap;gap:4px}.selected-customer-address{color:var(--color-text-secondary);font-size:.85em}.searchable-select-backdrop{position:fixed;inset:0;z-index:99}.searchable-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;max-height:300px;display:flex;flex-direction:column}.searchable-select-search{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border)}.searchable-select-search svg{color:var(--color-text-secondary);flex-shrink:0}.searchable-select-search input{flex:1;border:none;outline:none;font-size:var(--font-size-sm);background:transparent}.searchable-select-options{flex:1;overflow-y:auto;max-height:220px}.searchable-select-option{display:flex;flex-direction:column;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background var(--transition-fast)}.searchable-select-option:hover{background:var(--color-bg-light)}.searchable-select-option.selected{background:var(--color-primary-light)}.searchable-select-option .option-name{font-size:var(--font-size-sm);color:var(--color-text-dark);font-weight:500}.searchable-select-option .option-address{font-size:.75rem;color:var(--color-text-secondary)}.searchable-select-empty{padding:var(--spacing-md);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.projects-page .delete-warning{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-md);padding:var(--spacing-lg)}.projects-page .delete-warning svg{color:var(--color-warning)}.projects-page .delete-warning p{font-size:1.1rem;color:var(--color-text-primary);margin:0}.projects-page .delete-note{font-size:var(--font-size-sm)!important;color:var(--color-text-secondary)!important;background:var(--color-bg-light);padding:var(--spacing-md);border-radius:var(--radius-sm)}@media(max-width:1200px){.projects-content{grid-template-columns:320px 1fr}}@media(max-width:1024px){.projects-content{grid-template-columns:1fr}.project-details-panel{display:none}.projects-content:has(.project-details-panel:not(.project-details-empty)){grid-template-columns:1fr}.project-details-content{grid-template-columns:1fr}.project-agenda-column{position:static}.projects-header{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.projects-header-title{order:1}.projects-header-title h1{font-size:1.25rem}.projects-header-left{order:2;width:100%}.company-dropdown-trigger{width:100%}.projects-header-actions{order:3;width:100%}.projects-header-actions .btn{flex:1;justify-content:center}}@media(max-width:768px){.projects-page{padding:var(--spacing-sm);height:auto;min-height:calc(100vh - 70px)}.projects-header-title h1{font-size:1.15rem}.projects-list-panel{max-height:calc(100vh - 200px)}.project-details-content{grid-template-columns:1fr;padding:var(--spacing-md)}.project-details-header{padding:var(--spacing-md);flex-direction:column;gap:var(--spacing-sm)}.project-details-actions{width:100%;justify-content:stretch}.project-details-actions .btn{flex:1}.project-agenda-column{position:static}.info-row{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start}.section-stats{width:100%}.agenda-item-card{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.agenda-item-time{min-width:auto}.agenda-item-status{align-self:flex-start;margin-top:var(--spacing-xs)}.location-actions{flex-direction:column}.location-btn{justify-content:center}}@media(max-width:480px){.projects-page{padding:var(--spacing-xs)}.projects-header-title h1{font-size:1rem}.projects-header-title svg{width:20px;height:20px}.projects-filters{padding:var(--spacing-sm)}.projects-filter-row{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.filter-group{width:100%}.filter-group select{width:100%;min-width:auto}.projects-sort{flex-direction:column;align-items:stretch;gap:var(--spacing-xs)}.sort-label{width:100%}.sort-buttons{width:100%;flex-wrap:wrap}.sort-btn{flex:1;justify-content:center;min-width:80px}.project-card{padding:var(--spacing-sm)}.project-card-header{flex-direction:column;align-items:flex-start}.project-title{font-size:.9rem}.projects-stats{font-size:.75rem}.project-details-header{padding:var(--spacing-sm)}.project-details-title h2{font-size:1.1rem}.project-details-actions{flex-direction:column;width:100%;gap:var(--spacing-xs)}.project-details-actions .btn{width:100%}.project-details-content{padding:var(--spacing-sm);gap:var(--spacing-sm)}.info-card{padding:var(--spacing-sm)}.info-row{grid-template-columns:1fr}.section-stats .stat{font-size:.75rem;padding:3px 8px}}.import-table{width:100%;border-collapse:collapse;min-width:500px}.import-table th,.import-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border)}.import-table th{background:var(--color-bg-light);font-weight:600;color:var(--color-text-primary);font-size:var(--font-size-sm);white-space:nowrap}.import-table tbody tr{transition:background var(--transition-fast)}.import-table tbody tr:last-child td{border-bottom:none}.import-table tbody td{color:var(--color-text-primary);font-size:var(--font-size-sm)}.import-mapping-table .import-table,.import-preview-table-wrapper .import-table{margin:0}.import-mapping-table .import-table{margin:0}.import-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md)}.import-stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500;text-align:center}.import-preview-table-wrapper .import-table{margin:0}.import-error-message{font-size:.75rem;margin-top:4px;padding:4px 8px;border-radius:var(--radius-sm);background:#f8d7da;color:#721c24}.import-customer-match{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem}.import-customer-match--id{color:#155724}.import-customer-match--name{color:#664d03}.import-customer-match--none{color:var(--color-text-secondary);font-style:italic}.import-match-type{font-size:.6875rem;opacity:.7;font-style:italic;margin-left:2px}.import-result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-bg-light);border-radius:var(--radius-md)}@media(max-width:768px){.import-stats{grid-template-columns:repeat(2,1fr)}.import-result-stats{grid-template-columns:1fr}.import-mapping-table{font-size:.75rem}.import-preview-table-wrapper{max-height:300px}}.control-page{display:flex;flex-direction:column;padding:var(--spacing-lg);max-width:1200px;margin:0 auto;gap:var(--spacing-lg)}.control-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--spacing-md);color:var(--color-text-secondary)}.control-notification{position:fixed;top:80px;right:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;animation:slideInControl .3s ease}@keyframes slideInControl{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.control-notification-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.control-notification-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.control-notification .notification-close{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);margin-left:var(--spacing-sm);opacity:.7;color:inherit}.control-notification .notification-close:hover{opacity:1}.control-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-md)}.control-header-left,.control-header-title{display:flex;align-items:center;gap:var(--spacing-md)}.control-header-title svg{color:var(--color-primary-medium)}.control-header-title h1{font-size:1.5rem;background:var(--gradient-header);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:2px}.control-header-title p{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.control-header-stats{display:flex;gap:var(--spacing-sm)}.stat-item{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:9999px;font-size:var(--font-size-sm);font-weight:500}.stat-item.pending{background:#fff3cd;color:#856404}.stat-item.validated{background:#d4edda;color:#155724}.company-dropdown-container{position:relative}.company-dropdown-trigger{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary);transition:all var(--transition-fast)}.company-dropdown-trigger:hover{border-color:var(--color-primary-medium)}.company-dropdown-trigger svg.rotate{transform:rotate(180deg)}.company-dropdown-backdrop{position:fixed;inset:0;z-index:99}.company-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:250px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;animation:fadeInDown .15s ease}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.company-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.company-select-all{background:none;border:none;color:var(--color-primary-medium);font-size:var(--font-size-sm);cursor:pointer}.company-select-all:hover{text-decoration:underline}.company-dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:var(--font-size-sm);transition:background var(--transition-fast)}.company-dropdown-item:hover{background:var(--color-bg-light)}.company-dropdown-item input[type=checkbox]{accent-color:var(--color-primary-medium)}.company-color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.control-filters{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-wrap:wrap}.control-search{position:relative;flex:1;min-width:250px}.control-search .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);pointer-events:none}.control-search input{padding-left:40px;width:100%}.filter-checkbox{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap}.filter-checkbox input{accent-color:var(--color-primary-medium)}.filter-select{min-width:180px}.filter-select .input-sm{font-size:.85rem;padding:var(--spacing-xs) var(--spacing-sm)}.control-content{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-lg);min-height:400px}.control-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:350px;color:var(--color-text-secondary);text-align:center}.control-empty svg{color:var(--color-success);margin-bottom:var(--spacing-md)}.control-empty h3{color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.control-items-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.control-item-card{display:flex;align-items:stretch;background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-fast)}.control-item-card:hover{box-shadow:var(--shadow-sm);border-color:var(--color-primary-light)}.control-item-card.validated{background:#f8fdf9}.control-item-card.pending{background:#fffcf5}.item-company-indicator{width:4px;flex-shrink:0}.item-main{flex:1;padding:var(--spacing-md);min-width:0}.item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.item-title-row{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:0}.item-title{font-size:1rem;font-weight:600;color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-notes-bubble{background:var(--color-primary-medium);color:#fff;border-radius:50%;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;line-height:1;padding:0 4px;box-sizing:border-box;flex-shrink:0}.item-date-ago{font-size:.75rem;color:var(--color-text-secondary);white-space:nowrap}.item-status .status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:9999px;font-size:.75rem;font-weight:500}.status-validated{background:#d4edda;color:#155724}.status-pending{background:#fff3cd;color:#856404}.item-details{display:flex;flex-wrap:wrap;gap:var(--spacing-sm) var(--spacing-lg)}.item-detail{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.85rem;color:var(--color-text-secondary)}.item-detail svg{color:var(--color-primary-medium);flex-shrink:0}.type-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.item-notes-section{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.item-notes-header{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);font-weight:600;color:var(--color-text-dark)}.item-notes-header svg{color:var(--color-primary-medium)}.notes-title{font-size:.85rem}.item-notes-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.item-note{background:#fff;padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--color-border)}.item-note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.item-note-author{font-weight:600;font-size:.75rem;color:var(--color-text-dark)}.item-note-date{font-size:.7rem;color:var(--color-text-secondary)}.item-note-text{margin:0;font-size:.8rem;color:var(--color-text-primary);line-height:1.4}.item-actions{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);background:#00000005;border-left:1px solid var(--color-border)}.item-actions .btn{padding:var(--spacing-xs)}.btn-success{background:linear-gradient(135deg,#28a745,#218838);color:#fff;border:1px solid #28a745}.btn-success:hover{background:linear-gradient(135deg,#218838,#1e7e34)}.validate-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-md);padding:var(--spacing-lg)}.validate-icon{color:var(--color-success)}.validate-content h3{color:var(--color-text-dark);margin:0}.validate-content p{color:var(--color-text-primary);margin:0}.validate-summary{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md);width:100%}.summary-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.summary-item svg{color:var(--color-primary-medium)}@media(max-width:1024px){.control-header{flex-direction:column;align-items:stretch}.control-header-title{order:1}.control-header-left{order:2}.control-header-stats{order:3;justify-content:flex-start}}@media(max-width:768px){.control-page{padding:var(--spacing-md)}.control-filters{flex-direction:column;align-items:stretch}.control-search{min-width:100%}.control-item-card{flex-direction:column}.item-company-indicator{width:100%;height:4px}.item-actions{flex-direction:row;justify-content:flex-end;border-left:none;border-top:1px solid var(--color-border)}}@media(max-width:480px){.item-header{flex-direction:column;gap:var(--spacing-sm)}.item-title-row{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.item-details,.control-header-stats{flex-direction:column;gap:var(--spacing-xs)}.stat-item{justify-content:center}}.control-page{width:min(100%,1540px);padding:16px;gap:12px}.control-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;gap:12px}.control-header-left,.control-header-stats{align-self:center}.control-header-title{gap:12px;padding:16px 18px;border:1px solid rgba(188,202,216,.7);border-radius:16px;background:linear-gradient(135deg,#ffffffe0,#f3f7fbeb);box-shadow:var(--shadow-md)}.control-header-title h1{margin:0 0 2px;font-size:1.6rem;background:none;-webkit-background-clip:initial;-webkit-text-fill-color:currentColor;background-clip:initial;color:var(--color-text-dark)}.control-header-title p{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.control-header-title svg{width:22px;height:22px}.control-header-stats{gap:8px}.stat-item{min-height:34px;padding:0 12px;border-radius:999px;font-size:.8rem;font-weight:700}.company-dropdown-trigger{min-height:38px;padding:0 12px;background:#ffffffeb;border:1px solid rgba(188,202,216,.8);border-radius:10px;box-shadow:var(--shadow-sm);font-weight:700}.company-dropdown-menu{background:#fffffff7;border:1px solid rgba(188,202,216,.75);border-radius:12px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.control-filters{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(4,minmax(0,auto));gap:10px;padding:0;background:transparent;border:none;box-shadow:none}.control-search{min-width:0}.control-search input{min-height:38px}.filter-select{min-width:170px}.filter-select .input-sm{min-height:38px;padding:0 11px;background:#ffffffeb;border:1px solid rgba(188,202,216,.8)}.control-filters .btn{min-height:38px}.control-content{background:#ffffffeb;border:1px solid rgba(188,202,216,.72);border-radius:16px;box-shadow:var(--shadow-md);padding:14px}.control-items-list{gap:10px}.control-item-card{border-color:#bccad8bd;border-radius:12px;box-shadow:none}.control-item-card:hover{border-color:#1f5e7a29;box-shadow:var(--shadow-sm)}.item-main{padding:12px}.item-header{gap:10px;margin-bottom:8px}.item-title-row{gap:10px}.item-title{font-size:.92rem;font-weight:700}.item-date-ago{font-size:.72rem}.item-status .status-badge{min-height:24px;padding:0 10px;font-size:.72rem;font-weight:700}.item-details{gap:6px 14px}.item-detail{font-size:.78rem}.item-notes-section{margin-top:10px;padding-top:10px}.item-notes-list{gap:6px}.item-note{padding:8px 10px}.item-note-text{font-size:.76rem}.item-actions{display:grid;grid-template-columns:repeat(2,minmax(34px,1fr));gap:6px;align-content:center;padding:10px;background:#ffffff6b;border-left:1px solid rgba(188,202,216,.72)}.item-actions .btn{min-width:34px;min-height:34px;padding:0}.validate-content{gap:12px;padding:16px}.validate-summary{gap:10px;padding:10px 12px}.control-page .modal{background:#fffffffa;border:1px solid rgba(188,202,216,.76);border-radius:16px;box-shadow:var(--shadow-xl)}.control-page .modal-header:not(.modal-header-success){padding:12px 16px;background:linear-gradient(180deg,#f8fbfdfa,#f3f7fbfa);color:var(--color-text-dark);border-bottom:1px solid var(--color-border-soft)}.control-page .modal-header h2{font-size:1rem;color:inherit}.control-page .modal-close{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(188,202,216,.76);border-radius:8px;background:#ffffffd6;color:var(--color-text-secondary);opacity:1}.control-page .modal-body{padding:14px 16px}.control-page .modal-footer{gap:8px;padding:0 16px 16px}@media(max-width:1024px){.control-header{grid-template-columns:1fr}.control-filters{grid-template-columns:minmax(0,1fr) repeat(2,minmax(180px,.8fr))}}@media(max-width:768px){.control-page{padding:12px}.control-filters{grid-template-columns:1fr}.item-actions{grid-template-columns:repeat(4,minmax(34px,auto));border-left:none;border-top:1px solid rgba(188,202,216,.72)}}.customers-page{padding:var(--spacing-lg);max-width:1400px;margin:0 auto}.customers-loading,.customers-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--spacing-md);color:var(--color-text-secondary)}.customers-error{text-align:center}.customers-error h2{color:var(--color-danger);margin-top:var(--spacing-md)}.customers-error p{max-width:400px}.customers-notification{position:fixed;top:80px;right:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;animation:slideInCustomers .3s ease}@keyframes slideInCustomers{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.customers-notification-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.customers-notification-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.customers-notification .notification-close{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);margin-left:var(--spacing-sm);opacity:.7;color:inherit}.customers-notification .notification-close:hover{opacity:1}.customers-header{margin-bottom:var(--spacing-lg)}.customers-header-title{display:flex;align-items:center;gap:var(--spacing-md)}.customers-header-title svg{color:var(--color-primary-medium)}.customers-header-title h1{font-size:1.75rem;background:var(--gradient-header);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-xs)}.customers-content{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-lg)}.customers-section{display:flex;flex-direction:column;gap:var(--spacing-lg)}.customers-section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.customers-section-header-left{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap}.customers-section-header h2{font-size:1.25rem;color:var(--color-text-dark)}.customers-section-header-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.customers-search{display:flex;align-items:center;gap:var(--spacing-sm)}.customers-search .search-input-wrapper{position:relative;display:flex;align-items:center}.customers-search .search-icon{position:absolute;left:12px;color:var(--color-text-secondary);pointer-events:none}.customers-search input{padding-left:40px;min-width:280px}.customers-stats{display:flex;align-items:center;gap:var(--spacing-md);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.customers-stats .stat-badge{display:flex;align-items:center;gap:var(--spacing-xs);background:var(--color-bg-light);padding:var(--spacing-xs) var(--spacing-sm);border-radius:9999px}.customers-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--color-text-secondary);gap:var(--spacing-sm)}.customers-table-wrapper{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--color-border)}.customers-table{width:100%;border-collapse:collapse;min-width:800px}.customers-table th,.customers-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border)}.customers-table th{background:var(--color-bg-light);font-weight:600;color:var(--color-text-primary);font-size:var(--font-size-sm);white-space:nowrap}.customers-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast)}.customers-table th.sortable:hover{background:var(--color-border)}.customers-table th .sort-indicator{margin-left:var(--spacing-xs);color:var(--color-text-secondary)}.customers-table th.sorted,.customers-table th.sorted .sort-indicator{color:var(--color-primary-medium)}.customers-table tbody tr{transition:background var(--transition-fast)}.customers-table tbody tr:hover{background:var(--color-bg-light)}.customers-table tbody tr:last-child td{border-bottom:none}.customers-table tbody td{color:var(--color-text-primary);font-size:var(--font-size-sm)}.customer-name-cell{display:flex;flex-direction:column;gap:2px}.customer-name{font-weight:500;color:var(--color-text-dark)}.customer-vat{font-size:.75rem;color:var(--color-text-secondary)}.customer-address{display:flex;flex-direction:column;gap:2px;font-size:var(--font-size-sm)}.customer-address-line{color:var(--color-text-primary)}.customer-address-city{color:var(--color-text-secondary)}.customers-table .actions-cell{display:flex;gap:var(--spacing-xs);justify-content:flex-end}.customers-table .selection-cell{width:40px;text-align:center}.customers-table input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary-medium)}.bulk-actions-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-primary-medium);color:#fff;border-radius:var(--radius-md);margin-bottom:var(--spacing-md);animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.bulk-actions-bar .selected-count{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:500}.bulk-actions-bar .bulk-actions{display:flex;gap:var(--spacing-sm)}.bulk-actions-bar .btn-bulk{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);display:flex;align-items:center;gap:var(--spacing-xs);transition:background var(--transition-fast)}.bulk-actions-bar .btn-bulk:hover{background:#ffffff4d}.bulk-actions-bar .btn-bulk-danger{background:#dc3545cc;border-color:#dc354580}.bulk-actions-bar .btn-bulk-danger:hover{background:#dc3545}.bulk-actions-bar .btn-bulk-clear{background:transparent;border:none}.customers-pagination{display:flex;align-items:center;justify-content:space-between;padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);margin-top:var(--spacing-lg)}.pagination-info{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.pagination-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.pagination-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;cursor:pointer;color:var(--color-text-primary);transition:all var(--transition-fast)}.pagination-btn:hover:not(:disabled){background:var(--color-bg-light);border-color:var(--color-primary-medium);color:var(--color-primary-medium)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-pages{display:flex;gap:var(--spacing-xs)}.pagination-page{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;cursor:pointer;color:var(--color-text-primary);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.pagination-page:hover{background:var(--color-bg-light);border-color:var(--color-primary-medium);color:var(--color-primary-medium)}.pagination-page.active{background:var(--color-primary-medium);border-color:var(--color-primary-medium);color:#fff}.pagination-ellipsis{display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--color-text-secondary)}.customer-view-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.customer-view-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.customer-view-section h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs)}.customer-view-detail{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border)}.customer-view-detail:last-child{border-bottom:none}.customer-view-detail svg{flex-shrink:0;color:var(--color-primary-medium);margin-top:2px}.customer-view-detail-content{display:flex;flex-direction:column;gap:2px}.customer-view-detail-label{font-size:.75rem;color:var(--color-text-secondary)}.customer-view-detail-value{color:var(--color-text-dark)}.customer-view-detail-value.no-value{color:var(--color-text-secondary);font-style:italic}.customer-maps-link{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);text-decoration:none;font-size:var(--font-size-sm);transition:all var(--transition-fast);margin-top:var(--spacing-sm)}.customer-maps-link:hover{background:var(--color-primary-medium);color:#fff;border-color:var(--color-primary-medium)}.customers-page .modal{max-width:700px}.customers-page .modal-body{padding:var(--spacing-lg)}.customers-page .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.customers-page .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.customers-page .form-group-full{grid-column:1 / -1}.customers-page .form-group label{font-weight:500;color:var(--color-text-primary);font-size:var(--font-size-sm)}.customers-page .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background:var(--gradient-header);color:#fff}.customers-page .modal-header h2{font-size:1.25rem;color:inherit}.customers-page .modal-header-danger{background:linear-gradient(135deg,#dc3545,#c82333)}.customers-page .modal-close{background:none;border:none;cursor:pointer;color:#fff;padding:var(--spacing-xs);opacity:.8;transition:opacity var(--transition-fast)}.customers-page .modal-close:hover{opacity:1}.customers-page .modal-close:disabled{opacity:.45;cursor:not-allowed}.customers-page .modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);padding-top:0}.customers-page .delete-warning{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-md);padding:var(--spacing-lg)}.customers-page .delete-warning svg{color:var(--color-warning)}.customers-page .delete-warning p{font-size:1.1rem;color:var(--color-text-primary)}.customers-page .delete-note{font-size:var(--font-size-sm)!important;color:var(--color-text-secondary)!important;background:var(--color-bg-light);padding:var(--spacing-md);border-radius:var(--radius-sm)}.bulk-delete-info{display:flex;flex-direction:column;gap:var(--spacing-md);text-align:center}.bulk-delete-count{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:1.25rem;font-weight:600;color:var(--color-danger)}.customers-page .modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg);animation:fadeInCustomers .2s ease}@keyframes fadeInCustomers{0%{opacity:0}to{opacity:1}}.customers-page .modal{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-height:90vh;overflow-y:auto;animation:scaleInCustomers .2s ease}@keyframes scaleInCustomers{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.todo-banner{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,#ffc107,#ffca2c);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.todo-banner svg{color:#664d03;flex-shrink:0}.todo-banner-content{flex:1}.todo-banner-content strong{color:#664d03;display:block;margin-bottom:var(--spacing-xs)}.todo-banner-content p{color:#664d03;font-size:var(--font-size-sm);margin:0}@media(max-width:1024px){.customers-section-header,.customers-section-header-left{flex-direction:column;align-items:stretch}.customers-search input{min-width:100%;width:100%}.customers-section-header-actions{justify-content:flex-start}}@media(max-width:768px){.customers-page{padding:var(--spacing-md)}.customers-pagination{flex-direction:column;gap:var(--spacing-md)}.pagination-controls{flex-wrap:wrap;justify-content:center}.customers-page .form-grid{grid-template-columns:1fr}.customers-page .modal{max-width:100%;margin:var(--spacing-sm);max-height:calc(100vh - var(--spacing-lg))}.bulk-actions-bar{flex-direction:column;gap:var(--spacing-md);text-align:center}.bulk-actions-bar .bulk-actions{flex-wrap:wrap;justify-content:center}}@media(max-width:480px){.customers-header-title{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.customers-stats{flex-wrap:wrap}.customers-section-header-actions{flex-direction:column}.customers-section-header-actions .btn{width:100%;justify-content:center}}.modal-large{max-width:1200px!important}.modal-header-content{display:flex;align-items:center;gap:var(--spacing-md)}.modal-subtitle{font-size:var(--font-size-sm);color:#ffffffe6;font-weight:400;margin:0}.import-step{display:flex;flex-direction:column;gap:var(--spacing-lg)}.import-step-header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.import-step-header svg{color:var(--color-primary-medium)}.import-step-header h3{font-size:1.25rem;color:var(--color-text-dark);margin:0}.import-step-header p{color:var(--color-text-secondary);font-size:var(--font-size-sm);max-width:600px;margin:0}.import-info,.import-warning{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.import-info{background:#e7f5ff;color:#0c5393;border:1px solid #a5d8ff}.import-info svg{flex-shrink:0;color:#0c5393}.import-warning{background:#fff3cd;color:#664d03;border:1px solid #ffda6a}.import-warning svg{flex-shrink:0;color:#664d03}.import-mapping-table{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.import-mapping-table .customers-table{margin:0}.import-mapping-table .mapping-preview-cell{font-family:Courier New,monospace;font-size:.875rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-mapping-table .empty-cell{color:var(--color-text-secondary);font-style:italic}.import-mapping-table .input-sm{font-size:.875rem;padding:var(--spacing-xs) var(--spacing-sm)}.import-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md)}.import-stat{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:#fff;border-radius:var(--radius-sm);border:2px solid var(--color-border)}.import-stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}.import-stat-value{font-size:1.5rem;font-weight:700;color:var(--color-text-dark)}.import-stat-success{border-color:#28a745}.import-stat-success .import-stat-value{color:#28a745}.import-stat-warning{border-color:#ffc107}.import-stat-warning .import-stat-value{color:#ffc107}.import-stat-error{border-color:#dc3545}.import-stat-error .import-stat-value{color:#dc3545}.import-preview-table-wrapper{max-height:400px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.import-preview-table-wrapper .customers-table{margin:0}.import-row-new{background:#28a7450d}.import-row-duplicate{background:#ffc1070d}.import-row-error{background:#dc35450d}.import-status{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:2px 8px;border-radius:9999px;font-size:.75rem;font-weight:500;white-space:nowrap}.import-status-success{background:#d4edda;color:#155724}.import-status-warning{background:#fff3cd;color:#664d03}.import-status-error{background:#f8d7da;color:#721c24}.import-error-message,.import-duplicate-message{font-size:.75rem;margin-top:4px;padding:4px 8px;border-radius:var(--radius-sm)}.import-error-message{background:#f8d7da;color:#721c24}.import-duplicate-message{background:#fff3cd;color:#664d03}.import-options{display:flex;flex-direction:column;gap:var(--spacing-md)}.import-option{border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.import-option:has(input:checked){border-color:var(--color-primary-medium);background:#0d6efd0d}.import-option-label{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);cursor:pointer}.import-option-label input[type=radio]{margin-top:4px;flex-shrink:0}.import-option-content{flex:1}.import-option-content strong{display:block;color:var(--color-text-dark);margin-bottom:var(--spacing-xs)}.import-option-content p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.import-summary{background:var(--color-bg-light);padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-border)}.import-summary h4{font-size:1rem;color:var(--color-text-dark);margin-bottom:var(--spacing-sm)}.import-summary ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.import-summary li{color:var(--color-text-primary);font-size:var(--font-size-sm)}.import-summary-error{color:var(--color-danger)!important}.import-success-icon{color:#28a745}.import-failed-icon{color:#dc3545}.import-progress-card{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-md)}.import-progress-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap;color:var(--color-text-dark)}.import-progress-bar{width:100%;height:16px;background:#dbe4f0;border-radius:9999px;overflow:hidden}.import-progress-bar-fill{height:100%;background:linear-gradient(90deg,#2b5a8e,#4b8bd8);border-radius:inherit;transition:width .25s ease}.import-progress-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--spacing-sm);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.import-result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-bg-light);border-radius:var(--radius-md)}.import-result-stat{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.import-result-stat-value{font-size:3rem;font-weight:700;line-height:1}.import-result-stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500;text-align:center}.import-result-stat-success .import-result-stat-value{color:#28a745}.import-result-stat-warning .import-result-stat-value{color:#ffc107}.import-result-stat-error .import-result-stat-value{color:#dc3545}.import-errors{background:#f8d7da;border:1px solid #f5c6cb;border-radius:var(--radius-md);padding:var(--spacing-md)}.import-errors h4{font-size:1rem;color:#721c24;margin-bottom:var(--spacing-sm)}.import-errors ul{list-style:none;padding:0;margin:0;max-height:200px;overflow-y:auto}.import-errors li{color:#721c24;font-size:var(--font-size-sm);padding:var(--spacing-xs) 0;border-bottom:1px solid rgba(114,28,36,.1)}.import-errors li:last-child{border-bottom:none}@media(max-width:768px){.modal-large{max-width:100%!important}.import-stats{grid-template-columns:repeat(2,1fr)}.import-result-stats{grid-template-columns:1fr}.import-mapping-table{font-size:.75rem}.import-preview-table-wrapper{max-height:300px}}.customers-page{width:min(100%,1540px);padding:16px;max-width:none}.customers-header{margin-bottom:12px}.customers-header-title{display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid rgba(188,202,216,.7);border-radius:16px;background:linear-gradient(135deg,#ffffffe0,#f3f7fbeb);box-shadow:var(--shadow-md)}.customers-header-title svg{width:22px;height:22px;color:var(--color-primary-medium)}.customers-header-title h1{margin-bottom:2px;font-size:1.6rem;background:none;-webkit-background-clip:initial;-webkit-text-fill-color:currentColor;background-clip:initial;color:var(--color-text-dark)}.customers-header-title p{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.customers-content{background:#ffffffeb;border:1px solid rgba(188,202,216,.72);border-radius:16px;box-shadow:var(--shadow-md);padding:16px}.customers-section{gap:14px}.customers-section-header h2{font-size:1.12rem}.customers-search input{min-width:320px}.customers-stats .stat-badge{min-height:30px;padding:0 10px;border:1px solid rgba(188,202,216,.7);background:#f3f7fbeb;font-weight:700}@media(max-width:768px){.customers-page{padding:12px}.customers-content{padding:14px}.customers-header-title{padding:14px 16px;border-radius:14px}}.management-page{width:min(100%,1540px);margin:0 auto;padding:16px}.management-loading,.management-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:440px;gap:14px;color:var(--color-text-secondary)}.management-error{text-align:center}.management-error h2{color:var(--color-danger);margin-top:var(--spacing-md)}.management-error p{max-width:420px}.management-notification{position:fixed;top:92px;right:24px;display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:18px;box-shadow:var(--shadow-lg);z-index:1000;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:slideIn .26s ease}.management-notification-success{background:#f0fdf6f5;color:#165c3f;border:1px solid rgba(31,143,95,.18)}.management-notification-error{background:#fff4f5f5;color:#7c2630;border:1px solid rgba(193,73,83,.18)}.notification-close{background:none;border:none;cursor:pointer;padding:4px;margin-left:6px;opacity:.8;color:inherit}.notification-close:hover{opacity:1}.management-header{margin-bottom:12px}.management-header-title{display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid rgba(188,202,216,.7);border-radius:16px;background:linear-gradient(135deg,#ffffffe0,#f3f7fbeb);box-shadow:var(--shadow-md)}.management-header-title svg{width:22px;height:22px;color:var(--color-primary-medium)}.management-header-title h1{margin-bottom:2px;font-size:1.6rem}.management-header-title p{color:var(--color-text-secondary)}.management-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.management-tab{display:inline-flex;align-items:center;gap:10px;min-height:38px;padding:0 12px;background:#ffffffb8;border:1px solid rgba(188,202,216,.72);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);font-weight:700;box-shadow:var(--shadow-sm);transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.management-tab:hover{color:var(--color-text-primary);background:#ffffffeb;border-color:#1f5e7a2e;transform:translateY(-1px)}.management-tab.active{color:var(--color-primary-dark);background:var(--color-surface);border-color:#1f5e7a29;box-shadow:var(--shadow-md)}.tab-count{padding:2px 8px;border-radius:999px;font-size:.8rem;font-weight:800;background:#10223514;color:var(--color-text-primary)}.management-tab.active .tab-count{background:#1f5e7a1f;color:var(--color-primary-dark)}.management-content{background:#ffffffeb;border:1px solid rgba(188,202,216,.72);border-radius:16px;box-shadow:var(--shadow-md);padding:16px}.management-section{display:flex;flex-direction:column;gap:14px}.section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.section-header-left{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap}.section-header h2{font-size:1.12rem}.users-filters{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(180px,.8fr));gap:10px;align-items:center}.user-search-wrapper{position:relative}.user-search-wrapper .search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.user-search-input{padding-left:42px!important}.select-wrapper{position:relative}.select-wrapper select{appearance:none;padding-right:40px}.select-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-text-muted)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;color:var(--color-text-secondary);gap:10px}.users-list-shell{border:1px solid rgba(188,202,216,.7);border-radius:12px;overflow:hidden;background:linear-gradient(180deg,#f9fbfdc7,#fffffff0)}.users-list-head{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(150px,.7fr) minmax(120px,.55fr) 100px minmax(220px,1fr) 68px;gap:0;align-items:center;padding:0 6px;background:linear-gradient(180deg,#f3f7fbf5,#edf5fbeb);border-bottom:1px solid var(--color-border)}.users-list-sort,.users-list-head-label{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:0 10px;color:var(--color-text-secondary);font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.users-list-sort{border:none;background:transparent;cursor:pointer;text-align:left}.users-list-sort:hover{color:var(--color-text-primary)}.users-list-head-label-actions{justify-content:center}.users-list-sort-indicator{color:var(--color-text-muted);font-size:.9rem}.users-list-sort-indicator.active{color:var(--color-primary-medium)}.users-list-body{display:flex;flex-direction:column}.users-list-row{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(150px,.7fr) minmax(120px,.55fr) 100px minmax(220px,1fr) 68px;align-items:center;padding:6px;border-bottom:1px solid rgba(215,225,234,.7);transition:background var(--transition-fast)}.users-list-row:last-child{border-bottom:none}.users-list-row:hover{background:#1f5e7a09}.users-list-cell{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 10px;min-width:0}.users-list-cell-main{gap:14px}.users-list-cell-actions{justify-content:center}.users-list-mobile-label{display:none}.user-row-avatar{width:34px;height:34px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:#fff;font-size:.74rem;font-weight:800;border:1px solid rgba(19,32,51,.08)}.user-row-identity{display:flex;flex-direction:column;gap:3px;min-width:0}.user-row-identity h3{font-size:.88rem;font-weight:800;color:var(--color-text-dark)}.user-row-identity span{font-size:.78rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-row-company{display:inline-flex;align-items:center;gap:8px;min-width:0;color:var(--color-text-primary);font-size:.84rem;font-weight:600}.user-row-company span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-row-company-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.user-row-role{display:flex;align-items:center;gap:8px;min-width:0}.role-badge,.planner-status{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:0 8px;border-radius:999px;font-size:.72rem;font-weight:700;border:1px solid transparent}.planner-status-active{background:#1f8f5f1f;color:var(--color-success);border-color:#1f8f5f33}.planner-status-inactive{color:var(--color-text-muted);border-color:#bccad8c2;background:#1022350a}.user-row-contact{display:flex;flex-direction:column;gap:4px;min-width:0}.user-row-contact-line{display:flex;align-items:center;gap:6px;color:var(--color-text-secondary);font-size:.78rem;min-width:0}.user-row-contact-line svg{flex-shrink:0}.user-row-contact-line span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-actions-dropdown{position:relative}.btn-icon{width:32px;height:32px;background:#ffffffe0;border:1px solid rgba(188,202,216,.8);cursor:pointer;padding:0;border-radius:8px;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.btn-icon:hover{background:var(--color-surface);border-color:#1f5e7a38;color:var(--color-text-dark)}.dropdown-overlay{position:fixed;inset:0;z-index:99}.dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;background:#fffffff7;border:1px solid rgba(188,202,216,.76);border-radius:12px;box-shadow:var(--shadow-lg);padding:8px;min-width:200px;z-index:100;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:dropdownSlideIn .16s ease}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{display:flex;align-items:center;gap:10px;min-height:34px;padding:0 10px;background:none;border:none;width:100%;text-align:left;cursor:pointer;border-radius:8px;font-size:.82rem;color:var(--color-text-dark);transition:background var(--transition-fast),color var(--transition-fast)}.dropdown-item:hover{background:var(--color-surface-muted)}.dropdown-item-danger{color:var(--color-danger)}.dropdown-item-danger:hover{background:#c1495314}.dropdown-divider{height:1px;background:var(--color-border-soft);margin:6px 0}.companies-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.company-card,.organization-card,.agenda-type-card{border:1px solid rgba(188,202,216,.72);border-radius:14px;background:#fffffff0;box-shadow:var(--shadow-sm)}.company-card{overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.company-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.company-card-header{display:flex;justify-content:space-between;align-items:center;padding:14px;color:#fff;position:relative}.company-card-header:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#10223514,#1022353d)}.company-card-header h3,.company-card-header .company-color-indicator{position:relative;z-index:1}.company-card-header h3{font-size:1rem;font-weight:800;color:inherit}.company-color-indicator{width:24px;height:24px;border-radius:50%;border:2px solid rgba(255,255,255,.5)}.company-card-body{padding:14px;display:flex;flex-direction:column;gap:8px}.company-detail{display:flex;align-items:flex-start;gap:10px;color:var(--color-text-secondary);font-size:.9rem}.company-detail svg{flex-shrink:0;margin-top:2px}.company-stats{display:flex;gap:14px;margin-top:4px;flex-wrap:wrap}.company-stats .stat{display:inline-flex;align-items:center;gap:8px;color:var(--color-text-primary);font-size:.84rem;font-weight:700;padding:6px 10px;background:#f3f7fbe6;border-radius:999px}.company-card-actions{display:flex;gap:10px;padding:0 14px 14px}.organization-card{padding:16px;background:linear-gradient(135deg,#14324bf5,#1f5e7af0 55%,#2d7ff0db);color:var(--color-text-on-dark);border-color:#1f5e7a52;box-shadow:var(--shadow-md)}.organization-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.organization-info{display:flex;align-items:center;gap:14px}.organization-info h2{font-size:1.5rem;color:inherit;margin-bottom:4px}.organization-info p{font-size:var(--font-size-sm);color:#f7fbffcc}.organization-card .btn-secondary{background:#ffffff29;color:var(--color-text-on-dark);border-color:#ffffff42}.organization-card .btn-secondary:hover{background:#ffffff38}.agenda-types-grid{display:flex;flex-direction:column;gap:8px}.agenda-type-card{display:flex;justify-content:space-between;align-items:center;padding:12px 14px}.agenda-type-card:hover{background:#f3f7fbdb}.agenda-type-info{display:flex;align-items:center;gap:14px}.agenda-type-color{width:34px;height:34px;border-radius:12px}.agenda-type-name{font-weight:800;color:var(--color-text-dark)}.agenda-type-actions{display:flex;gap:10px}.btn-sm{min-height:34px;padding:0 12px;font-size:.8rem}.modal-overlay{position:fixed;inset:0;background:#10223547;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:#fffffffa;border:1px solid rgba(188,202,216,.72);border-radius:16px;box-shadow:var(--shadow-xl);width:100%;max-width:620px;max-height:90vh;overflow-y:auto;animation:scaleIn .2s ease}@keyframes scaleIn{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:var(--gradient-header);color:var(--color-text-on-dark)}.modal-header h2{font-size:1.25rem;color:inherit}.modal-header-danger{background:linear-gradient(135deg,#9f2433,#c14953)}.modal-close{background:none;border:none;cursor:pointer;color:inherit;padding:4px;opacity:.85}.modal-close:hover{opacity:1}.modal-body{padding:18px}.modal-info{margin-bottom:18px;color:var(--color-text-secondary)}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:0 18px 18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group-full{grid-column:1 / -1}.form-group label{font-weight:700;color:var(--color-text-primary);font-size:.9rem}.checkbox-label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:600!important}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary-medium)}.color-input-wrapper{display:flex;gap:10px}.color-input{width:40px;height:38px;padding:2px;border:1px solid rgba(188,202,216,.82);border-radius:14px;cursor:pointer;background:#fff}.color-input::-webkit-color-swatch-wrapper{padding:0}.color-input::-webkit-color-swatch{border:none;border-radius:10px}.delete-warning{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:12px}.delete-warning svg{color:var(--color-warning)}.delete-warning p{font-size:1.08rem;color:var(--color-text-primary)}.delete-note{font-size:.92rem!important;color:var(--color-text-secondary)!important;background:#f3f7fbeb;padding:12px 14px;border-radius:16px}@media(max-width:1080px){.users-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.users-list-head,.users-list-row{grid-template-columns:minmax(220px,1.2fr) minmax(140px,.7fr) minmax(120px,.55fr) 92px minmax(200px,.95fr) 60px}}@media(max-width:820px){.management-page{padding:12px}.management-content{padding:14px;border-radius:14px}.management-header-title{padding:14px 16px;border-radius:14px}.users-filters,.form-grid{grid-template-columns:1fr}.users-list-head{display:none}.users-list-row{grid-template-columns:1fr;gap:8px;padding:12px}.users-list-cell{min-height:auto;padding:0;flex-direction:column;align-items:flex-start;gap:6px}.users-list-cell-main{flex-direction:row;align-items:center}.users-list-cell-actions{align-items:flex-end;justify-content:flex-start}.users-list-mobile-label{display:block;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.companies-grid{grid-template-columns:1fr}.company-card-actions,.agenda-type-actions{flex-wrap:wrap}.modal{max-width:100%;max-height:calc(100vh - 24px)}}@media(max-width:560px){.management-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.management-tab{justify-content:center;padding-inline:12px}.management-tab span:not(.tab-count){display:none}.management-header-title{flex-direction:column;align-items:flex-start}.section-header,.organization-header{flex-direction:column;align-items:stretch}}.company-card-header{min-height:72px;padding:14px 16px;isolation:isolate}.company-card-header:before{background:linear-gradient(180deg,#ffffff0a,#1022352e)}.company-card-header h3{max-width:calc(100% - 48px);line-height:1.15}.company-color-indicator{border:none;box-shadow:inset 0 0 0 2px #ffffff85,0 0 0 1px #1320331f}.developer-page{max-width:1400px;margin:0 auto;padding:var(--spacing-lg);background:var(--color-bg-light);min-height:100vh}.developer-header{text-align:center;margin-bottom:var(--spacing-xl)}.developer-header h1{font-size:2rem;background:var(--gradient-header);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-sm)}.developer-header p{color:var(--color-text-secondary)}.stats-dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff}.stat-icon.blue{background:var(--gradient-primary)}.stat-icon.green{background:linear-gradient(135deg,#28a745,#20c997)}.stat-icon.purple{background:linear-gradient(135deg,#8b5cf6,#a78bfa)}.stat-icon.orange{background:linear-gradient(135deg,#fd7e14,#ffc107)}.stat-icon.cyan{background:linear-gradient(135deg,#17a2b8,#20c997)}.stat-content h3{font-size:var(--font-size-2xl);color:var(--color-text-dark);margin:0}.stat-content p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.section-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-border);padding-bottom:var(--spacing-sm)}.section-tab{padding:var(--spacing-sm) var(--spacing-lg);border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-md);font-weight:500;cursor:pointer;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--spacing-sm)}.section-tab:hover{color:var(--color-primary-medium);background:var(--color-bg-light)}.section-tab.active{color:var(--color-primary-medium);background:var(--color-bg-light);border-bottom:2px solid var(--color-primary-medium);margin-bottom:-2px}.developer-content{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.content-header{background:var(--gradient-header);color:#fff;padding:var(--spacing-md) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.content-header h2{margin:0;font-size:1.25rem}.content-body{padding:var(--spacing-lg)}.organizations-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.organization-card{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:#fff}.organization-header{background:var(--color-bg-light);padding:var(--spacing-md) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background var(--transition-fast)}.organization-header:hover{background:var(--color-border)}.organization-info{display:flex;align-items:center;gap:var(--spacing-md)}.organization-title-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.organization-info h3{margin:0;font-size:1.1rem;color:var(--color-text-dark)}.db-id{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:400;font-family:Courier New,monospace}.db-id-small{font-size:.75rem;color:var(--color-text-secondary);font-weight:400;font-family:Courier New,monospace}.organization-stats{display:flex;gap:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.organization-stat{display:flex;align-items:center;gap:var(--spacing-xs)}.organization-actions{display:flex;gap:var(--spacing-sm)}.organization-content{padding:var(--spacing-lg);border-top:1px solid var(--color-border);background:#fff}.notes-section{background:#8b5cf60d;border:1px solid rgba(139,92,246,.2);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.notes-section-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);color:var(--color-accent);font-weight:500}.notes-content{color:var(--color-text-dark);font-size:var(--font-size-sm);white-space:pre-wrap}.notes-content.empty{color:var(--color-text-secondary);font-style:italic}.companies-section{margin-bottom:var(--spacing-lg)}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.section-title h4{margin:0;font-size:1rem;color:var(--color-text-dark);display:flex;align-items:center;gap:var(--spacing-sm)}.companies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.company-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);transition:box-shadow var(--transition-fast)}.company-card:hover{box-shadow:var(--shadow-md)}.company-header{display:flex;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.company-color{width:12px;height:12px;border-radius:50%;flex-shrink:0;margin-top:4px}.company-name-group{display:flex;flex-direction:column;gap:2px;flex:1}.company-name{font-weight:500;color:var(--color-text-dark)}.company-address{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-xs)}.company-stats{display:flex;gap:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.company-stats span{display:flex;align-items:center;gap:4px;color:var(--color-text-secondary)}.company-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.users-section{border-top:1px solid var(--color-border);padding-top:var(--spacing-lg)}.users-table-container{overflow-x:auto}.users-table{width:100%;border-collapse:collapse;background:#fff}.users-table th,.users-table td{text-align:left;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}.users-table th{background:var(--color-bg-light);font-weight:500;color:var(--color-text-secondary);font-size:var(--font-size-sm);text-transform:uppercase}.users-table tbody,.users-table tbody tr{background:#fff}.users-table tr:hover{background:var(--color-bg-light)!important}.user-id-cell{font-family:Courier New,monospace;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.role-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;font-size:var(--font-size-sm);font-weight:500}.role-badge.role-none{background:#6c757d1a;color:#6c757d}.role-badge.role-service{background:#17a2b81a;color:#17a2b8}.role-badge.role-office{background:#3d7cc91a;color:#3d7cc9}.role-badge.role-coAdmin{background:#8b5cf61a;color:#8b5cf6}.role-badge.role-admin{background:#2b5a8e1a;color:#2b5a8e}.role-badge.role-developer{background:#1e3a5f1a;color:#1e3a5f}.planner-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:var(--font-size-sm);font-weight:500;background:#28a7451a;color:var(--color-success)}.all-users-section{margin-top:var(--spacing-lg)}.users-filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-group label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.filter-select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);min-width:150px;background:#fff;color:var(--color-text-primary)}.search-input{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);min-width:200px;background:#fff;color:var(--color-text-primary)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.modal{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal.modal-large{max-width:800px}.modal-header{background:var(--gradient-header);color:#fff;padding:var(--spacing-md) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:1.25rem}.modal-close{background:transparent;border:none;color:#fff;cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.modal-close:hover{background:#ffffff1a}.modal-body{padding:var(--spacing-lg)}.modal-footer{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-bg-light);display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.form-group{margin-bottom:var(--spacing-md)}.form-group.full-width{grid-column:1 / -1}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--color-text-primary);font-size:var(--font-size-sm)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);background:#fff;color:var(--color-text-primary)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-accent-blue);box-shadow:0 0 0 3px #3d7cc91a}.form-group textarea{min-height:100px;resize:vertical}.form-group .error{border-color:var(--color-danger)}.form-error{color:var(--color-danger);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.form-hint{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.color-input-wrapper{display:flex;gap:var(--spacing-sm);align-items:center}.color-preview{width:40px;height:40px;border-radius:var(--radius-sm);border:1px solid var(--color-border);cursor:pointer}.color-input-wrapper input[type=text]{flex:1}.checkbox-group{display:flex;align-items:center;gap:var(--spacing-sm)}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-group label{margin-bottom:0;cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--gradient-primary);color:#fff}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:var(--color-bg-light);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border)}.btn-danger{background:linear-gradient(135deg,#dc3545,#e4606d);color:#fff}.btn-danger:hover:not(:disabled){box-shadow:var(--shadow-md)}.btn-icon{padding:var(--spacing-xs);background:transparent;color:var(--color-text-secondary)}.btn-icon:hover{color:var(--color-primary-medium);background:var(--color-bg-light)}.btn-icon.danger:hover{color:var(--color-danger);background:#dc35451a}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.confirm-modal .modal-body{text-align:center;padding:var(--spacing-xl);background:#fff}.confirm-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-md)}.confirm-icon.warning{background:#ffc1071a;color:var(--color-warning)}.confirm-icon.danger{background:#dc35451a;color:var(--color-danger)}.confirm-modal h3{margin-bottom:var(--spacing-sm);color:var(--color-text-dark)}.confirm-modal p{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.confirm-modal .modal-footer{justify-content:center}.spinner{width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}.spinner-large{width:32px;height:32px;border-width:3px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--color-text-secondary);gap:var(--spacing-md)}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary);background:#fff}.empty-state-icon{width:64px;height:64px;border-radius:50%;background:var(--color-bg-light);display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-md);color:var(--color-text-secondary)}.empty-state h3{margin-bottom:var(--spacing-sm);color:var(--color-text-dark)}.empty-state p{color:var(--color-text-secondary)}.toast-container{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:1100;display:flex;flex-direction:column;gap:var(--spacing-sm)}.toast{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:var(--spacing-sm);animation:slideIn .3s ease}.toast.success{background:var(--color-success);color:#fff}.toast.error{background:var(--color-danger);color:#fff}.toast.info{background:var(--color-info);color:#fff}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.expand-icon{transition:transform var(--transition-fast)}.expand-icon.expanded{transform:rotate(180deg)}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;font-size:var(--font-size-sm);font-weight:500}.badge-success{background:#28a7451a;color:var(--color-success)}.badge-warning{background:#ffc1071a;color:var(--color-warning)}.badge-info{background:#17a2b81a;color:var(--color-info)}@media(max-width:1024px){.stats-dashboard{grid-template-columns:repeat(2,1fr)}.companies-grid{grid-template-columns:1fr}}@media(max-width:768px){.developer-page{padding:var(--spacing-md)}.section-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.section-tab{white-space:nowrap}.stats-dashboard{grid-template-columns:1fr}.organization-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.organization-actions{width:100%;justify-content:flex-end}.form-row{grid-template-columns:1fr}.modal{margin:var(--spacing-md);max-height:calc(100vh - var(--spacing-xl))}.content-header{flex-direction:column;gap:var(--spacing-sm);align-items:flex-start}.users-filters{flex-direction:column}.filter-group,.filter-select,.search-input{width:100%}}:root{--color-primary-dark: #14324b;--color-primary-medium: #1f5e7a;--color-primary-light: #d7e8f2;--color-accent-blue: #2d7ff0;--color-light-blue: #8bb5cf;--color-very-light-blue: #edf5fb;--color-accent: #0f8c82;--color-success: #1f8f5f;--color-warning: #c97a1b;--color-danger: #c14953;--color-info: #0b79a8;--color-page-bg: #eef3f8;--color-bg-light: #f6f9fc;--color-surface: #ffffff;--color-surface-muted: #f3f7fb;--color-surface-subtle: #f9fbfd;--color-surface-hover: #edf3f8;--color-surface-inverse: #102235;--color-text-dark: #132033;--color-text-primary: #21344b;--color-text-secondary: #64758b;--color-text-muted: #8795a7;--color-text-on-dark: #f7fbff;--color-border: #d7e1ea;--color-border-strong: #bccad8;--color-border-soft: #e7edf3;--shadow-sm: 0 1px 2px rgba(11, 30, 48, .04);--shadow-md: 0 8px 22px rgba(20, 50, 75, .07);--shadow-lg: 0 14px 32px rgba(16, 34, 53, .1);--shadow-xl: 0 20px 48px rgba(16, 34, 53, .14);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-full: 999px;--gradient-primary: linear-gradient(135deg, #14324b 0%, #1f5e7a 100%);--gradient-header: linear-gradient(135deg, #14324b 0%, #245067 55%, #2d7ff0 100%);--gradient-page: radial-gradient(circle at top left, rgba(45, 127, 240, .12), transparent 32%), linear-gradient(180deg, #f8fbfe 0%, #eef3f8 100%);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 40px;--font-family: "Montserrat", "Segoe UI Variable", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-size-sm: .875rem;--font-size-md: .95rem;--font-size-lg: 1.05rem;--font-size-xl: 1.2rem;--font-size-2xl: 1.4rem;--font-size-3xl: 1.85rem;--focus-ring: 0 0 0 4px rgba(45, 127, 240, .16);--transition-fast: .16s ease;--transition-normal: .24s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-gutter:stable}body{font-family:var(--font-family);font-size:var(--font-size-md);line-height:1.4;color:var(--color-text-primary);background:var(--gradient-page);min-height:100vh}#root{min-height:100vh}button,input,textarea,select{font:inherit}*{scrollbar-width:thin;scrollbar-color:rgba(100,117,139,.45) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#64758b59;border:3px solid transparent;background-clip:padding-box;border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:#4f5d7080;border:3px solid transparent;background-clip:padding-box}h1,h2,h3,h4,h5,h6{color:var(--color-text-dark);font-weight:700;line-height:1.15;letter-spacing:-.02em}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}p{color:var(--color-text-secondary)}a{color:var(--color-primary-medium);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);min-height:36px;padding:7px 12px;font-size:var(--font-size-md);font-weight:600;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{background:var(--gradient-primary);color:var(--color-text-on-dark)}.btn-primary:hover:not(:disabled){filter:saturate(1.08)}.btn-secondary{background:#ffffffeb;color:var(--color-text-primary);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-surface);border-color:var(--color-border-strong)}.btn-success{background:var(--color-success);color:var(--color-text-on-dark)}.btn-danger{background:var(--color-danger);color:var(--color-text-on-dark)}.btn-warning{background:var(--color-warning);color:#fff7eb}.input{width:100%;min-height:38px;padding:7px 11px;font-size:var(--font-size-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#ffffffeb;color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}input,textarea,select{color:var(--color-text-primary);background-color:transparent}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}.input:focus{outline:none;border-color:var(--color-accent-blue);background:var(--color-surface);box-shadow:var(--focus-ring)}.input::placeholder{color:var(--color-text-muted)}textarea.input{min-height:92px;resize:vertical}.card{background:#fffffff0;border:1px solid var(--color-border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--spacing-lg)}.card-header{background:var(--gradient-header);color:var(--color-text-on-dark);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md) var(--radius-md) 0 0;margin:calc(var(--spacing-lg) * -1);margin-bottom:var(--spacing-lg)}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-warning{color:var(--color-warning)}.text-info{color:var(--color-info)}.text-secondary{color:var(--color-text-secondary)}.bg-success{background-color:var(--color-success)}.bg-danger{background-color:var(--color-danger)}.bg-warning{background-color:var(--color-warning)}.bg-info{background-color:var(--color-info)}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing-sm)}.gap-2{gap:var(--spacing-md)}.gap-3{gap:var(--spacing-lg)}.spinner{width:20px;height:20px;border:2px solid rgba(100,117,139,.16);border-top-color:var(--color-accent-blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.badge{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;font-size:.75rem;font-weight:600;border-radius:9999px}.badge-success{background:#1f8f5f1f;color:var(--color-success)}.badge-danger{background:#c149531f;color:var(--color-danger)}.badge-warning{background:#c97a1b1f;color:var(--color-warning)}.badge-info{background:#0b79a81f;color:var(--color-info)}.protected-route-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:var(--spacing-md);color:var(--color-text-secondary)}.protected-route-loading .spinner{width:40px;height:40px;border-width:3px}.protected-route-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 72px);padding:var(--spacing-xl);text-align:center}.protected-route-error h2{font-size:1.5rem;color:var(--color-danger);margin-bottom:var(--spacing-sm)}.protected-route-error p{color:var(--color-text-secondary);max-width:400px}.app-update-banner{position:fixed;top:var(--spacing-md);right:var(--spacing-md);z-index:2000;display:flex;align-items:center;gap:var(--spacing-md);max-width:min(420px,calc(100vw - 32px));padding:12px 16px;background:#fffffff5;border:1px solid rgba(31,94,122,.16);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.app-update-banner p{color:var(--color-text-primary);font-size:var(--font-size-sm)}.app-update-banner .btn{flex-shrink:0}@media(max-width:640px){.app-update-banner{top:auto;right:var(--spacing-sm);bottom:var(--spacing-sm);left:var(--spacing-sm);flex-direction:column;align-items:stretch}}
