.theme-toggle-container{display:flex;gap:.5rem;align-items:center}.theme-toggle-btn{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.5rem;border:1px solid var(--color-white-alpha-20);background:transparent;color:var(--color-text-white);cursor:pointer;transition:all .2s ease;font-size:1.1rem}.theme-toggle-btn:hover{background:var(--color-white-alpha-10);border-color:var(--color-white-alpha-30);transform:scale(1.05)}.theme-toggle-btn:active{transform:scale(.95)}@media (max-width:768px){.theme-toggle-btn{width:2.25rem;height:2.25rem;font-size:1rem}}.confirm-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-black-alpha-60);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .2s ease}.confirm-dialog{background:var(--color-background);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:2px solid var(--color-border);max-width:440px;width:100%;padding:32px 24px 24px;position:relative;animation:slideUp .3s ease;display:flex;flex-direction:column;align-items:center;gap:20px}.confirm-dialog-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.confirm-dialog-close:hover:not(:disabled){background:var(--color-background-hover);color:var(--color-text)}.confirm-dialog-close:disabled{opacity:.5;cursor:not-allowed}.confirm-dialog-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem}.confirm-dialog-icon.danger{background:var(--color-danger-light);color:var(--color-danger)}.confirm-dialog-icon.warning{background:var(--color-warning-light);color:var(--color-warning)}.confirm-dialog-icon.info{background:var(--color-info-light);color:var(--color-info)}.confirm-dialog-content{text-align:center;display:flex;flex-direction:column;gap:8px}.confirm-dialog-title{font-size:1.25rem;font-weight:600;color:var(--color-text);margin:0}.confirm-dialog-message{font-size:.95rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.confirm-dialog-actions{display:flex;gap:12px;width:100%;margin-top:8px}.confirm-dialog-actions button{flex:1 1}@media (max-width:768px){.confirm-dialog{max-width:100%;margin:auto -16px -16px;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:16px}.confirm-dialog-icon{width:56px;height:56px;font-size:1.75rem}.confirm-dialog-title{font-size:1.125rem}.confirm-dialog-message{font-size:.875rem}.confirm-dialog-actions{flex-direction:column-reverse}.confirm-dialog-actions button{width:100%}}.multi-select{position:relative;display:flex;flex-direction:column;gap:.35rem;min-width:150px}.multi-select .multi-select-trigger{display:flex;align-items:center;justify-content:space-between;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.45rem .75rem;font-size:.85rem;color:var(--color-text);cursor:pointer;transition:all .15s ease;width:100%;height:36px}.multi-select .multi-select-trigger:hover{background-color:var(--color-background-alt);border-color:var(--color-border-dark)}.multi-select .chevron{font-size:.8rem;color:var(--color-text-light)}.multi-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;width:100%;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:.5rem;box-shadow:var(--shadow-lg);z-index:9999;display:flex;flex-direction:column;max-height:250px;overflow-y:auto;animation:fadeIn .15s ease-out}.multi-select-dropdown.position-top{top:auto;bottom:calc(100% + 4px);animation:fadeInTop .15s ease-out}@keyframes fadeInTop{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.multi-select-option{justify-content:space-between;padding:.45rem .75rem;font-size:.85rem;background:transparent;border:none;color:var(--color-text);cursor:pointer;transition:background .1s ease;text-align:left}.multi-select-option,.option-left{display:flex;align-items:center}.multi-select-option:first-child{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.multi-select-option:last-child{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.multi-select-option:hover{background:var(--color-background)}.multi-select-option.selected{background:var(--color-background-hover);font-weight:500;border-left:3px solid var(--color-primary)}.multi-select-option.excluded{background:var(--color-danger-lighter);font-weight:500;border-left:3px solid var(--color-danger);opacity:.85}.multi-select-option .checkmark{font-size:.8rem}.checkmark-include{color:var(--color-primary)}.checkmark-exclude{color:var(--color-danger)}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-primary);color:var(--color-text-white);font-weight:600;flex-shrink:0;-webkit-user-select:none;user-select:none}.avatar-sm{width:24px;height:24px;font-size:.65rem}.avatar-md{width:32px;height:32px;font-size:.75rem}.avatar-lg{width:40px;height:40px;font-size:.875rem}.color-picker-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-black-alpha-60);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;animation:fadeIn .3s ease}.color-picker-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:600px;max-height:90vh;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:9999;animation:slideUp .3s ease;display:flex;flex-direction:column;overflow:hidden}.color-picker-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:1}.color-picker-close:hover{background:var(--color-background-hover);color:var(--color-text)}.color-picker-header{padding:1.5rem 3rem 1.5rem 1.5rem;border-bottom:1px solid var(--color-border)}.color-picker-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.color-picker-content{flex:1 1;padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:2rem}.color-mode-section{display:flex;flex-direction:column;gap:1rem}.mode-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;border-bottom:2px solid var(--color-border)}.mode-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-text);text-transform:uppercase;letter-spacing:.5px}.reset-mode-btn{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;padding:.4rem .75rem;border-radius:var(--radius);font-size:.875rem;transition:all .2s ease;display:flex;align-items:center;gap:.25rem}.reset-mode-btn:hover{background:var(--color-background-hover);color:var(--color-text);border-color:var(--color-border-dark)}.label-with-indicator{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.auto-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;padding:.25rem .5rem;background:var(--color-info-light);color:var(--color-info);border-radius:var(--radius);font-weight:500}.auto-badge svg{font-size:.7rem}.color-input-wrapper{gap:1rem;transition:border-color .2s ease}.color-input-wrapper input[type=color]{border:none}.color-input-wrapper input[type=color]::-webkit-color-swatch{border-radius:var(--radius-sm)}.color-value{font-size:1rem}.color-picker-actions{padding:1.5rem;border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;flex-shrink:0}.color-picker-actions,.color-preview{display:flex;background:var(--color-background-alt)}.color-preview{margin-top:.75rem;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;gap:.75rem}.preview-label{font-size:.8rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.preview-button,.preview-header{padding:.75rem 1.25rem;border-radius:var(--radius);font-weight:600;text-align:center;transition:all .2s ease}.preview-button{box-shadow:var(--shadow-sm)}.preview-button:hover{box-shadow:var(--shadow-md)}.preview-header{font-size:1.1rem}.contrast-info{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.contrast-badge{padding:.25rem .5rem;width:fit-content}.contrast-warning{color:var(--color-text-light);font-size:.75rem}@media (max-width:640px){.color-picker-modal{max-width:100%;max-height:100vh;border-radius:0}.color-picker-content{gap:1.5rem}.color-picker-actions{flex-direction:column-reverse;gap:1rem}.main-actions{width:100%;justify-content:flex-end}.mode-header h3{font-size:.9rem}.reset-mode-btn{padding:.3rem .6rem;font-size:.8rem}}.palette-editor-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-black-alpha-60);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;animation:fadeIn .3s ease}.palette-editor-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:95%;max-width:1200px;max-height:90vh;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:9999;animation:fadeIn .3s ease;display:flex;flex-direction:column;overflow:hidden}.palette-editor-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:1}.palette-editor-close:hover{background:var(--color-background-hover);color:var(--color-text)}.palette-editor-header{padding:1.5rem 3.5rem 1.5rem 1.5rem;border-bottom:1px solid var(--color-border)}.palette-editor-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:.5rem}.mode-toggle{display:flex;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--radius);padding:3px;position:relative;gap:2px;width:100%;margin-bottom:1.5rem}.mode-toggle-slider{position:absolute;top:3px;left:3px;width:calc(50% - 4px);height:calc(100% - 6px);background:var(--color-primary);border-radius:var(--radius-sm);transition:transform .2s ease;z-index:1}.mode-toggle-slider.dark{transform:translateX(calc(100% + 3px))}.mode-toggle-btn{padding:6px 14px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-light);cursor:pointer;transition:all .2s ease;font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:6px;position:relative;z-index:2;flex:1 1;justify-content:center;white-space:nowrap}.mode-toggle-btn:hover:not(.active){color:var(--color-text)}.mode-toggle-btn.active{color:var(--color-text-on-primary,white)}.palette-editor-content{flex:1 1;display:grid;grid-template-columns:400px 1fr;overflow:hidden}.palette-controls{padding:1.5rem;overflow-y:auto;border-right:1px solid var(--color-border);display:flex;flex-direction:column;gap:1.5rem}.palette-preview{padding:1.5rem;overflow-y:auto;background:var(--color-background-alt)}.preview-header-label{margin-bottom:1rem}.presets-section{display:flex;flex-direction:column;gap:.75rem}.preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.5rem}.preset-btn{padding:.5rem;background:var(--color-background-alt);border:2px solid var(--color-border);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:.5rem}.preset-btn:hover{border-color:var(--color-border-dark);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.preset-btn.active{border-color:var(--color-primary);background:var(--color-background-hover)}.preset-preview{width:100%;height:40px;border-radius:var(--radius);box-shadow:var(--shadow-sm)}.preset-btn span{font-size:.75rem;color:var(--color-text);font-weight:500;text-transform:capitalize}.generate-btn{width:100%}.color-inputs{gap:1rem}.color-input-group,.color-inputs{display:flex;flex-direction:column}.color-input-group{gap:.5rem}.color-input-wrapper{display:flex;align-items:center;gap:.75rem;background:var(--color-background-alt);padding:.5rem;border:1px solid var(--color-border);border-radius:var(--radius);transition:all .2s ease;cursor:pointer}.color-input-wrapper:hover{border-color:var(--color-border-dark);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.color-input-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.color-input-wrapper input[type=color]{border:2px solid var(--color-border-dark);width:40px;height:40px;cursor:pointer;background:none;padding:0;border-radius:var(--radius);box-shadow:inset 0 1px 3px rgba(0,0,0,.1);transition:all .2s ease}.color-input-wrapper input[type=color]:hover{border-color:var(--color-primary);box-shadow:inset 0 1px 3px rgba(0,0,0,.15),0 0 0 2px rgba(var(--color-primary-rgb),.1)}.color-input-wrapper input[type=color]::-webkit-color-swatch-wrapper{padding:0;border-radius:calc(var(--radius) - 2px)}.color-input-wrapper input[type=color]::-webkit-color-swatch{border:none;border-radius:calc(var(--radius) - 2px)}.color-input-wrapper input[type=color]::-moz-color-swatch{border:none;border-radius:calc(var(--radius) - 2px)}.color-value{font-family:monospace;color:var(--color-text);font-size:.9rem}.validation-warnings{padding:.75rem;background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius);display:flex;flex-direction:column;gap:.5rem}.warning-item{font-size:.85rem;color:var(--color-warning-dark)}.live-preview-container{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);min-height:400px}.preview-header{padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-sm)}.preview-header-title{font-weight:600;font-size:1.1rem}.preview-header-actions{display:flex;gap:1rem;font-size:1.2rem}.preview-icon{cursor:pointer;opacity:.9;transition:opacity .2s}.preview-icon:hover{opacity:1}.preview-card,.preview-content{padding:1.5rem}.preview-card{display:flex;flex-direction:column;border-radius:var(--radius);border:1px solid;margin-bottom:1rem}.preview-card h3{margin:0 0 .75rem;font-size:1.1rem}.preview-card p{margin:0 0 1rem;line-height:1.5;font-size:.95rem}.preview-button-container{display:flex;gap:.75rem;margin-bottom:1rem}.preview-button{width:100%;padding:.6rem 1.2rem;border-radius:var(--radius);border:1px solid;font-weight:600;cursor:pointer;transition:all .2s ease}.preview-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.preview-input{padding:.6rem .75rem;border-radius:var(--radius);border:1px solid;font-size:.95rem}.preview-input::placeholder{opacity:.6}.preview-contrast-info{display:flex;gap:.5rem;flex-wrap:wrap}.contrast-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.4rem .75rem;border-radius:var(--radius);font-weight:600;font-size:.85rem}.contrast-badge.good{background:var(--color-success-light);color:var(--color-success)}.contrast-badge.poor{background:var(--color-warning-light);color:var(--color-warning)}.palette-editor-actions{padding:1.5rem;border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;background:var(--color-background-alt);flex-shrink:0}.main-actions{display:flex;gap:.75rem}@media (max-width:1024px){.palette-editor-content{grid-template-columns:1fr}.palette-controls{border-right:none;border-bottom:1px solid var(--color-border);max-height:50vh}.palette-preview{max-height:50vh}}@media (max-width:640px){.palette-editor-modal{width:100%;max-width:100%;max-height:100vh;border-radius:0}.palette-editor-header{flex-direction:column;align-items:flex-start}.mode-toggle{width:100%}.mode-toggle-btn{flex:1 1;justify-content:center}.preset-grid{grid-template-columns:repeat(auto-fill,minmax(60px,1fr))}.palette-editor-actions{flex-direction:column-reverse;gap:1rem}.main-actions{width:100%;justify-content:flex-end}}.custom-select{position:relative;display:flex;flex-direction:column;gap:.35rem;min-width:150px}.custom-select-trigger{display:flex;align-items:center;justify-content:space-between;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.45rem .75rem;font-size:.85rem;color:var(--color-text);cursor:pointer;transition:all .15s ease;width:100%;height:36px}.custom-select-trigger:hover{background-color:var(--color-background-alt);border-color:var(--color-border-dark)}.custom-select .chevron{font-size:.8rem;color:var(--color-text-light)}.selected-value{display:flex;align-items:center}.placeholder{color:var(--color-text-lighter)}.custom-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;width:100%;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:.5rem;box-shadow:var(--shadow-lg);z-index:9999;display:flex;flex-direction:column;animation:fadeIn .15s ease-out}.custom-select-option{display:flex;align-items:center;justify-content:space-between;padding:.45rem .75rem;text-align:left;font-size:.85rem;background:transparent;border:none;color:var(--color-text);cursor:pointer;transition:background .1s ease}.custom-select-option:first-child{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.custom-select-option:last-child{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.custom-select-option:hover{background:var(--color-background)}.custom-select-option.selected{background:var(--color-background-hover);font-weight:500;border-left:3px solid var(--color-primary)}.checkmark{font-size:.8rem;color:var(--color-primary)}.selector-popover{position:absolute;top:calc(100% + 8px);right:0;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:.5rem;padding:.75rem;box-shadow:var(--shadow-lg);z-index:1000;animation:fadeInScale .15s ease-out forwards;transform-origin:top right;opacity:0;transform:scale(.95);min-width:220px}.selector-popover.align-left{left:0;right:auto;transform-origin:top left}.selector-comment{display:flex;flex-direction:column;gap:.75rem;min-width:320px}.comment-popover-header{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--color-text);font-size:.95rem;padding-bottom:.25rem}.comment-popover-header svg{color:var(--color-primary);font-size:1rem}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.selector-popover.closing{animation:fadeOutScale .12s ease-in forwards}@keyframes fadeOutScale{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@media (max-width:768px){.selector-popover-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:100003}.selector-popover{position:fixed;top:auto;bottom:0;left:0;right:0;min-width:unset;border-radius:.75rem .75rem 0 0;max-height:85vh;overflow-y:auto;z-index:100004;animation:selectorSlideUp .2s ease-out forwards;transform-origin:bottom center;opacity:0;transform:translateY(100%);padding-bottom:calc(1.25rem + env(safe-area-inset-bottom));box-shadow:0 -4px 20px rgba(0,0,0,.15)}.selector-popover.align-left{left:0;right:0}.selector-popover.closing{animation:selectorSlideDown .15s ease-in forwards}@keyframes selectorSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes selectorSlideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}}.profile-popover{position:absolute;top:120%;right:0;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:.75rem 1rem;min-width:180px;z-index:500;animation:fadeIn .15s ease-out}.profile-info{display:flex;flex-direction:column;gap:.25rem}.profile-info strong{font-size:.95rem;color:var(--color-text)}.profile-info p{font-size:.85rem;color:var(--color-text-light);margin:0}.profile-id{font-size:.75rem;color:var(--color-text-lighter)}.profile-btn{background:none;border:none;cursor:pointer;font-size:1.8rem;color:var(--color-text-white);transition:opacity .2s}.profile-btn:hover{opacity:.8}.notification-badge-button{position:relative;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.5rem;border:1px solid var(--color-white-alpha-20);background:transparent;color:var(--color-text-white);cursor:pointer;transition:all .2s ease;font-size:1.1rem}.notification-badge-button:hover{background:var(--color-white-alpha-10);border-color:var(--color-white-alpha-30);transform:scale(1.05)}.notification-badge-button:active{transform:scale(.95)}.notification-bell-icon{font-size:1.25rem}@media (max-width:768px){.notification-badge-button{width:2.25rem;height:2.25rem;font-size:1rem}}.notification-badge-dot{position:absolute;top:4px;right:4px;width:10px;height:10px;background-color:var(--color-info);border-radius:50%;border:2px solid var(--color-header-bg);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;z-index:1;pointer-events:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.notification-badge-count{position:absolute;top:-6px;right:-6px;background-color:var(--color-danger);color:var(--color-text-white);font-size:.625rem;font-weight:600;min-width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;border-radius:.625rem;padding:0 .3rem;border:2px solid var(--color-header-bg);box-shadow:0 2px 4px var(--color-black-alpha-20);z-index:1;pointer-events:none}.notification-item{position:relative;padding:1rem;margin-bottom:.5rem;border-radius:var(--radius);background-color:var(--color-background);border:1px solid transparent;transition:all .15s ease;cursor:pointer}.notification-item:hover{background-color:var(--color-background-hover);border-color:var(--color-border);transform:translateX(-2px)}.notification-item.unread{background-color:var(--color-background-hover);border-color:var(--color-border-dark)}.notification-item.unread:hover{background-color:var(--color-background-hover);border-color:var(--color-primary)}.notification-item-indicator{position:absolute;top:1.125rem;left:.625rem;width:8px;height:8px;border-radius:50%;background-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-background-hover)}.notification-item-content{padding-left:1rem}.notification-item-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.notification-item-title{margin:0;font-size:.9375rem;font-weight:600;color:var(--color-text);flex:1 1;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.notification-item-time{font-size:.75rem;font-weight:500;color:var(--color-text-light);white-space:nowrap;opacity:.8}.notification-item-message{margin:0 0 1rem;font-size:.875rem;color:var(--color-text-secondary);line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;word-break:break-word}.notification-item-actions{display:flex;gap:.5rem;flex-wrap:wrap}.notification-item-action-btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all .15s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.375rem}.notification-item-action-btn.primary{background-color:var(--color-primary);color:var(--color-text-white)}.notification-item-action-btn.primary:hover{background-color:var(--color-primary-darker);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.3)}.notification-item-action-btn.secondary{background-color:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.notification-item-action-btn.secondary:hover{background-color:var(--color-background-hover);color:var(--color-text);border-color:var(--color-border-dark)}.notification-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--color-black-alpha-40);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;animation:fadeIn .2s ease-out}.notification-panel{position:fixed;top:4.5rem;right:1rem;width:420px;max-width:calc(100vw - 2rem);max-height:calc(100vh - 5.5rem);background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 32px var(--color-black-alpha-12),0 2px 8px var(--color-black-alpha-08);z-index:1000;display:flex;flex-direction:column;animation:slideIn .25s cubic-bezier(.16,1,.3,1)}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.notification-panel-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-background);border-radius:var(--radius-md) var(--radius-md) 0 0}.notification-panel-header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:0}.notification-panel-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text);letter-spacing:-.02em}.clear-all-btn{padding:.375rem .875rem;font-size:.75rem;font-weight:500;background:var(--color-danger);color:var(--color-text-white);border:none}.clear-all-btn:hover:not(:disabled){background:var(--color-danger-dark);color:var(--color-text-white);transform:translateY(-1px);box-shadow:0 4px 12px var(--color-danger-alpha,rgba(239,68,68,.3))}.clear-all-btn:disabled{opacity:.5;cursor:not-allowed}.notification-panel-actions{display:flex;align-items:center;gap:.5rem}.mark-all-read-btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease}.mark-all-read-btn:hover{border-color:var(--color-border-dark)}.mark-all-read-btn:hover,[data-theme=dark] .mark-all-read-btn:hover{background-color:var(--color-background-hover);color:var(--color-text)}[data-theme=dark] .mark-all-read-btn:hover{border-color:var(--color-border)}.mark-all-read-btn:disabled{opacity:.5;cursor:not-allowed}.close-btn{font-size:1.75rem;line-height:1;padding:.25rem .5rem;transition:all .15s ease}.close-btn:hover{background-color:var(--color-background-hover)}.notification-panel-body{overflow-y:auto;flex:1 1;padding:.75rem}.notification-panel-body::-webkit-scrollbar{width:6px}.notification-panel-body::-webkit-scrollbar-track{background:transparent}.notification-panel-body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.notification-panel-body::-webkit-scrollbar-thumb:hover{background:var(--color-border-dark)}.notification-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;gap:.75rem}.empty-bell-icon{font-size:4rem;color:var(--color-primary);opacity:.25;margin-bottom:.75rem;animation:bellFloat 3s ease-in-out infinite}.empty-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text)}.empty-subtext{font-size:.875rem;color:var(--color-text-secondary);max-width:300px;line-height:1.5;margin:0;opacity:.8}@keyframes bellFloat{0%,to{transform:translateY(0)}50%{transform:scale(1.05);opacity:.5}}.spinner-container{display:flex;align-items:center;justify-content:center}.notification-group{margin-bottom:1.5rem}.notification-group:last-child{margin-bottom:.5rem}.notification-group-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;padding:0 .75rem}.notification-group-header .notification-group-title{margin-bottom:0;padding:0}.notification-group-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light);margin:0 0 .75rem;padding:0 .75rem}.notification-panel-footer{padding:1rem 1.5rem;border-top:1px solid var(--color-border);background:var(--color-background);border-radius:0 0 var(--radius-md) var(--radius-md)}.mark-all-read-footer-btn{width:100%;font-size:.875rem}@media (max-width:640px){.notification-panel{right:0;left:0;top:4rem;width:100%;max-width:100%;border-radius:0;max-height:calc(100vh - 4rem)}.notification-panel-footer{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}}.app-header{position:fixed;top:0;left:0;right:0;height:64px;justify-content:space-between;background:var(--color-header-bg,var(--color-primary-gradient));color:var(--color-text-on-primary,var(--color-text-white));padding:0 var(--spacing-xl);box-shadow:var(--shadow-md);z-index:var(--z-header)}.app-header,.header-actions{display:flex;align-items:center}.header-actions{gap:.5rem}@media (max-width:768px){.header-actions .theme-toggle-container{display:none}}.app-header-title{font-size:1.5rem;font-weight:700;margin:0;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.hamburger-btn{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.5rem;border:1px solid var(--color-white-alpha-20);background:transparent;color:inherit;cursor:pointer;transition:all .2s ease;font-size:1.3rem;padding:0}.hamburger-btn:hover{background:var(--color-white-alpha-10);border-color:var(--color-white-alpha-30);transform:scale(1.05)}.hamburger-btn:active{transform:scale(.95)}.initials-avatar{background:transparent;color:inherit;width:2.5rem;height:2.5rem;border-radius:.5rem;font-weight:700;font-size:.9rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-white-alpha-20);transition:all .2s ease;cursor:pointer}.initials-avatar:hover{background:var(--color-white-alpha-10);border-color:var(--color-white-alpha-30);transform:scale(1.05)}.initials-avatar:active{transform:scale(.95)}@media (max-width:600px){.app-header{padding:0 1rem}.app-header-title{font-size:1.2rem}.hamburger-btn,.initials-avatar{width:2.25rem;height:2.25rem;font-size:.85rem}.hamburger-btn{font-size:1.2rem}}.sidebar{position:fixed;top:64px;left:0;width:60px;height:calc(100vh - 64px);background:var(--color-background);border-right:1px solid var(--color-border);justify-content:space-between;padding:var(--spacing-md) 0;z-index:var(--z-sidebar);transition:transform var(--transition-slow) ease}.sidebar,.sidebar-bottom,.sidebar-top{display:flex;flex-direction:column;align-items:center}.sidebar-bottom,.sidebar-top{width:100%}.sidebar-top{gap:0}.sidebar-bottom{margin-top:auto;padding-bottom:2rem;gap:1rem}.sidebar-section{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;padding:var(--spacing-sm) 0}.sidebar-divider{width:32px;height:1px;background:var(--color-border);margin:var(--spacing-sm) 0;opacity:.5}.sidebar-btn{background:none;border:none;cursor:pointer;font-size:1.4rem;color:var(--color-text-light);transition:background var(--transition-base),color var(--transition-base);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius)}.sidebar-btn:hover{background:var(--color-border);color:var(--color-primary)}.sidebar-btn.active{color:var(--color-primary);background:var(--color-background-hover)}.logout-btn{color:var(--color-text-light)}.logout-btn:hover{background:var(--color-border);color:var(--color-danger)}@media (max-width:768px){.sidebar{transform:translateX(-210px);z-index:300}.sidebar.mobile{transform:translateX(0)}.sidebar.hidden{transform:translateX(-210px)}.sidebar-overlay{position:fixed;inset:0;background:var(--color-black-alpha-40);z-index:250}}.toast-container{position:fixed;top:1rem;right:1rem;z-index:10000;display:flex;flex-direction:column;gap:.75rem;max-width:420px}@media (max-width:768px){.toast-container{top:auto;bottom:1rem;left:50%;right:auto;transform:translateX(-50%);width:calc(100% - 2rem);max-width:500px}}.toast{position:relative;min-width:280px;background:var(--color-background);color:var(--color-text);border-radius:.75rem;box-shadow:0 10px 25px rgba(0,0,0,.15),0 4px 10px rgba(0,0,0,.08);overflow:hidden;border:1px solid var(--color-border);animation:slideInFromTop .3s cubic-bezier(.16,1,.3,1) forwards}@media (max-width:768px){.toast{animation:slideInFromBottom .3s cubic-bezier(.16,1,.3,1) forwards;min-width:auto;width:100%}}.toast-content{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem .875rem}.toast-icon{font-size:1.5rem;flex-shrink:0}.toast-message{flex:1 1;font-size:.9375rem;font-weight:500;line-height:1.4}.toast-close{background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .15s ease;font-size:1.125rem;flex-shrink:0;margin-left:.5rem}.toast-close:hover{background:var(--color-background-hover);color:var(--color-text)}.toast-progress-bar{height:4px;background:var(--color-background-alt);overflow:hidden}.toast-progress-fill{height:100%;transition:width .05s linear;border-radius:0 2px 2px 0}.toast-success .toast-icon{color:var(--color-success)}.toast-success .toast-progress-fill{background:var(--color-success)}.toast-error .toast-icon{color:var(--color-danger)}.toast-error .toast-progress-fill{background:var(--color-danger)}.toast-info .toast-icon{color:var(--color-info)}.toast-info .toast-progress-fill{background:var(--color-info)}.toast-warning .toast-icon{color:var(--color-warning)}.toast-warning .toast-progress-fill{background:var(--color-warning)}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-100%) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(100%) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.todo-filter-bar{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:800px}.filter-search-row{display:flex;gap:.5rem;align-items:center}.filter-search-row .input{flex:1 1;min-width:0;width:100%}.filter-button-wrapper,.filter-toggle-btn{position:relative;flex-shrink:0}.filter-toggle-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:0;width:38px;height:38px;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;transition:all .2s ease}.filter-toggle-btn:hover{background:var(--color-background-alt);border-color:var(--color-primary);color:var(--color-primary)}.filter-toggle-btn:active{transform:scale(.95)}.filter-search-row .custom-select{flex-shrink:0;min-width:180px}.filter-search-row .custom-select-trigger,.filter-search-row .input{height:38px;box-sizing:border-box}.filter-badge{position:absolute;top:-6px;right:-6px;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 .25rem;background:var(--color-primary);color:var(--color-text-white);border-radius:var(--radius);font-size:.7rem;font-weight:600;line-height:1;pointer-events:none}.filter-popover{position:absolute;top:calc(100% + 8px);right:0;width:320px;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:1000;animation:fadeIn .15s ease-out;overflow:visible}.filter-popover-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--color-border)}.filter-popover-header h3{margin:0;font-size:.95rem;font-weight:600;color:var(--color-text)}.clear-all-btn{padding:.25rem .625rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:.8rem;cursor:pointer;transition:all .15s ease}.clear-all-btn:hover{background:var(--color-danger-lighter);border-color:var(--color-danger);color:var(--color-danger)}.filter-popover-content{padding:1rem;gap:1rem}.filter-popover-content,.filter-section{display:flex;flex-direction:column}.filter-section .custom-select,.filter-section .multi-select{width:100%}.filter-popover .custom-select-dropdown,.filter-popover .multi-select-dropdown{z-index:10001!important}.active-filters-row{display:flex;align-items:center;gap:.5rem}.filter-chips{display:flex;flex-wrap:wrap;gap:.5rem;flex:1 1}.filter-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;background:var(--color-background-hover);color:var(--color-primary);border:1px solid var(--color-border-dark);border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s ease}.filter-chip:hover{background:var(--color-primary-light);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.filter-chip-exclude{background:var(--color-danger-lighter);color:var(--color-danger-dark);border-color:var(--color-danger-light)}.filter-chip-exclude:hover{background:var(--color-danger-light)}.chip-remove-icon{font-size:.65rem;opacity:.7}.filter-chip:hover .chip-remove-icon{opacity:1}@media (max-width:768px){.todo-filter-bar{max-width:none;width:100%}.filter-search-row{gap:.5rem}.filter-search-row .input{height:38px;font-size:.875rem;padding:.5rem .75rem}.filter-toggle-btn{width:38px;height:38px;font-size:.9rem}.filter-badge{top:-4px;right:-4px;min-width:16px;height:16px;font-size:.65rem}.filter-popover{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;max-height:85vh;border-radius:var(--radius-md) var(--radius-md) 0 0;animation:slideUp .25s ease-out;display:flex;flex-direction:column;overflow:hidden}@keyframes slideUp{0%{transform:translateY(100%);opacity:.8}to{transform:translateY(0);opacity:1}}.filter-popover-header{flex-shrink:0;padding:1rem;border-bottom:1px solid var(--color-border);background:var(--color-background);position:sticky;top:0;z-index:1}.filter-popover-content{flex:1 1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:1rem 1rem calc(2rem + env(safe-area-inset-bottom))}.filter-section{margin-bottom:1.25rem}.filter-section:last-child{margin-bottom:0}.filter-popover .multi-select{position:static}.filter-popover .multi-select-dropdown{position:static;max-height:200px;margin-top:.5rem;box-shadow:inset 0 1px 3px var(--color-black-alpha-10);border:1px solid var(--color-border-dark);border-radius:var(--radius-sm)}.filter-chips{gap:.375rem;flex-wrap:wrap}.filter-chip{font-size:.75rem;padding:.25rem .5rem}}.priority-selector{display:flex;flex-direction:column;gap:.75rem;width:220px}.priority-header{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--color-text);font-size:.95rem}.priority-header svg{color:var(--color-primary)}.priority-options{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:.5rem;overflow:hidden}.priority-option{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;background:var(--color-background-alt);border:none;cursor:pointer;font-size:.9rem;color:var(--color-text);transition:background var(--transition-fast);text-align:left}.priority-option:hover{background:var(--color-background-dark)}.priority-option.selected{background:var(--color-background-hover);font-weight:600;border-left:4px solid var(--color-primary)}.priority-footer{display:flex;justify-content:flex-end;padding-top:.25rem}.priority-reset{background:transparent;border:none;color:var(--color-text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:color .15s ease,background .15s ease;padding:.35rem .5rem;border-radius:.25rem}.priority-reset:hover{color:var(--color-text);background:var(--color-background-hover)}@media (max-width:768px){.priority-selector{width:100%}}.due-date-selector{display:flex;flex-direction:column;gap:.75rem;width:240px}.due-date-header{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--color-text);font-size:.95rem}.due-date-header svg{color:var(--color-primary)}.due-date-fields{display:flex;flex-direction:column;gap:.6rem;border:1px solid var(--color-border);border-radius:.5rem;padding:.6rem;background:var(--color-background-alt)}.due-date-fields label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--color-text)}.due-date-fields input{padding:.4rem .5rem;border:1px solid var(--color-border-dark);border-radius:var(--radius-sm);font-size:1rem;background:var(--color-background);color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.due-date-fields input[type=date],.due-date-fields input[type=time]{color-scheme:light dark}.due-date-fields input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light);outline:none}.due-date-actions{display:flex;justify-content:space-between;gap:.5rem;padding-top:.25rem}.due-date-btn{flex:1 1;padding:.5rem .75rem;border-radius:.375rem;border:none;font-size:.85rem;font-weight:500;cursor:pointer;transition:opacity .15s ease,box-shadow .15s ease,background .15s ease}.due-date-btn.save{background:var(--color-button-primary,var(--color-primary-gradient));color:var(--color-text-white);box-shadow:var(--shadow-sm)}.due-date-btn.save:hover{opacity:.9;box-shadow:var(--shadow-md)}.due-date-btn.clear{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary)}.due-date-btn.clear:hover{background:var(--color-background-hover);color:var(--color-text);border-color:var(--color-border-dark)}@media (max-width:768px){.due-date-selector{width:100%}.due-date-fields input{font-size:1rem}}.recurrence-selector{display:flex;flex-direction:column;gap:1.25rem;width:320px;padding:.5rem .25rem;color:var(--color-text);font-family:var(--font-family,sans-serif)}.recurrence-header{display:flex;align-items:center;gap:.6rem;font-weight:600;font-size:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border);margin-bottom:.5rem;color:var(--color-text-heading,var(--color-text))}.recurrence-header svg{color:var(--color-primary)}.recurrence-sentence{display:flex;align-items:center;gap:.75rem;font-size:.95rem}.sentence-label{font-weight:500;color:var(--color-text);white-space:nowrap}.sentence-input{width:60px;text-align:center;font-weight:600;color:var(--color-primary);background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--radius);padding:.4rem;transition:all .2s ease}.sentence-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light);outline:none}.sentence-select{flex:1 1}.weekdays-row{display:flex;justify-content:space-between;gap:.25rem;padding:.5rem 0}.weekday-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-background);color:var(--color-text-secondary);font-size:.8rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.weekday-btn:hover{background:var(--color-background-hover);border-color:var(--color-text-light)}.weekday-btn.active{background:var(--color-primary);color:var(--color-text-white);border-color:var(--color-primary);box-shadow:0 2px 4px var(--shadow-color-sm);transform:translateY(-1px)}.ends-section{display:flex;flex-direction:column;gap:.75rem;background:var(--color-background-alt);padding:.85rem;border-radius:var(--radius)}.ends-row{gap:.75rem;font-size:.9rem}.ends-input-wrapper,.ends-row{display:flex;align-items:center}.ends-input-wrapper{flex:1 1;gap:.5rem}.ends-input-wrapper input{padding:.4rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-background);color:var(--color-text);font-size:.9rem}.ends-input-wrapper input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.recurrence-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.recurrence-btn{padding:.5rem 1rem;border-radius:var(--radius);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.recurrence-btn.cancel{background:transparent;color:var(--color-text-secondary)}.recurrence-btn.cancel:hover{color:var(--color-text);background:var(--color-background-hover)}.recurrence-btn.save{background:var(--color-primary);color:var(--color-text-white);box-shadow:0 2px 4px var(--shadow-color-sm)}.recurrence-btn.save:hover{filter:brightness(1.1);transform:translateY(-1px)}.recurrence-btn.clear{color:var(--color-danger);background:transparent;margin-right:auto}.recurrence-btn.clear:hover{background:var(--color-danger-light)}.recurrence-preview{font-size:.85rem;color:var(--color-text-secondary);text-align:center;padding:.5rem;background:var(--color-background-alt);border-radius:var(--radius-sm);margin-top:-.5rem;border:1px dashed var(--color-border)}.recurrence-error{font-size:.8rem;color:var(--color-danger);background:var(--color-danger-light);padding:.5rem;border-radius:var(--radius-sm)}@media (max-width:768px){.recurrence-selector{width:100%}}.status-selector{display:flex;flex-direction:column;gap:.75rem;width:220px}.status-header{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--color-text);font-size:.95rem}.status-header svg{color:var(--color-primary)}.status-options{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:.5rem;overflow:hidden}.status-option{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;background:var(--color-background-alt);border:none;cursor:pointer;font-size:.9rem;color:var(--color-text);transition:background .15s ease;text-align:left}.status-option:hover{background:var(--color-background)}.status-option.selected{background:var(--color-background-hover);font-weight:600;border-left:4px solid var(--color-primary)}@media (max-width:768px){.status-selector{width:100%}}.space-selector{display:flex;flex-direction:column;min-width:280px;max-height:100%;overflow:hidden}.space-selector-header{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid var(--color-border);background:var(--color-background-alt);position:sticky;top:0;z-index:10}.space-selector-content{flex:1 1;overflow-y:auto;padding-right:4px}.space-selector-header h3{font-size:1rem;font-weight:600;color:var(--color-text);margin:0}.space-create-btn{background:none;border:none;cursor:pointer;font-size:1.5rem;color:var(--color-text-light);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);font-weight:300;line-height:1}.space-create-btn:hover{background:var(--color-border);color:var(--color-primary)}.space-loading{display:flex;justify-content:center;align-items:center;padding:1rem 0}.space-list{display:flex;flex-direction:column;gap:.25rem}.space-list::-webkit-scrollbar{width:6px}.space-list::-webkit-scrollbar-thumb{background-color:var(--color-black-alpha-20);border-radius:3px}.space-empty{text-align:center;color:var(--color-text-light);font-size:.9rem;padding:1rem 0}.space-section{margin-bottom:1rem}.space-section-title{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--color-text-light);margin:0 0 .5rem .5rem;letter-spacing:.05em}.space-item{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .75rem;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-background-alt);cursor:pointer;transition:background .2s ease,border-color .2s ease;margin:.2rem}.space-item-icon{font-size:1.25rem;line-height:1;flex-shrink:0}.space-item:hover{background:var(--color-background);border-color:var(--color-border-dark)}.space-item:focus{outline:2px solid var(--color-primary);outline-offset:0}.space-item.active{background:var(--color-background-hover);border-color:var(--color-primary)}.space-item-main{display:flex;flex-direction:column;align-items:flex-start;flex:1 1;min-width:0;text-align:left}.space-title-row{display:flex;align-items:center;gap:.5rem;max-width:100%}.space-title{font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-icon{position:absolute;top:8px;right:8px;font-size:.75rem;color:var(--color-primary);background:var(--color-bg-primary);padding:4px 6px;border-radius:var(--radius-sm);opacity:.95;transition:all .2s ease;box-shadow:0 1px 4px var(--color-black-alpha-15);z-index:1}.space-item:hover .share-icon{opacity:1}.space-desc{font-size:.85rem;color:var(--color-text-light);margin-top:.15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.space-item-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.edit-icon-btn,.leave-icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-tertiary);cursor:pointer;transition:all .2s ease;flex-shrink:0}.edit-icon-btn:hover{background:var(--color-bg-secondary);border-color:var(--color-primary);color:var(--color-primary)}.leave-icon-btn:hover{background:var(--color-error-bg,#fff1f0);border-color:var(--color-error,#ff4d4f);color:var(--color-error,#ff4d4f)}.edit-icon-btn:active,.leave-icon-btn:active{transform:scale(.95)}.leave-icon-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width:768px){.space-selector{min-width:unset;max-width:100vw;width:100%;max-height:100vh;height:100%;display:flex;flex-direction:column;overflow:hidden;padding:0;box-sizing:border-box}.space-selector-content{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:.75rem;max-width:100%}.space-selector-header{padding:20px 24px 16px;margin-bottom:0;background:var(--color-background);border-bottom:1px solid var(--color-border)}.space-selector-header h3{font-size:1.25rem}.space-create-btn{width:32px;height:32px;font-size:1.4rem}.space-list{overflow-y:visible}.space-item{padding:.5rem .625rem;margin:.15rem 0}.space-title{font-size:.9rem}.space-desc{font-size:.8rem}.edit-icon-btn,.leave-icon-btn{width:28px;height:28px;font-size:.85rem}.space-section-title{font-size:.7rem;margin:0 0 .4rem .4rem}}.space-popover-wrapper{position:relative;display:flex;justify-content:center}.space-popover{position:fixed;top:80px;left:60px;min-width:320px;height:fit-content;max-height:calc(100vh - 100px);overflow:hidden;display:flex;flex-direction:column;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:1rem;z-index:200;animation:fadeIn .15s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.space-popover-trigger{background:none;border:none;cursor:pointer;font-size:1.4rem;color:var(--color-text-light);transition:background .2s,color .2s;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius)}.space-popover-trigger:hover{background:var(--color-border);color:var(--color-primary)}.space-popover-trigger.active{color:var(--color-primary);background:var(--color-background-hover)}.space-popover.right-align{left:70px}@media (max-width:768px){.space-popover{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;height:100vh;max-height:100vh;border-radius:0;padding:0;animation:slideInRight .3s ease-out;display:flex;flex-direction:column;z-index:2000}.space-selector{height:100%;max-height:100vh;padding:1rem}.space-popover-trigger{width:38px;height:38px;font-size:1.3rem}}.role-permissions-table{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.table-title{font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 1rem}.table-container{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--color-border)}.role-permissions-table table{width:100%;border-collapse:collapse;background:var(--color-bg-primary);font-size:.875rem}.role-permissions-table thead{background:var(--color-bg-secondary);border-bottom:2px solid var(--color-border)}.role-permissions-table th{padding:.875rem 1rem;text-align:left;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.role-permissions-table .role-col{text-align:center;min-width:80px}.role-permissions-table td{padding:.875rem 1rem;border-bottom:1px solid var(--color-border-light)}.role-permissions-table tbody tr:last-child td{border-bottom:none}.role-permissions-table tbody tr:hover{background:var(--color-bg-secondary)}.permission-name{font-weight:500;color:var(--color-text)}.permission-cell{text-align:center}.check-icon{color:var(--color-success);font-size:1.125rem}.xmark-icon{color:var(--color-text-tertiary);font-size:1.125rem;opacity:.4}@media (max-width:640px){.table-container{font-size:.8125rem}.role-permissions-table td,.role-permissions-table th{padding:.625rem .75rem}.role-permissions-table .role-col{min-width:60px}}.space-modal-backdrop{position:fixed;inset:0;background:var(--color-black-alpha-45);display:flex;justify-content:center;align-items:center;z-index:2100;animation:fadeIn .2s ease-out}.space-modal{position:relative;z-index:2110;width:500px;max-width:95%;max-height:calc(100vh - 160px);background:var(--color-background-alt);border-radius:var(--radius-md);box-shadow:0 8px 30px var(--color-black-alpha-20);overflow:hidden;display:flex;flex-direction:column}.space-modal-header{flex-shrink:0;position:sticky;top:0;background:var(--color-background);z-index:10;display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--color-border)}.space-modal-header h2{font-size:1.25rem;font-weight:600;margin:0;line-height:1.4;color:var(--color-text)}.space-modal-body{flex:1 1;overflow-y:auto;padding:1.5rem}.space-modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--color-border);background:var(--color-background-alt);font-size:.875rem;color:var(--color-text-light)}.space-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.space-modal small{color:var(--color-text-secondary);font-size:.85rem}.modal-tabs{background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:var(--radius);padding:4px;margin:1rem 1rem 0;gap:2px;flex-shrink:0}.modal-tabs,.modal-tabs .tab{display:flex;position:relative}.modal-tabs .tab{flex:1 1;padding:10px 16px;background:transparent;border:none;border-radius:var(--radius);color:var(--color-text-light);cursor:pointer;transition:all .2s ease;font-size:.875rem;font-weight:600;align-items:center;justify-content:center;gap:8px;z-index:2}.modal-tabs .tab:hover:not(.active){color:var(--color-text);background:var(--color-background-tertiary)}.modal-tabs .tab.active{color:var(--color-primary-foreground,white)}.modal-tabs-slider{position:absolute;top:4px;left:4px;height:calc(100% - 8px);width:calc(50% - 5px);background:var(--color-button-primary,var(--color-primary-gradient));border-radius:var(--radius);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:1;box-shadow:var(--shadow-md)}.modal-tabs-slider.shared{transform:translateX(calc(100% + 2px))}.shared-tab{display:flex;flex-direction:column;gap:1.5rem}.sharing-toggle{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:var(--color-background);border-radius:var(--radius);border:1px solid var(--color-border)}.toggle-info h3{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:var(--color-text)}.toggle-info p{margin:0;font-size:.875rem;color:var(--color-text-secondary)}.invite-section{display:flex;flex-direction:column;gap:.75rem}.invite-section h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-text)}.invite-form{display:flex;flex-direction:column;gap:.75rem}.invite-input-group{display:flex;gap:.5rem}.invite-input-group input{flex:2 1}.role-select{flex:1 1;min-width:120px}.search-results{flex-direction:column;gap:.5rem;max-height:200px;overflow-y:auto;border:1px solid var(--color-border);padding:.5rem;background-color:var(--color-background-alt)}.search-result-item,.search-results{display:flex;border-radius:var(--radius-sm)}.search-result-item{justify-content:space-between;align-items:center;padding:.625rem;cursor:pointer;transition:background-color .2s ease}.search-result-item:hover{background-color:var(--color-background-hover)}.member-info,.user-info{display:flex;flex-direction:column;gap:.125rem}.member-email,.user-email{font-size:.875rem;font-weight:500;color:var(--color-text)}.member-name,.user-name{font-size:.75rem;color:var(--color-text-secondary)}.members-section{display:flex;flex-direction:column;gap:.75rem}.members-section h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-text)}.members-list{display:flex;flex-direction:column;gap:.5rem}.member-item{justify-content:space-between;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-background-alt)}.member-actions,.member-item{display:flex;align-items:center}.member-actions{gap:.5rem}.role-badge{padding:.375rem .75rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;background-color:var(--color-background);color:var(--color-text-secondary)}.role-badge.owner{background-color:var(--color-warning-light);color:var(--color-warning-dark)}.remove-member-btn{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:1.25rem;color:var(--color-danger);cursor:pointer;transition:all .2s ease}.remove-member-btn:hover{background-color:var(--color-danger-light);border-color:var(--color-danger)}@media (max-width:768px){.space-modal-backdrop{align-items:center;justify-content:center;padding:0}.space-modal{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;height:100vh;max-height:100vh;border-radius:0;overflow:hidden;margin:0;display:flex;flex-direction:column;animation:slideInRight .3s ease-out}.space-modal-body{padding:1rem}.space-form{gap:.875rem}.form-field label{font-size:.9rem}.form-field input{font-size:.95rem;padding:.65rem .875rem}.close-btn{font-size:1.75rem;padding:.5rem}.space-modal small{font-size:.8rem}.modal-tabs{margin:0;padding:0 1rem}.modal-tabs .tab{font-size:.875rem;padding:.75rem .5rem}.space-modal-header{border-bottom:1px solid var(--color-border)}.shared-tab{gap:1.25rem}.sharing-toggle{flex-direction:column;gap:.75rem;align-items:stretch;padding:.875rem}.toggle-info h3{font-size:.9375rem}.toggle-info p{font-size:.8125rem}.invite-input-group,.member-item{flex-direction:column;gap:.625rem}.member-item{align-items:stretch;padding:.625rem}.member-actions{justify-content:space-between}.search-result-item{flex-direction:column;align-items:stretch;gap:.5rem}}.leave-space-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.leave-space-section button{width:100%}.invitations-section{margin-bottom:1.5rem}.invitations-section h3{font-size:.9375rem;font-weight:600;margin-bottom:.75rem;color:var(--color-text)}.invitations-list{display:flex;flex-direction:column;gap:.5rem}.invitation-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border:1px dashed var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-warning-lighter)}.invitation-info{display:flex;flex-direction:column;gap:.25rem}.invitation-email{font-size:.875rem;font-weight:500;color:var(--color-text)}.invitation-name{font-size:.75rem;color:var(--color-text-secondary)}.invitation-role{font-size:.75rem;padding:.125rem .5rem;border-radius:3px;background-color:var(--color-warning-light);color:var(--color-warning-dark);width:fit-content}.invitation-actions{display:flex;align-items:center;gap:.5rem}.pending-badge{padding:.375rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;background-color:var(--color-warning-light);color:var(--color-warning-dark)}.revoke-invitation-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background-color:var(--color-danger-light);color:var(--color-danger-dark);border-radius:var(--radius-sm);cursor:pointer;font-size:1.25rem;line-height:1;transition:all .2s ease}.revoke-invitation-btn:hover{background-color:var(--color-danger-light-hover)}.current-space-indicator{display:inline-flex;align-items:center;gap:.5rem;padding:0 .875rem;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius);font-size:.875rem;color:var(--color-text-secondary);transition:all .2s ease;white-space:nowrap;height:40px;cursor:default;flex-shrink:0}.current-space-indicator:hover{border-color:var(--color-primary);background-color:var(--color-background-hover)}.current-space-indicator .space-icon{color:var(--color-primary);font-size:.875rem;flex-shrink:0}.current-space-indicator .space-title{font-weight:500;color:var(--color-text);font-size:.875rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}@media (prefers-color-scheme:dark){.current-space-indicator{background-color:var(--color-background);border-color:var(--color-border)}.current-space-indicator:hover{background-color:var(--color-background-hover);border-color:var(--color-primary)}}@media (max-width:768px){.current-space-indicator{padding:0 .65rem;height:38px;gap:.4rem}.current-space-indicator .space-icon{font-size:.8125rem}.current-space-indicator .space-title{font-size:.8125rem;max-width:100px}}.tag-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .6rem;border-radius:9999px;font-size:.8rem;font-weight:500;cursor:default;transition:transform .15s ease,box-shadow .15s ease}.tag-chip.clickable,.tag-chip:hover{cursor:pointer}.tag-chip.clickable:hover{transform:translateY(-1px);box-shadow:0 2px 6px var(--color-black-alpha-15)}.tag-chip__remove{background:none;border:none;cursor:pointer;color:inherit;font-size:.9rem;line-height:1;padding:0}.tag-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;justify-content:center;align-items:center;z-index:2100;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.tag-modal{position:relative;z-index:2110;width:500px;max-width:95%;border-radius:var(--radius-md);box-shadow:var(--shadow-xl);overflow:hidden;border:1px solid var(--color-border);display:flex;flex-direction:column;max-height:85vh}.tag-modal,.tag-modal-header{background:var(--color-background-alt)}.tag-modal-header{flex-shrink:0;position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--color-border);background:var(--color-background)}.tag-modal-header h2{font-size:1.25rem;font-weight:600;margin:0;line-height:1.4;color:var(--color-text)}.tag-modal-body{flex:1 1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column}.tag-modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--color-border);background:var(--color-background-alt);font-size:.875rem}.close-btn,.tag-modal-footer{color:var(--color-text-light)}.close-btn{width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:1.25rem}.close-btn:hover{background:var(--color-background-hover,var(--color-background-secondary));color:var(--color-text);transform:scale(1.05)}.close-btn:active{transform:scale(.95)}.tag-form{gap:1rem;margin-bottom:1rem}.form-field,.tag-form{display:flex;flex-direction:column}.form-field{gap:.25rem}.tag-color-input{width:100%;height:3rem;padding:.25rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-background);cursor:pointer;transition:border-color .2s ease}.tag-color-input:focus,.tag-color-input:hover{border-color:var(--color-primary)}.tag-color-input:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary-light)}.tag-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem;flex:1 1;overflow-y:auto;padding-right:.25rem;scrollbar-width:thin;min-height:200px}.tag-list::-webkit-scrollbar{width:6px}.tag-list::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);border-radius:3px}.tag-item{display:flex;justify-content:space-between;align-items:flex-start;border:1px solid var(--color-border);padding:.75rem;border-radius:var(--radius);background:var(--color-background);transition:border-color var(--transition-base)}.tag-item:hover{border-color:var(--color-border-dark)}.tag-info{display:flex;align-items:flex-start;gap:.75rem;flex:1 1}.tag-color{width:18px;height:18px;border-radius:50%;flex-shrink:0;margin-top:.2rem}.tag-text{display:flex;flex-direction:column;line-height:1.3}.tag-name{font-weight:600;color:var(--color-text)}.tag-desc{font-size:.85rem;color:var(--color-text-light);margin-top:.2rem}.tag-actions{display:flex;gap:.5rem;flex-shrink:0}.tag-icon-btn{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);background:var(--color-background);color:var(--color-text-light);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-size:.875rem}.tag-icon-btn:hover{background:var(--color-background-hover);border-color:var(--color-border-dark);color:var(--color-text)}.tag-icon-btn.edit:hover{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-white)}.tag-icon-btn.delete:hover{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-text-white)}@media (max-width:768px){.tag-modal-backdrop{align-items:center;justify-content:center;padding:0}.tag-modal{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;height:100vh;max-height:100vh;border-radius:0;overflow:hidden;margin:0;display:flex;flex-direction:column;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.tag-modal-body{padding:1rem}.tag-modal-header .card-header{padding:16px 20px}.tag-modal-header .card-header h2{font-size:1.125rem}.close-btn{width:36px;height:36px;font-size:1.5rem}.tag-form{gap:.875rem}.form-field label{font-size:.9rem}.form-field input,.form-field input[type=color]{font-size:1rem;padding:.1rem}.tag-item{flex-direction:column;gap:.75rem;align-items:stretch}.tag-actions{width:100%;justify-content:stretch}.tag-actions button{flex:1 1;font-size:.875rem;padding:.5rem}.tag-name{font-size:.95rem}.tag-desc{font-size:.8rem}}.tag-selector{display:flex;flex-direction:column;gap:.75rem;width:100%;border-radius:var(--radius,.5rem);position:relative;z-index:0;overflow:visible}.tag-selector-header{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--color-text);font-size:.95rem}.tag-selector-header svg{color:var(--color-primary)}.tag-selector-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:var(--radius,.5rem);cursor:pointer;transition:all .2s ease;font-family:inherit}.tag-selector-toggle:hover{background:var(--color-background-hover,var(--color-background));border-color:var(--color-primary)}.tag-selector-toggle-left{display:flex;align-items:center;gap:.5rem}.tag-selector-toggle-icon{color:var(--color-primary);font-size:1rem}.tag-selector-toggle-title{font-weight:600;color:var(--color-text);font-size:.875rem}.tag-selector-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--color-primary);color:var(--color-text-white);border-radius:var(--radius);font-size:.75rem;font-weight:600}.tag-selector-toggle-chevron{color:var(--color-text-light);font-size:.875rem;transition:transform .2s ease}.tag-selector-content{display:flex;flex-direction:column;gap:.75rem;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.tag-selector-search{display:flex;align-items:center;position:relative}.tag-selector-input{width:100%;padding:.5rem 2rem .5rem .75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-background);color:var(--color-text);font-size:.85rem;transition:border-color .15s ease,box-shadow .15s ease}.tag-selector-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.tag-selector-search-icon{position:absolute;right:10px;color:var(--color-text-lighter);pointer-events:none}.tag-clear-btn{background:none;border:none;color:var(--color-text-light);cursor:pointer;transition:color .15s ease}.tag-clear-btn:hover{color:var(--color-text)}.tag-selector-list{display:flex;flex-wrap:wrap;gap:.5rem;max-height:180px;overflow-y:auto;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius,.5rem);background:var(--color-background)}.tag-selector-list::-webkit-scrollbar{width:6px}.tag-selector-list::-webkit-scrollbar-track{background:transparent}.tag-selector-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.tag-selector-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-lighter)}.tag-selector-chip{border:none;background:none;padding:0;cursor:pointer;border-radius:9999px;transition:box-shadow .15s ease,transform .15s ease}.tag-selector-chip:hover{transform:translateY(-1px)}.tag-selector-chip.active{box-shadow:0 0 0 2px var(--color-primary);transform:scale(1.05)}.tag-selector-empty{text-align:center;color:var(--color-text-light);font-size:.85rem;padding:.5rem 0}.tag-footer{display:flex;justify-content:flex-end;padding-top:.25rem}.tag-reset{background:transparent;border:none;color:var(--color-text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:color .15s ease,background .15s ease;padding:.35rem .5rem;border-radius:.25rem}.tag-reset:hover{color:var(--color-text);background:var(--color-background-hover)}.comment-text{word-wrap:break-word;white-space:pre-wrap;line-height:1.5}.comment-mention-wrapper{position:relative;display:inline-block;vertical-align:baseline}.comment-mention{color:var(--color-primary);font-weight:600;background-color:var(--color-primary-lighter);padding:.125rem .375rem;border-radius:var(--radius-sm);transition:all .2s ease;cursor:pointer}.comment-mention:hover{background-color:var(--color-info-light);color:var(--color-primary-dark)}[data-theme=dark] .comment-mention{color:var(--color-primary-light);background-color:rgba(var(--color-primary-rgb),.15)}[data-theme=dark] .comment-mention:hover{background-color:rgba(var(--color-primary-rgb),.25);color:var(--color-primary-lighter)}.mention-preview{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);z-index:9999;animation:mentionPreviewFadeIn .15s ease-out;pointer-events:none;max-width:calc(100vw - 2rem)}@keyframes mentionPreviewFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.mention-preview-content{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 4px 16px rgba(0,0,0,.15);white-space:nowrap}.mention-preview-content:after{content:"";position:absolute;top:-6px;left:50%;margin-left:-6px;width:12px;height:12px;background:var(--color-background);border-left:1px solid var(--color-border);border-top:1px solid var(--color-border);transform:rotate(45deg)}.mention-preview-info{display:flex;flex-direction:column;gap:.125rem}.mention-preview-name{font-weight:600;font-size:.9375rem;color:var(--color-text)}.mention-preview-role{font-size:.75rem;font-weight:500;color:var(--color-primary);background:var(--color-primary-lighter);padding:.125rem .5rem;border-radius:var(--radius);width:fit-content}.mention-preview-email{font-size:.8125rem;color:var(--color-text-secondary)}[data-theme=dark] .mention-preview-content{background:var(--color-background-alt);box-shadow:0 4px 16px rgba(0,0,0,.3)}[data-theme=dark] .mention-preview-content:after{background:var(--color-background-alt)}.comment-link-wrapper{position:relative;display:inline-block;vertical-align:baseline}.comment-link{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px;cursor:pointer;transition:color .2s ease}.comment-link:hover{color:var(--color-primary-dark);text-decoration-thickness:2px}[data-theme=dark] .comment-link{color:var(--color-primary-light)}[data-theme=dark] .comment-link:hover{color:var(--color-primary-lighter)}.link-preview{position:absolute;top:calc(100% + 8px);left:0;z-index:9999;animation:linkPreviewFadeIn .15s ease-out;pointer-events:none}@keyframes linkPreviewFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.link-preview-content{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 4px 16px rgba(0,0,0,.15);min-width:220px;max-width:300px}.link-preview-content:after{content:"";position:absolute;top:-6px;left:20px;width:12px;height:12px;background:var(--color-background);border-left:1px solid var(--color-border);border-top:1px solid var(--color-border);transform:rotate(45deg)}.link-preview-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-primary-lighter);border-radius:var(--radius);color:var(--color-primary);font-size:1rem;flex-shrink:0}.link-preview-info{display:flex;flex-direction:column;gap:.25rem;min-width:0;flex:1 1}.link-preview-title{font-weight:600;font-size:.875rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.link-preview-description{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}.link-preview-domain{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--color-text-light);margin-top:.125rem}.link-preview-domain svg{font-size:.625rem}[data-theme=dark] .link-preview-content{background:var(--color-background-alt);box-shadow:0 4px 16px rgba(0,0,0,.3)}[data-theme=dark] .link-preview-content:after{background:var(--color-background-alt)}[data-theme=dark] .link-preview-icon{background:rgba(var(--color-primary-rgb),.15)}.mention-input-wrapper{position:relative;display:flex}.mention-input{width:100%;min-height:60px;padding:.625rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background-color:var(--color-background);color:var(--color-text);resize:vertical;font-size:.875rem;line-height:1.5;transition:border-color .2s ease;font-family:inherit}.mention-input:focus{border-color:var(--color-primary);outline:none}.mention-input:disabled{opacity:.6;cursor:not-allowed;background-color:var(--color-background-alt)}.mention-suggestions{position:absolute;bottom:100%;left:0;right:0;margin-bottom:.25rem;max-height:200px;overflow-y:auto;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:1000}.mention-suggestion-item{display:flex;align-items:center;width:100%;padding:.625rem .75rem;background:transparent;border:none;cursor:pointer;text-align:left;transition:background-color .15s ease}.mention-suggestion-item:hover{background-color:var(--color-background-hover)}.mention-suggestion-item.selected{background-color:var(--color-primary-lighter);border-left:3px solid var(--color-primary)}.mention-user-info{display:flex;flex-direction:column;gap:.125rem}.mention-user-name{font-size:.875rem;font-weight:600;color:var(--color-text)}.mention-user-email{font-size:.75rem;color:var(--color-text-secondary)}.mention-suggestions::-webkit-scrollbar{width:6px}.mention-suggestions::-webkit-scrollbar-track{background:transparent}.mention-suggestions::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.mention-suggestions::-webkit-scrollbar-thumb:hover{background:var(--color-text-light)}