:root,.theme-light{--color-bg-primary: #f8f9fa;--color-bg-secondary: #ffffff;--color-bg-tertiary: #e9ecef;--color-surface-primary: #ffffff;--color-surface-secondary: #f1f3f5;--color-surface-elevated: #ffffff;--color-text-primary: #212529;--color-text-secondary: #495057;--color-text-tertiary: #868e96;--color-text-inverse: #ffffff;--color-border-primary: #dee2e6;--color-border-secondary: #e9ecef;--color-border-focus: #339af0;--color-primary: #339af0;--color-primary-hover: #228be6;--color-primary-active: #1c7ed6;--color-primary-subtle: rgba(51, 154, 240, .15);--color-secondary: #868e96;--color-secondary-hover: #495057;--color-secondary-active: #343a40;--color-success: #40c057;--color-success-subtle: rgba(64, 192, 87, .15);--color-warning: #fab005;--color-warning-subtle: rgba(250, 176, 5, .15);--color-error: #fa5252;--color-error-subtle: rgba(250, 82, 82, .15);--color-header-bg: #ffffff;--color-header-text: #212529;--color-header-text-muted: #868e96;--color-header-border: #dee2e6;--color-header-hover: rgba(0, 0, 0, .05);--color-header-active: rgba(0, 0, 0, .12);--color-overlay-bg: rgba(0, 0, 0, .5);--color-drawer-bg: #ffffff;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .15);--theme-transition: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease}.theme-dark{--color-bg-primary: #0d1117;--color-bg-secondary: #161b22;--color-bg-tertiary: #21262d;--color-surface-primary: #1c2128;--color-surface-secondary: #21262d;--color-surface-elevated: #252c36;--color-text-primary: #e6edf3;--color-text-secondary: #b1bac4;--color-text-tertiary: #6e7681;--color-text-inverse: #0d1117;--color-border-primary: #30363d;--color-border-secondary: #21262d;--color-border-focus: #58a6ff;--color-primary: #58a6ff;--color-primary-hover: #79b8ff;--color-primary-active: #388bfd;--color-primary-subtle: rgba(88, 166, 255, .15);--color-secondary: #8b949e;--color-secondary-hover: #c9d1d9;--color-secondary-active: #b1bac4;--color-success: #3fb950;--color-success-subtle: rgba(63, 185, 80, .15);--color-warning: #d29922;--color-warning-subtle: rgba(210, 153, 34, .15);--color-error: #f85149;--color-error-subtle: rgba(248, 81, 73, .15);--color-header-bg: #0d1117;--color-header-text: #e6edf3;--color-header-text-muted: rgba(230, 237, 243, .6);--color-header-border: rgba(48, 54, 61, .6);--color-header-hover: rgba(255, 255, 255, .08);--color-header-active: rgba(255, 255, 255, .15);--color-overlay-bg: rgba(0, 0, 0, .7);--color-drawer-bg: #0d1117;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .6);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .7)}body{transition:var(--theme-transition);background-color:var(--color-bg-primary);color:var(--color-text-primary)}html[data-theme=light]{--color-bg-primary: #f8f9fa;--color-bg-secondary: #ffffff;--color-bg-tertiary: #e9ecef;--color-surface-primary: #ffffff;--color-surface-secondary: #f1f3f5;--color-surface-elevated: #ffffff;--color-text-primary: #212529;--color-text-secondary: #495057;--color-text-tertiary: #868e96;--color-text-inverse: #ffffff;--color-border-primary: #dee2e6;--color-border-secondary: #e9ecef;--color-border-focus: #339af0;--color-primary: #339af0;--color-primary-hover: #228be6;--color-primary-active: #1c7ed6;--color-primary-subtle: rgba(51, 154, 240, .15);--color-secondary: #868e96;--color-secondary-hover: #495057;--color-secondary-active: #343a40;--color-success: #40c057;--color-success-subtle: rgba(64, 192, 87, .15);--color-warning: #fab005;--color-warning-subtle: rgba(250, 176, 5, .15);--color-error: #fa5252;--color-error-subtle: rgba(250, 82, 82, .15);--color-header-bg: #ffffff;--color-header-text: #212529;--color-header-text-muted: #868e96;--color-header-border: #dee2e6;--color-header-hover: rgba(0, 0, 0, .05);--color-header-active: rgba(0, 0, 0, .12);--color-overlay-bg: rgba(0, 0, 0, .5);--color-drawer-bg: #ffffff;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .15)}html[data-theme=dark]{--color-bg-primary: #0d1117;--color-bg-secondary: #161b22;--color-bg-tertiary: #21262d;--color-surface-primary: #1c2128;--color-surface-secondary: #21262d;--color-surface-elevated: #252c36;--color-text-primary: #e6edf3;--color-text-secondary: #b1bac4;--color-text-tertiary: #6e7681;--color-text-inverse: #0d1117;--color-border-primary: #30363d;--color-border-secondary: #21262d;--color-border-focus: #58a6ff;--color-primary: #58a6ff;--color-primary-hover: #79b8ff;--color-primary-active: #388bfd;--color-primary-subtle: rgba(88, 166, 255, .15);--color-secondary: #8b949e;--color-secondary-hover: #c9d1d9;--color-secondary-active: #b1bac4;--color-success: #3fb950;--color-success-subtle: rgba(63, 185, 80, .15);--color-warning: #d29922;--color-warning-subtle: rgba(210, 153, 34, .15);--color-error: #f85149;--color-error-subtle: rgba(248, 81, 73, .15);--color-header-bg: #0d1117;--color-header-text: #e6edf3;--color-header-text-muted: rgba(230, 237, 243, .6);--color-header-border: rgba(48, 54, 61, .6);--color-header-hover: rgba(255, 255, 255, .08);--color-header-active: rgba(255, 255, 255, .15);--color-overlay-bg: rgba(0, 0, 0, .7);--color-drawer-bg: #0d1117;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .6);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .7)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{text-size-adjust:100%;scroll-behavior:smooth;background-color:var(--color-bg-primary, #f8f9fa);color:var(--color-text-primary, #212529)}html,body{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg-primary, #f8f9fa)!important;color:var(--color-text-primary, #212529)!important;transition:background-color .3s ease,color .3s ease}img,picture,video,canvas,svg{display:block;max-width:100%}h1,h2,h3,h4,h5,h6{line-height:1.2}p,blockquote{overflow-wrap:break-word}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}#app{min-height:100vh;display:flex;flex-direction:column}:focus-visible{outline:2px solid var(--color-border-focus, #339af0);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background-color:var(--color-primary, #339af0);color:var(--color-text-inverse, #ffffff)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-tertiary, #e9ecef)}::-webkit-scrollbar-thumb{background:var(--color-secondary, #868e96);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-secondary-hover, #495057)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.page-placeholder{max-width:800px;margin:0 auto;padding:4rem 2rem;text-align:center}.page-placeholder-title{font-size:3rem;font-weight:700;color:var(--color-text-primary);margin-bottom:1rem}.page-placeholder-subtitle{font-size:1.5rem;color:var(--color-text-secondary);margin-bottom:2rem}.page-placeholder-content{background-color:var(--color-surface-primary);border-radius:8px;padding:2rem;box-shadow:var(--shadow-md)}.page-placeholder-content p{font-size:1.1rem;line-height:1.8;color:var(--color-text-secondary)}.app-main{flex:1;width:100%;max-width:100%;overflow-x:hidden}.dashboard-welcome{padding:4rem 2rem;text-align:center;position:relative}.dashboard-watermark-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:400px;height:400px;object-fit:contain;opacity:.12;z-index:0;pointer-events:none;transition:opacity .3s ease}.dashboard-title{font-size:3rem;font-weight:700;color:var(--color-text-primary);margin-bottom:1rem;position:relative;z-index:1}.dashboard-subtitle{font-size:1.5rem;color:var(--color-text-secondary);position:relative;z-index:1}.auth-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 70px);padding:2rem 1rem;background-color:var(--color-bg-primary)}.auth-container{width:100%;max-width:400px;background-color:var(--color-surface-primary);border-radius:12px;box-shadow:var(--shadow-lg);padding:2rem}.auth-header{text-align:center;margin-bottom:2rem}.auth-title{font-size:1.75rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem}.auth-subtitle{font-size:.875rem;color:var(--color-text-secondary);margin:0}.auth-form{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.form-input{padding:.75rem 1rem;font-size:1rem;color:var(--color-text-primary);background-color:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:8px;transition:all .2s ease}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3498db1a}.form-input:disabled{opacity:.6;cursor:not-allowed}.form-input.form-input-error{border-color:var(--color-error);background-color:#ef44440d}.form-input.form-input-error:focus{border-color:var(--color-error);box-shadow:0 0 0 3px #ef44441a}.form-hint{font-size:.75rem;color:var(--color-text-secondary);margin:-.25rem 0 0}.form-validation-error{font-size:.75rem;color:var(--color-error);margin:-.25rem 0 0;font-weight:500}.auth-submit-button{padding:.875rem 1.5rem;font-size:1rem;font-weight:600;color:var(--color-text-inverse);background-color:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.auth-submit-button:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.auth-submit-button:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.auth-submit-button:disabled{opacity:.6;cursor:not-allowed}.auth-error-message{padding:1rem;margin-bottom:1.5rem;font-size:.875rem;color:var(--color-text-inverse);background-color:var(--color-error);border-radius:8px;text-align:center}.auth-warning-message{padding:1rem;margin-bottom:1.5rem;font-size:.875rem;color:var(--color-text-primary);background-color:var(--color-warning-subtle);border:1px solid var(--color-warning);border-radius:8px;text-align:center}.auth-info{padding:1rem;margin-bottom:1.5rem;font-size:.875rem;color:var(--color-text-primary);background-color:var(--color-primary-subtle);border-radius:8px;text-align:center}.auth-info-text{margin:0;color:var(--color-text-primary)}.auth-switch{text-align:center;padding-top:1.5rem;border-top:1px solid var(--color-border-secondary)}.auth-switch p{font-size:.875rem;color:var(--color-text-secondary);margin:0}.auth-link{color:var(--color-primary);text-decoration:none;font-weight:600;transition:color .2s ease}.auth-link:hover{color:var(--color-primary-hover);text-decoration:underline}.protected-route-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 70px);gap:1rem}.loading-logo{width:120px;height:120px;object-fit:contain;flex-shrink:0}.loading-text{font-size:1rem;color:var(--color-text-secondary);margin:0}@media(max-width:480px){.auth-container{padding:1.5rem}.auth-title{font-size:1.5rem}}.theme-dark .auth-container{background-color:var(--color-surface-primary);box-shadow:var(--shadow-lg)}.theme-dark .form-input{background-color:var(--color-bg-secondary);border-color:var(--color-border-primary)}.theme-dark .auth-input:focus{border-color:var(--color-primary)}.theme-dark .auth-info{background-color:var(--color-primary-subtle)}.screen-time-page{display:flex;flex-direction:column;gap:1.5rem;padding:2rem;min-height:calc(100vh - 60px);width:100%;max-width:100%;overflow-x:hidden;background-color:var(--color-bg-primary)}.screen-time-empty-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 2rem;background:var(--color-bg-tertiary);border-radius:16px;text-align:center;animation:fadeIn .3s ease-in}.screen-time-empty-selection__icon{font-size:4rem;line-height:1;opacity:.5;animation:bounce 1.5s infinite}.screen-time-empty-selection h3{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin:0}.screen-time-empty-selection p{font-size:1rem;color:var(--color-text-secondary);margin:0;max-width:500px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.screen-time-page h1{margin:0 0 .5rem;font-size:2rem;font-weight:700;color:var(--color-text-primary)}.screen-time-page h2{margin:0 0 1rem;font-size:1.5rem;font-weight:600;color:var(--color-text-primary)}.screen-time-page p{margin:0 0 1rem;color:var(--color-text-secondary)}.screen-time-persons-section{background:var(--color-surface-primary);border-radius:16px;padding:1.5rem;box-shadow:var(--shadow-sm)}.screen-time-persons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.screen-time-person-card{background:var(--color-bg-primary);border:2px solid var(--color-border-primary);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s ease;position:relative}.screen-time-person-card:hover{border-color:var(--color-primary);transform:translateY(-4px);box-shadow:var(--shadow-md)}.screen-time-person-card--selected{border-color:var(--color-primary);background:var(--color-primary-subtle)}.screen-time-person-card__name{font-size:1.1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.screen-time-person-card__status{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--color-text-secondary)}.screen-time-person-card__status--over-limit{color:var(--color-error);font-weight:500}.screen-time-person-card__delete-btn{position:absolute;top:.5rem;right:.5rem;background:transparent;border:none;color:var(--color-text-tertiary);cursor:pointer;padding:.25rem;border-radius:4px;opacity:0;transition:opacity .2s ease}.screen-time-person-card:hover .screen-time-person-card__delete-btn{opacity:1}.screen-time-person-card__delete-btn:hover{color:var(--color-error);background:var(--color-error-subtle)}.screen-time-person-card--add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:var(--color-bg-tertiary);border-style:dashed;min-height:140px;color:var(--color-text-secondary)}.screen-time-person-card--add:hover{border-color:var(--color-primary);color:var(--color-primary)}.screen-time-person-card--add__icon{width:2rem;height:2rem;color:inherit}.screen-time-types-manager__add-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:var(--color-bg-tertiary);border:2px dashed var(--color-border-primary);border-radius:12px;padding:1.25rem;min-height:100px;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease;width:100%}.screen-time-types-manager__add-btn:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}.screen-time-types-manager__add-btn__icon{width:2rem;height:2rem;color:inherit}.screen-time-types-manager__add-btn__text{font-weight:600;font-size:.95rem}.screen-time-types-manager__types-form-card{background:var(--color-bg-primary);border:2px solid var(--color-primary);border-radius:12px;padding:1.25rem;animation:highlight .3s ease}.screen-time-types-manager__form-title{font-size:1.1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:1rem;text-align:center}.screen-time-person-card--form{display:flex;flex-direction:column;justify-content:center;background:var(--color-bg-primary);border-color:var(--color-primary);border-style:solid;min-height:160px;animation:highlight .3s ease}.screen-time-person-card--add__form{display:flex;flex-direction:column;gap:.75rem;width:100%}.screen-time-person-card--add__input{width:100%;padding:.75rem 1rem;border:2px solid var(--color-border-primary);border-radius:8px;background:var(--color-bg-tertiary);color:var(--color-text-primary);font-size:1rem;text-align:center;transition:all .2s ease}.screen-time-person-card--add__input:focus{outline:none;border-color:var(--color-primary);background:var(--color-bg-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.screen-time-person-card--add__actions{display:flex;gap:.5rem;justify-content:center}.screen-time-person-card--add__cancel-btn,.screen-time-person-card--add__submit-btn{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border:2px solid var(--color-border-primary);border-radius:8px;font-size:1.25rem;cursor:pointer;transition:all .2s ease}.screen-time-person-card--add__cancel-btn{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.screen-time-person-card--add__cancel-btn:hover:not(:disabled){background:var(--color-error-subtle);color:var(--color-error);border-color:var(--color-error)}.screen-time-person-card--add__submit-btn{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.screen-time-person-card--add__submit-btn:hover:not(:disabled){background:var(--color-primary-hover);transform:scale(1.1)}.screen-time-person-card--add__submit-btn:disabled{background:var(--color-text-tertiary);border-color:var(--color-text-tertiary);cursor:not-allowed;opacity:.5}.screen-time-heatmap-section{background:var(--color-surface-primary);border-radius:16px;padding:1.5rem;box-shadow:var(--shadow-sm)}.screen-time-heatmap-week{margin-bottom:1.5rem}.screen-time-heatmap-week:last-child{margin-bottom:0}.screen-time-heatmap-week-label{font-size:.85rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.screen-time-heatmap-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.75rem}.screen-time-heatmap-day{display:flex;flex-direction:column;align-items:center;gap:.5rem}.screen-time-heatmap-day-label{font-size:.75rem;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase}.screen-time-heatmap-day-visual{width:2.75rem;height:2.75rem;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;transition:all .2s ease;cursor:default;box-shadow:var(--shadow-sm)}.screen-time-heatmap__day-visual--none{background:var(--color-bg-tertiary);color:var(--color-text-tertiary)}.screen-time-heatmap__day-visual--under-limit{background:var(--color-success-subtle);color:var(--color-success)}.screen-time-heatmap__day-visual--over-limit{background:var(--color-error);color:#fff;animation:pulse 2s infinite;box-shadow:0 0 0 4px var(--color-error-subtle)}.screen-time-heatmap-day-visual--loading{background:var(--color-bg-tertiary);animation:loading-pulse 1.5s infinite}.screen-time-heatmap-day-visual--today{box-shadow:var(--shadow-sm),0 0 0 3px var(--color-primary),0 0 0 6px var(--color-primary-subtle);animation:today-pulse 2s ease-in-out infinite}.screen-time-heatmap__day-visual--over-limit.screen-time-heatmap-day-visual--today{background:var(--color-error);color:#fff;box-shadow:var(--shadow-sm),0 0 0 3px var(--color-primary),0 0 0 6px var(--color-primary-subtle);animation:today-pulse 2s ease-in-out infinite}.screen-time-heatmap__day-visual--under-limit.screen-time-heatmap-day-visual--today{background:var(--color-success-subtle);color:var(--color-success);box-shadow:var(--shadow-sm),0 0 0 3px var(--color-primary),0 0 0 6px var(--color-primary-subtle);animation:today-pulse 2s ease-in-out infinite}.screen-time-heatmap__day-visual--none.screen-time-heatmap-day-visual--today{background:var(--color-bg-tertiary);color:var(--color-text-tertiary);box-shadow:var(--shadow-sm),0 0 0 3px var(--color-primary),0 0 0 6px var(--color-primary-subtle);animation:today-pulse 2s ease-in-out infinite}.screen-time-heatmap-day-label--today{color:var(--color-primary);font-weight:800;font-size:.85rem;text-decoration:underline;text-underline-offset:2px}@keyframes today-pulse{0%,to{box-shadow:var(--shadow-sm),0 0 0 3px var(--color-primary),0 0 0 6px var(--color-primary-subtle)}50%{box-shadow:var(--shadow-sm),0 0 0 4px var(--color-primary),0 0 0 9px var(--color-primary-subtle)}}.screen-time-heatmap-day-info{font-size:.8rem;color:var(--color-text-secondary);text-align:center;font-weight:500}.screen-time-heatmap-day-tooltip{position:fixed;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:8px;padding:.75rem 1rem;font-size:.85rem;box-shadow:var(--shadow-lg);z-index:10000;pointer-events:none;white-space:nowrap;transform:translate(-50%,-100%)}.screen-time-heatmap-day-tooltip__date{font-weight:600;color:var(--color-text-primary);margin-bottom:.25rem}.screen-time-heatmap-day-tooltip__time,.screen-time-heatmap-day-tooltip__limit{color:var(--color-text-secondary)}.screen-time-heatmap-day-tooltip__over{color:var(--color-error);font-weight:600}@keyframes pulse{0%,to{box-shadow:0 0 0 4px var(--color-error-subtle)}50%{box-shadow:0 0 0 8px transparent}}@keyframes loading-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes highlight{0%{transform:scale(.95);opacity:.7}to{transform:scale(1);opacity:1}}.screen-time-config-section{background:var(--color-surface-primary);border-radius:16px;padding:1.5rem;box-shadow:var(--shadow-sm)}.screen-time-config__columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.screen-time-types-manager,.screen-time-limits-config{background:var(--color-bg-primary);border-radius:12px;padding:1.25rem;border:1px solid var(--color-border-primary)}.screen-time-types-manager__header,.screen-time-limits-config__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border-secondary)}.screen-time-types-manager__title,.screen-time-limits-config__title{font-size:1.1rem;font-weight:600;color:var(--color-text-primary)}.screen-time-types-manager__types-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.screen-time-types-manager__type-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--color-bg-tertiary);border-radius:8px;font-size:.9rem;font-weight:500;color:var(--color-text-primary)}.screen-time-types-manager__type-item:hover{background:var(--color-surface-secondary);border:1px solid var(--color-border-primary);box-shadow:var(--shadow-sm)}.screen-time-types-manager__type-actions{display:flex;gap:.25rem;margin-left:auto}.screen-time-types-manager__type-edit{width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border-primary);border-radius:6px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:.9rem;cursor:pointer;transition:all .2s ease}.screen-time-types-manager__type-edit:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:scale(1.1)}.screen-time-types-manager__type-icon{font-size:1.1rem;line-height:1;flex-shrink:0}.screen-time-types-manager__type-color{width:.875rem;height:.875rem;border-radius:50%;flex-shrink:0}.screen-time-types-manager__icon-input{width:100%;padding:.6rem .75rem;border:1px solid var(--color-border-primary);border-radius:6px;background:var(--color-bg-tertiary);color:var(--color-text-primary);font-size:.95rem}.screen-time-types-manager__icon-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle);background:var(--color-bg-primary)}.screen-time-types-manager__emoji-picker{display:flex;flex-wrap:wrap;gap:.25rem}.screen-time-types-manager__emoji-picker--hidden{display:none}.screen-time-types-manager__emoji-btn{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;font-size:1.1rem;border:1px solid var(--color-border-primary);border-radius:6px;background:var(--color-bg-tertiary);cursor:pointer;transition:all .2s ease}.screen-time-types-manager__emoji-btn:hover{background:var(--color-bg-primary);border-color:var(--color-primary);transform:scale(1.1)}.screen-time-types-manager__emoji-btn:active{transform:scale(.95)}.screen-time-limits-config__edit-btn{padding:.6rem 1rem;background:var(--color-bg-tertiary);border:1px dashed var(--color-border-primary);border-radius:6px;color:var(--color-text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.screen-time-limits-config__edit-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-subtle)}.screen-time-types-manager__add-type-form{width:100%;animation:slideDown .2s ease}.screen-time-types-manager__form{width:100%}.screen-time-types-manager__form-inputs{display:flex;flex-direction:column;gap:.75rem;padding:.75rem}.screen-time-types-manager__name-input{width:100%;padding:.6rem .75rem;border:1px solid var(--color-border-primary);border-radius:6px;background:var(--color-bg-tertiary);color:var(--color-text-primary);font-size:.95rem}.screen-time-types-manager__name-input:focus{outline:none;border-color:var(--color-primary);background:var(--color-bg-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.screen-time-types-manager__color-picker{display:flex;gap:.5rem;flex-wrap:wrap}.color-palette__color{width:1.5rem;height:1.5rem;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .2s ease}.color-palette__color:hover{transform:scale(1.15);box-shadow:var(--shadow-md)}.color-palette__color--selected{border-color:var(--color-text-primary);box-shadow:0 0 0 2px var(--color-bg-primary),0 0 0 4px var(--color-primary)}.screen-time-types-manager__form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.25rem}.screen-time-types-manager__cancel-btn,.screen-time-types-manager__submit-btn{width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;border:2px solid var(--color-border-primary);border-radius:6px;font-size:1.1rem;cursor:pointer;transition:all .2s ease}.screen-time-types-manager__cancel-btn{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.screen-time-types-manager__cancel-btn:hover:not(:disabled){background:var(--color-error-subtle);color:var(--color-error);border-color:var(--color-error)}.screen-time-types-manager__submit-btn{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.screen-time-types-manager__submit-btn:hover:not(:disabled){background:var(--color-primary-hover);transform:scale(1.1)}.screen-time-types-manager__submit-btn:disabled{background:var(--color-text-tertiary);border-color:var(--color-text-tertiary);cursor:not-allowed;opacity:.5}.screen-time-types-manager__type-delete{background:transparent;border:none;color:var(--color-text-tertiary);cursor:pointer;padding:.25rem .5rem;border-radius:4px;font-size:1.25rem;line-height:1;opacity:.6;transition:all .2s ease}.screen-time-types-manager__type-item:hover .screen-time-types-manager__type-delete{opacity:1}.screen-time-types-manager__type-delete:hover{color:var(--color-error);background:var(--color-error-subtle)}.screen-time-limits-config-inline{display:flex;flex-direction:column;gap:.75rem}.screen-time-limits-config-inline__rows{display:flex;flex-direction:column;gap:.5rem}.screen-time-limits-config-inline__row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;background:var(--color-bg-tertiary);border-radius:8px;transition:all .2s ease}.screen-time-limits-config-inline__row--today{background:var(--color-primary-subtle);border:2px solid var(--color-primary)}.screen-time-limits-config-inline__day-name{font-weight:600;color:var(--color-text-primary);min-width:100px;font-size:.95rem}.screen-time-limits-config-inline__inputs{display:flex;align-items:center;gap:.5rem}.screen-time-limits-config-inline__input{width:60px;padding:.5rem;border:1px solid var(--color-border-primary);border-radius:6px;background:var(--color-bg-primary);color:var(--color-text-primary);font-size:.95rem;font-weight:600;text-align:center;transition:all .2s ease}.screen-time-limits-config-inline__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.screen-time-limits-config-inline__separator{color:var(--color-text-secondary);font-weight:500;font-size:.85rem}.screen-time-limits-config-inline__save-btn{width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:var(--color-primary);color:#fff;font-size:1rem;cursor:pointer;transition:all .2s ease;min-width:2.25rem}.screen-time-limits-config-inline__save-btn:hover:not(:disabled){background:var(--color-primary-hover);transform:scale(1.1)}.screen-time-limits-config-inline__save-btn:disabled{background:var(--color-text-tertiary);cursor:not-allowed;opacity:.5}.screen-time-limits-config-inline__save-indicator{font-size:1rem;animation:pulse 1.5s infinite;opacity:.6}.screen-time-limits-config__placeholder{font-size:.9rem;color:var(--color-text-secondary);line-height:1.5;padding:1rem;text-align:center;background:var(--color-bg-tertiary);border-radius:8px}.screen-time-limits-config__weekly-total{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;margin-bottom:1rem;background:var(--color-primary-subtle);border:1px solid var(--color-primary);border-radius:8px}.screen-time-limits-config__weekly-total-label{font-size:.9rem;font-weight:600;color:var(--color-text-secondary)}.screen-time-limits-config__weekly-total-value{font-size:1.25rem;font-weight:700;color:var(--color-primary)}#screen-time-entries-section{background:var(--color-surface-primary);border-radius:16px;padding:1.5rem;box-shadow:var(--shadow-sm)}#screen-time-entries-section h2{margin:0 0 1rem;font-size:1.5rem;font-weight:600;color:var(--color-text-primary)}#screen-time-entries__list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;max-height:300px;overflow-x:hidden;overflow-y:auto}#screen-time-entries__list--empty{text-align:center;padding:2rem;color:var(--color-text-secondary);font-style:italic;background:var(--color-bg-tertiary);border-radius:8px}.screen-time-entries__item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:8px;transition:all .2s ease}.screen-time-entries__item:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary)}.screen-time-entries__item__type-badge{padding:.375rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600;color:#fff;min-width:80px;text-align:center;display:flex;align-items:center;justify-content:center;gap:.375rem}.screen-time-entries__item__type-icon{font-size:1rem;line-height:1}.screen-time-entries__item__time{font-size:1.1rem;font-weight:700;color:var(--color-text-primary);min-width:80px}.screen-time-entries__item__notes{flex:1;font-size:.9rem;color:var(--color-text-secondary);font-style:italic}.screen-time-entries__item__delete-btn{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border-primary);border-radius:6px;background:var(--color-bg-tertiary);color:var(--color-text-tertiary);font-size:1.25rem;cursor:pointer;transition:all .2s ease;line-height:1;margin-left:auto}.screen-time-entries__item__delete-btn:hover{background:var(--color-error-subtle);color:var(--color-error);border-color:var(--color-error)}#screen-time-entries__add-form{background:var(--color-bg-primary);border:2px solid var(--color-border-primary);border-radius:12px;padding:1.5rem}#screen-time-entries__add-form__title{font-size:1.1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:1rem}#screen-time-entries__add-form__field{display:flex;flex-direction:column;gap:.375rem}#screen-time-entries__add-form__field label{font-size:.85rem;font-weight:600;color:var(--color-text-secondary)}#screen-time-entries__add-form__field input,#screen-time-entries__add-form__field select{padding:.6rem .75rem;border:1px solid var(--color-border-primary);border-radius:6px;background:var(--color-bg-tertiary);color:var(--color-text-primary);font-size:.95rem;transition:all .2s ease}#screen-time-entries__add-form__field input:focus,#screen-time-entries__add-form__field select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle);background:var(--color-bg-primary)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}#screen-time-entries__add-form__time-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;margin-bottom:.75rem}.screen-time-entries__add-form__field--type,.screen-time-entries__add-form__field--type label{margin-bottom:.75rem}.screen-time-type-picker{display:flex;gap:.5rem;overflow-x:auto;padding:.5rem;background:var(--color-bg-tertiary);border-radius:8px;scrollbar-width:thin;scrollbar-color:var(--color-primary) var(--color-bg-tertiary)}.screen-time-type-picker::-webkit-scrollbar{height:6px}.screen-time-type-picker::-webkit-scrollbar-track{background:var(--color-bg-tertiary);border-radius:3px}.screen-time-type-picker::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:3px}.screen-time-type-picker::-webkit-scrollbar-thumb:hover{background:var(--color-primary-hover)}.screen-time-type-picker__item{display:flex;align-items:center;gap:.375rem;padding:.625rem .875rem;border:2px solid transparent;border-radius:8px;background:var(--color-bg-primary);font-size:.9rem;font-weight:600;color:var(--color-text-primary);cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0;position:relative;transform:scale(.92);opacity:.85}.screen-time-type-picker__item:hover{transform:scale(.96);box-shadow:var(--shadow-sm)}.screen-time-type-picker__item:hover .screen-time-type-picker__item-icon{transform:scale(1.1)}.screen-time-type-picker__item--selected{color:#fff!important;box-shadow:0 4px 12px #00000026;transform:scale(1.02);opacity:1}.screen-time-type-picker__item--selected:after{content:"✓";position:absolute;top:2px;right:4px;font-size:.6rem;font-weight:700;opacity:.7}.screen-time-type-picker__item-icon{font-size:1.1rem;line-height:1;transition:transform .2s ease}.screen-time-type-picker__item-name{font-weight:600}.screen-time-type-picker:empty:before{content:"Aucun type d'écran disponible. Créez-en un d'abord !";display:block;padding:1rem;text-align:center;color:var(--color-text-secondary);font-style:italic;font-size:.85rem}#screen-time-entries__add-form__add-btn{width:100%;padding:.875rem 1.5rem;background:var(--color-primary);color:#fff;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-top:1rem}#screen-time-entries__add-form__add-btn:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}#screen-time-entries__add-form__add-btn:disabled{background:var(--color-text-tertiary);cursor:not-allowed;opacity:.5}#screen-time-entries__total{margin-top:1.5rem;padding:1.25rem;background:var(--color-bg-tertiary);border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:1rem}#screen-time-entries__total__label{font-size:1rem;font-weight:600;color:var(--color-text-secondary)}.screen-time-entries__total__value{font-size:1.5rem;font-weight:700;padding:.5rem 1rem;border-radius:6px;background:var(--color-success-subtle);color:var(--color-success)}.screen-time-entries__total__value--no-limit{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.screen-time-entries__total__value--over-limit{background:var(--color-error-subtle);color:var(--color-error);animation:pulse 2s infinite}.screen-time-btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem}.screen-time-btn--primary{background:var(--color-primary);color:#fff}.screen-time-btn--primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.screen-time-btn--primary:disabled{background:var(--color-text-tertiary);cursor:not-allowed;opacity:.5}.screen-time-btn--secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.screen-time-btn--secondary:hover{background:var(--color-border-primary)}@media(max-width:768px){.screen-time-page{padding:1rem}.screen-time-page h1{font-size:1.5rem}.screen-time-page h2{font-size:1.25rem}.screen-time-persons-grid{grid-template-columns:1fr;gap:.75rem}.screen-time-person-card{min-height:100px}.screen-time-heatmap-day-visual{width:2.25rem;height:2.25rem;font-size:.65rem}.screen-time-heatmap-days{gap:.5rem}.screen-time-config__columns{grid-template-columns:1fr}.screen-time-limits-config-inline__row{flex-direction:column;align-items:stretch;gap:.5rem;padding:1rem}.screen-time-limits-config-inline__day-name{min-width:auto;text-align:left}.screen-time-limits-config-inline__inputs{justify-content:space-between;flex-wrap:wrap;width:100%}.screen-time-limits-config-inline__input{flex:1;min-width:60px;max-width:80px}.screen-time-limits-config-inline__separator{flex-shrink:0}.screen-time-limits-config__weekly-total{flex-direction:column;text-align:center;gap:.5rem}#screen-time-entries__add-form__time-row{grid-template-columns:1fr;gap:.5rem}#screen-time-entries__total{flex-direction:column;text-align:center}.screen-time-entries__item{flex-wrap:wrap;padding:.75rem .875rem;gap:.5rem .75rem}.screen-time-entries__item__type-badge{min-width:auto;padding:.375rem .5rem;font-size:.8rem}.screen-time-entries__item__time{font-size:1rem;min-width:auto}.screen-time-entries__item__notes{font-size:.85rem;width:100%;flex-basis:100%;line-height:1.3}.screen-time-entries__item__delete-btn{width:1.75rem;height:1.75rem;font-size:1.1rem}.screen-time-types-manager__types-list{flex-direction:column}.screen-time-types-manager__type-item{justify-content:space-between}.color-palette__color{width:1.25rem;height:1.25rem}.screen-time-type-picker{flex-direction:column;gap:.375rem;padding:.375rem;overflow-x:visible}.screen-time-type-picker__item{padding:.625rem .75rem;font-size:.85rem;gap:.375rem;justify-content:center}.screen-time-type-picker__item-icon{font-size:1rem}}@media(max-width:480px){.screen-time-page{padding:.75rem}.screen-time-person-card{padding:1rem}.screen-time-heatmap-day-visual{width:2rem;height:2rem;font-size:.6rem}.screen-time-limits-config-inline__input{max-width:60px;font-size:.85rem}#screen-time-entries__add-form__add-btn{font-size:.95rem}.screen-time-entries__total__value{font-size:1.25rem}.screen-time-type-picker{gap:.3125rem;padding:.3125rem}.screen-time-type-picker__item{padding:.5625rem .6875rem;font-size:.8rem}}.screen-time-persons-section,.screen-time-heatmap-section,.screen-time-config-section,.screen-time-limits-config,.screen-time-types-manager,.screen-time-limits-config-inline,.screen-time-limits-config-inline__rows,#screen-time-entries-section,#screen-time-entries__list,#screen-time-entries__add-form,#screen-time-entries__total{max-width:100%;overflow-x:hidden;width:100%}.screen-time-limits-config-inline__inputs,#screen-time-entries__add-form__time-row,.screen-time-types-manager__form-inputs{width:100%;max-width:100%;overflow-x:hidden}.settings-page{padding:24px}.settings-container{max-width:900px;margin:0 auto}.settings-page-header{text-align:center;margin-bottom:48px}.settings-page-title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.settings-section{margin-bottom:32px}.settings-section-header{margin-bottom:16px}.settings-section-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:12px;margin:0}.settings-card{background:var(--color-surface-primary);border-radius:12px;padding:24px;box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1));margin-top:24px}.settings-theme-card{border:2px solid var(--color-border-primary)}.settings-current-theme{display:flex;align-items:center;gap:12px;padding-bottom:16px;margin-bottom:24px;border-bottom:1px solid var(--color-border-primary)}.settings-current-theme-label{font-size:.875rem;color:var(--color-text-secondary)}.settings-current-theme-value{font-weight:600;padding:4px 12px;border-radius:9999px;font-size:.875rem}.settings-theme-value-auto{background:var(--color-primary-subtle);color:var(--color-primary)}.settings-theme-value-light{background:#fef3c7;color:#d97706}.settings-theme-value-dark{background:#1e293b80;color:#94a3b8}.settings-theme-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.settings-theme-button{display:flex;flex-direction:column;align-items:center;padding:24px;border:2px solid var(--color-border-primary);border-radius:12px;background:var(--color-surface-primary);cursor:pointer;transition:all .2s ease;text-align:center}.settings-theme-button:hover{border-color:var(--color-primary);background:var(--color-primary-subtle)}.settings-theme-button:disabled{opacity:.5;cursor:not-allowed}.settings-theme-button-active{border-color:var(--color-primary)!important;background:var(--color-primary-subtle)!important}.settings-theme-button-icon{width:48px;height:48px;margin-bottom:12px;color:var(--color-text-primary)}.settings-theme-button-active .settings-theme-button-icon{color:var(--color-primary)}.settings-theme-button-label{font-weight:600;font-size:1rem;color:var(--color-text-primary);margin-bottom:4px}.settings-theme-button-description{font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.settings-message{margin-top:16px;padding:12px 16px;border-radius:8px;font-size:.875rem;text-align:center}.settings-message-success{background:var(--color-success-subtle);color:var(--color-success)}.settings-message-error{background:var(--color-error-subtle);color:var(--color-error)}@media(max-width:768px){.settings-page{padding:16px}.settings-page-title{font-size:1.5rem}.settings-theme-options{grid-template-columns:1fr}}.settings-logout-card{border:2px solid rgba(220,38,38,.3)}.settings-logout-content{display:flex;flex-direction:column;gap:16px}.settings-logout-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.settings-logout-description{margin:0;font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5}.settings-logout-button{align-self:flex-start;padding:12px 24px;background:var(--color-error);color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .1s ease;box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .1))}.settings-logout-button:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15))}.settings-logout-button:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .1))}.settings-logout-button:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes blink-alert{0%{background-color:var(--color-surface-primary, #ffffff);border-color:var(--color-error, #fa5252)}50%{background-color:var(--color-error-subtle, rgba(250, 82, 82, .15));border-color:#d6336c}to{background-color:var(--color-surface-primary, #ffffff);border-color:var(--color-error, #fa5252)}}.dashboard-alerts-tile{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:400px;background-color:var(--color-surface-primary, #ffffff);border:2px solid var(--color-warning, #fab005);border-radius:12px;padding:1.25rem;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .08));transition:box-shadow .2s ease,border-color .2s ease,background-color .2s ease,transform .2s ease;text-decoration:none;color:inherit;cursor:pointer}.dashboard-alerts-tile:not(.dashboard-alerts-tile-blinking):hover{box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1));transform:translateY(-2px);border-color:var(--color-warning-hover, #fcc419)}.dashboard-alerts-tile-blinking{background-color:var(--color-surface-primary, #ffffff);border-color:var(--color-error, #fa5252);border-width:2px;animation:blink-alert 1.5s ease-in-out infinite}.dashboard-alerts-tile-blinking:hover{border-color:#d6336c}.dashboard-alerts-tile-header{display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--color-border-secondary, #e9ecef);padding-bottom:.75rem}.dashboard-alerts-tile-icon{width:24px;height:24px;font-size:20px;line-height:1;flex-shrink:0}.dashboard-alerts-tile-title{font-size:1rem;font-weight:600;color:var(--color-text-primary, #212529);margin:0;line-height:1.2}.dashboard-alerts-tile-content{display:flex;flex-direction:column;gap:.75rem}.dashboard-alerts-tile-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:var(--color-bg-tertiary, #e9ecef);border-radius:8px}.dashboard-alerts-tile-item-icon{font-size:1.125rem;flex-shrink:0}.dashboard-alerts-tile-item-text{color:var(--color-text-primary, #212529);font-weight:500;font-size:.875rem;flex:1}.dashboard-alerts-tile-hint{text-align:center;color:var(--color-text-tertiary, #868e96);font-size:.8rem;font-style:italic;padding-top:.5rem}.theme-dark .dashboard-alerts-tile{border-color:var(--color-warning, #d29922);background-color:var(--color-surface-primary, #161b22)}.theme-dark .dashboard-alerts-tile-blinking{background-color:var(--color-surface-primary, #161b22);border-color:var(--color-error, #f85149)}.theme-dark .dashboard-alerts-tile-header{border-color:var(--color-border-secondary, #21262d)}.theme-dark .dashboard-alerts-tile-title{color:var(--color-text-primary, #e6edf3)}.theme-dark .dashboard-alerts-tile-item{background-color:var(--color-bg-tertiary, #21262d)}.theme-dark .dashboard-alerts-tile:hover:not(.dashboard-alerts-tile-blinking){border-color:var(--color-warning, #fcc419)}.theme-dark .dashboard-alerts-tile-item-text{color:var(--color-text-primary, #e6edf3)}.theme-dark .dashboard-alerts-tile-hint{color:var(--color-text-tertiary, #6e7681)}@media(max-width:480px){.dashboard-alerts-tile{padding:1rem;max-width:100%}.dashboard-alerts-tile-title{font-size:.95rem}.dashboard-alerts-tile-item{padding:.625rem}.dashboard-alerts-tile-item-text{font-size:.85rem}.dashboard-alerts-tile-hint{font-size:.75rem}}@media(prefers-contrast:high){.dashboard-alerts-tile,.dashboard-alerts-tile-blinking{border-width:2px}}@media(prefers-reduced-motion:reduce){.dashboard-alerts-tile,.dashboard-alerts-tile:hover,.dashboard-alerts-tile-blinking{transition:none;animation:none;transform:none}.dashboard-alerts-tile:focus-within{transform:none}}.dashboard-alerts-tile:focus{outline:2px solid var(--color-border-focus, #339af0);outline-offset:2px}.dashboard-task-alerts{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:400px;background-color:var(--color-surface-primary, #ffffff);border:2px solid var(--color-warning, #fab005);border-radius:12px;padding:1.25rem;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .08));transition:box-shadow .2s ease,border-color .2s ease,background-color .2s ease}.dashboard-task-alerts:hover{box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1))}.dashboard-stats-alert-item{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:var(--color-bg-tertiary, #e9ecef);border-radius:8px;font-size:.875rem;transition:background-color .2s ease}.dashboard-stats-alert-item:hover{background-color:var(--color-bg-secondary, #f1f3f5)}.dashboard-stats-alert-item-title{color:var(--color-text-primary, #212529);font-weight:500;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-stats-alert-item-date{color:var(--color-text-secondary, #495057);font-size:.75rem;white-space:nowrap}.dashboard-stats-alert-item-overflow{justify-content:center;color:var(--color-text-tertiary, #868e96);font-style:italic;font-size:.8rem}.theme-dark .dashboard-task-alerts{border-color:var(--color-warning, #d29922);background-color:var(--color-surface-primary, #161b22)}.theme-dark .dashboard-stats-alert-item{background-color:var(--color-bg-tertiary, #21262d)}.theme-dark .dashboard-stats-alert-item:hover{background-color:var(--color-bg-secondary, #30363d)}.theme-dark .dashboard-stats-alert-item-title{color:var(--color-text-primary, #e6edf3)}.theme-dark .dashboard-stats-alert-item-date{color:var(--color-text-secondary, #8b949e)}.theme-dark .dashboard-stats-alert-item-overflow{color:var(--color-text-tertiary, #6e7681)}@media(max-width:480px){.dashboard-task-alerts{padding:1rem;max-width:100%}.dashboard-stats-alert-title{font-size:.95rem}.dashboard-stats-alert-item{padding:.625rem .875rem}}@media(prefers-contrast:high){.dashboard-task-alerts{border-width:2px}}@media(prefers-reduced-motion:reduce){.dashboard-task-alerts,.dashboard-task-alerts:hover{transition:none}}@keyframes blink-error{0%{background-color:var(--color-surface-primary, #ffffff);border-color:var(--color-error, #fa5252)}50%{background-color:var(--color-error-subtle, rgba(250, 82, 82, .15));border-color:#d6336c}to{background-color:var(--color-surface-primary, #ffffff);border-color:var(--color-error, #fa5252)}}.dashboard-okm-alerts{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:400px;background-color:var(--color-surface-primary, #ffffff);border:2px solid var(--color-warning, #fab005);border-radius:12px;padding:1.25rem;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .08));transition:box-shadow .2s ease,border-color .2s ease,background-color .2s ease}.dashboard-okm-alerts:not(.dashboard-okm-alerts-blinking):hover{box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1))}.dashboard-okm-alerts-blinking{background-color:var(--color-surface-primary, #ffffff);border-color:var(--color-error, #fa5252);border-width:2px;animation:blink-error 1.5s ease-in-out infinite}.dashboard-stats-alert-header{display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--color-border-secondary, #e9ecef);padding-bottom:.75rem}.dashboard-stats-alert-icon{width:24px;height:24px;font-size:20px;line-height:1;flex-shrink:0}.dashboard-stats-alert-title{font-size:1rem;font-weight:600;color:var(--color-text-primary, #212529);margin:0;line-height:1.2}.dashboard-stats-alert-message{margin:0;padding:0;font-size:.875rem;color:var(--color-text-secondary, #495057);line-height:1.5}.dashboard-stats-alert-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.dashboard-stats-alert-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:#fa52521a;border-radius:8px;border-left:3px solid var(--color-error, #fa5252);font-size:.875rem;font-weight:500;transition:background-color .2s ease}.dashboard-stats-alert-item:hover{background-color:#fa525226}.dashboard-stats-alert-item-name{color:var(--color-text-primary, #212529);font-weight:500;flex:1}.theme-dark .dashboard-okm-alerts{border-color:var(--color-warning, #d29922);background-color:var(--color-surface-primary, #161b22)}.theme-dark .dashboard-okm-alerts-blinking{background-color:var(--color-surface-primary, #161b22);border-color:var(--color-error, #f85149)}.theme-dark .dashboard-stats-alert-header{border-color:var(--color-border-secondary, #21262d)}.theme-dark .dashboard-stats-alert-title{color:var(--color-text-primary, #e6edf3)}.theme-dark .dashboard-stats-alert-message{color:var(--color-text-secondary, #b1bac4)}.theme-dark .dashboard-stats-alert-item{background-color:#f8514933;border-left-color:var(--color-error, #f85149)}.theme-dark .dashboard-stats-alert-item:hover{background-color:#f8514940}.theme-dark .dashboard-stats-alert-item-name{color:var(--color-text-primary, #e6edf3)}@media(max-width:480px){.dashboard-okm-alerts{padding:1rem;max-width:100%}.dashboard-stats-alert-title{font-size:.95rem}.dashboard-stats-alert-message{font-size:.85rem}.dashboard-stats-alert-item{padding:.625rem .875rem;font-size:.85rem}}@media(prefers-contrast:high){.dashboard-okm-alerts,.dashboard-okm-alerts-blinking{border-width:2px}.dashboard-stats-alert-item{border-left-width:4px}}@media(prefers-reduced-motion:reduce){.dashboard-okm-alerts,.dashboard-okm-alerts:hover,.dashboard-okm-alerts-blinking{transition:none;animation:none}.dashboard-stats-alert-item:focus-within{background-color:#fa525226}}.toast-container{position:fixed;pointer-events:none;z-index:var(--z-toast, 10000);display:flex;flex-direction:column;gap:var(--spacing-sm, 8px);max-width:400px;width:100%}.toast-container.position-top-left{top:calc(80px + var(--spacing-md, 16px));left:var(--spacing-md, 16px);align-items:flex-start}.toast-container.position-top-center{top:calc(80px + var(--spacing-md, 16px));left:50%;transform:translate(-50%);align-items:center}.toast-container.position-top-right{top:calc(80px + var(--spacing-md, 16px));right:var(--spacing-md, 16px);align-items:flex-end}.toast-container.position-bottom-left{bottom:var(--spacing-md, 16px);left:var(--spacing-md, 16px);align-items:flex-start}.toast-container.position-bottom-center{bottom:var(--spacing-md, 16px);left:50%;transform:translate(-50%);align-items:center}.toast-container.position-bottom-right{bottom:var(--spacing-md, 16px);right:var(--spacing-md, 16px);align-items:flex-end}.toast{pointer-events:auto;background:#ffffffd9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(225,229,233,.6);border-radius:var(--border-radius-md, 8px);box-shadow:0 10px 25px -5px #00000026,0 8px 10px -6px #00000026;padding:var(--spacing-md, 16px);min-width:300px;max-width:400px;display:flex;align-items:flex-start;gap:var(--spacing-sm, 8px);opacity:0;transform:translateY(-20px) scale(.95);transition:all .3s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.toast.toast-entering{opacity:1;transform:translateY(0) scale(1)}.toast.toast-leaving{opacity:0;transform:translateY(20px) scale(.95)}.toast.toast:focus-visible{outline:2px solid var(--color-primary, #3b82f6);outline-offset:2px}.toast-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-top:2px}.toast-icon svg{width:16px;height:16px;fill:currentColor}.toast-content{flex:1;min-width:0}.toast-title{font-weight:600;font-size:var(--font-size-sm, 14px);line-height:1.4;margin:0 0 var(--spacing-xs, 4px) 0;color:var(--text-primary, #111827);word-break:break-word}.toast-message{font-size:var(--font-size-sm, 14px);line-height:1.5;margin:0;color:var(--text-secondary, #6b7280);word-break:break-word}.toast-actions{display:flex;gap:var(--spacing-xs, 4px);margin-top:var(--spacing-sm, 8px)}.toast-action{font-size:var(--font-size-xs, 12px);font-weight:500;padding:var(--spacing-xs, 4px) var(--spacing-sm, 8px);border-radius:var(--border-radius-sm, 4px);border:none;cursor:pointer;transition:all .15s;background:transparent;text-decoration:underline}.toast-action.btn-primary{color:var(--color-primary, #3b82f6)}.toast-action.btn-primary:hover{background:#dbeafecc}.toast-action.btn-secondary{color:var(--text-secondary, #6b7280)}.toast-action.btn-secondary:hover{background:#f9fafbcc}.toast-close{position:absolute;top:var(--spacing-xs, 4px);right:var(--spacing-xs, 4px);width:24px;height:24px;border:none;background:transparent;cursor:pointer;border-radius:var(--border-radius-sm, 4px);display:flex;align-items:center;justify-content:center;color:var(--text-tertiary, #9ca3af);transition:all .15s;padding:0}.toast-close:hover{background:#f9fafbcc;color:var(--text-secondary, #6b7280)}.toast-close:focus-visible{outline:2px solid var(--color-primary, #3b82f6);outline-offset:1px}.toast-close svg{width:14px;height:14px;fill:currentColor}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background:currentColor;opacity:.2;transition:width linear}.toast.toast-success{border-left:4px solid var(--color-success, #10b981)}.toast.toast-success .toast-icon,.toast.toast-success .toast-progress{color:var(--color-success, #10b981)}.toast.toast-error{border-left:4px solid var(--color-error, #ef4444)}.toast.toast-error .toast-icon,.toast.toast-error .toast-progress{color:var(--color-error, #ef4444)}.toast.toast-warning{border-left:4px solid var(--color-warning, #f59e0b)}.toast.toast-warning .toast-icon,.toast.toast-warning .toast-progress{color:var(--color-warning, #f59e0b)}.toast.toast-info{border-left:4px solid var(--color-info, #3b82f6)}.toast.toast-info .toast-icon,.toast.toast-info .toast-progress{color:var(--color-info, #3b82f6)}@media(prefers-color-scheme:dark){.toast{background:#1f2937d9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:#37415199}.toast-title{color:#f9fafb}.toast-message{color:#d1d5db}.toast-close{color:#6b7280}.toast-close:hover{background:#374151cc;color:#d1d5db}.toast-action.btn-primary:hover{background:#1e40afcc}.toast-action.btn-secondary:hover{background:#374151cc}}@media(max-width:640px){.toast-container{left:var(--spacing-sm, 8px)!important;right:var(--spacing-sm, 8px)!important;max-width:none;transform:none!important}.toast{min-width:auto;max-width:none}}@media(prefers-contrast:high){.toast{border-width:2px}.toast-close:focus-visible{outline-width:3px}}@media(prefers-reduced-motion:reduce){.toast,.toast-progress{transition:none}}.alert-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-alert, 9999);opacity:0;transition:opacity .2s ease-in-out;padding:var(--spacing-md, 16px)}.alert-overlay.alert-overlay-visible{opacity:1}.alert-modal{background-color:var(--color-bg-surface, #ffffff);border:1px solid var(--color-border-default, #e5e7eb);border-radius:var(--border-radius-md, 8px);box-shadow:0 10px 25px #00000026;max-width:400px;width:100%;max-height:80vh;overflow:hidden;transform:scale(.9) translateY(-20px);transition:transform .2s ease-in-out}.alert-modal.alert-modal-visible{transform:scale(1) translateY(0)}.alert-modal:focus-visible{outline:2px solid var(--color-primary, #3b82f6);outline-offset:2px}.alert-modal.alert-modal-focused{outline:3px solid var(--color-primary, #3b82f6);outline-offset:2px}.alert-container{padding:var(--spacing-lg, 24px)}.alert-title{font-size:18px;font-weight:600;color:var(--text-primary, #111827);margin-bottom:var(--spacing-md, 12px);line-height:1.4}.alert-message{font-size:14px;color:var(--text-secondary, #6b7280);margin-bottom:var(--spacing-lg, 24px);line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.alert-buttons{display:flex;gap:var(--spacing-md, 12px);justify-content:flex-end}.alert-button{padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border:1px solid var(--color-border-default, #e5e7eb);border-radius:var(--border-radius-sm, 6px);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease-in-out;background-color:var(--color-bg-surface, #ffffff);color:var(--text-primary, #111827);min-width:80px;display:inline-flex;align-items:center;justify-content:center}.alert-button:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.alert-button:active{transform:translateY(0)}.alert-button:focus-visible{outline:2px solid var(--color-primary, #3b82f6);outline-offset:2px}.alert-button-autofocused{position:relative}.alert-button-autofocused:before{content:"";position:absolute;inset:-3px;border-radius:var(--border-radius-sm, 8px);border:2px solid var(--color-primary, #3b82f6);pointer-events:none;z-index:-1}.alert-button.variant-secondary{background-color:var(--color-bg-secondary, #f3f4f6);color:var(--text-secondary, #6b7280);border-color:var(--color-border-secondary, #d1d5db)}.alert-button.variant-secondary:hover{background-color:var(--color-bg-secondary-hover, #e5e7eb);border-color:var(--color-border-secondary-hover, #c0c4cc)}.alert-button.variant-primary{background-color:var(--color-primary, #3b82f6);color:#fff;border-color:var(--color-primary, #3b82f6)}.alert-button.variant-primary:hover{background-color:var(--color-primary-hover, #2563eb);border-color:var(--color-primary-hover, #2563eb)}.alert-button.variant-danger{background-color:var(--color-danger, #ef4444);color:#fff;border-color:var(--color-danger, #ef4444)}.alert-button.variant-danger:hover{background-color:var(--color-danger-hover, #dc2626);border-color:var(--color-danger-hover, #dc2626)}.alert-modal-alert-type-info .alert-button.variant-primary{background-color:var(--color-info, #3b82f6);border-color:var(--color-info, #3b82f6)}.alert-modal-alert-type-info .alert-button.variant-primary:hover{background-color:#2563eb;border-color:#2563eb}.alert-modal-alert-type-success .alert-button.variant-primary{background-color:var(--color-success, #10b981);border-color:var(--color-success, #10b981)}.alert-modal-alert-type-success .alert-button.variant-primary:hover{background-color:#059669;border-color:#059669}.alert-modal-alert-type-warning .alert-button.variant-primary{background-color:var(--color-warning, #f59e0b);border-color:var(--color-warning, #f59e0b)}.alert-modal-alert-type-warning .alert-button.variant-primary:hover{background-color:#d97706;border-color:#d97706}.alert-modal-alert-type-error .alert-button.variant-primary{background-color:var(--color-error, #ef4444);border-color:var(--color-error, #ef4444)}.alert-modal-alert-type-error .alert-button.variant-primary:hover{background-color:var(--color-error-hover, #dc2626);border-color:var(--color-error-hover, #dc2626)}@media(prefers-color-scheme:dark){.alert-modal{background-color:var(--color-bg-surface-dark, #1f2937);border-color:var(--color-border-default-dark, #374151)}.alert-title{color:var(--text-primary-dark, #f9fafb)}.alert-message{color:var(--text-secondary-dark, #d1d5db)}.alert-button{background-color:var(--color-bg-surface-dark, #1f2937);color:var(--text-primary-dark, #f9fafb);border-color:var(--color-border-default-dark, #374151)}.alert-button.variant-secondary{background-color:#374151;color:#d1d5db;border-color:#4b5563}.alert-button.variant-secondary:hover{background-color:#4b5563;border-color:#6b7280}.alert-button:hover{box-shadow:0 2px 4px #0000004d}}@media(max-width:480px){.alert-modal{width:95%;margin:var(--spacing-md, 16px)}.alert-container{padding:var(--spacing-md, 20px)}.alert-buttons{flex-direction:column-reverse;gap:var(--spacing-sm, 8px)}.alert-button{width:100%}}@media(prefers-contrast:high){.alert-modal,.alert-button{border-width:2px}.alert-button:focus-visible{outline-width:3px}.alert-button-autofocused:before{border-width:3px}}@media(prefers-color-scheme:dark){.alert-button-autofocused:before{border-color:var(--color-primary, #60a5fa)}}@media(prefers-reduced-motion:reduce){.alert-overlay,.alert-modal,.alert-button{transition:none}.alert-button:hover{transform:none}}.header{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:70px;background-color:var(--color-header-bg, #ffffff);color:var(--color-header-text, #212529);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1));position:sticky;top:0;z-index:1000;transition:box-shadow .3s ease,background-color .3s ease,color .3s ease}.header:hover{box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .12))}.header-logo-section{display:flex;align-items:center}.header-logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit;transition:opacity .2s ease}.header-logo-link:hover{opacity:.85}.header-logo-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0}.header-logo-icon svg{width:24px;height:24px;flex-shrink:0}.header-logo-icon-image{width:80px;height:80px;object-fit:contain;flex-shrink:0}.header-svg-logo{width:100%;height:100%}.header-title{font-size:1.5rem;font-weight:700;letter-spacing:-.5px;display:block}@media(max-width:360px){.header-title{display:none}}.header-nav-desktop{display:flex;align-items:center;gap:.5rem;display:none}@media(min-width:769px){.header-nav-desktop{display:flex}}.header-nav-link{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;text-decoration:none;color:var(--color-header-text-muted, #868e96);font-size:.95rem;font-weight:500;border-radius:8px;transition:all .2s ease,background-color .2s ease,color .2s ease}.header-nav-link:hover{background-color:var(--color-header-hover, rgba(0, 0, 0, .05));color:var(--color-header-text, #212529)}.header-nav-link:focus{outline:2px solid #4a9eff;outline-offset:2px}.header-nav-link:active{background-color:#ffffff26;transform:scale(.98)}.header-nav-link-active{background-color:var(--color-header-active, rgba(0, 0, 0, .12));color:var(--color-header-text, #212529)}.header-nav-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.header-mobile-controls{display:flex;align-items:center;display:none}@media(max-width:768px){.header-mobile-controls{display:flex}}.header-burger-button{appearance:none;background:none;border:none;cursor:pointer;width:44px;height:44px;padding:10px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;border-radius:8px;transition:background-color .2s ease}.header-burger-button:hover{background-color:var(--color-header-hover, rgba(0, 0, 0, .05))}.header-burger-button:focus{outline:2px solid #4a9eff;outline-offset:2px}.header-burger-line{display:block;width:22px;height:2px;background-color:var(--color-header-text, #212529);transition:all .3s ease;transform-origin:center}.header-burger-line-open:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.header-burger-line-open:nth-child(2){opacity:0;transform:scaleX(0)}.header-burger-line-open:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.header-nav-mobile{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:9999;pointer-events:none;visibility:hidden;display:flex;justify-content:flex-end}.header-nav-mobile-open{pointer-events:auto;visibility:visible}.header-mobile-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--color-overlay-bg, rgba(0, 0, 0, .5));opacity:0;transition:opacity .3s ease}.header-nav-mobile-open .header-mobile-overlay{opacity:1}.header-mobile-drawer{position:relative;width:280px;max-width:85vw;height:100%;background-color:var(--color-drawer-bg, #ffffff);box-shadow:var(--shadow-xl, 0 16px 48px rgba(0, 0, 0, .15));transform:translate(100%);transition:transform .3s ease}.header-nav-mobile-open .header-mobile-drawer{transform:translate(0)}.header-mobile-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-header-border, #dee2e6)}.header-mobile-title{font-size:1.1rem;font-weight:600;color:var(--color-header-text, #212529)}.header-mobile-close{appearance:none;background:none;border:none;cursor:pointer;width:40px;height:40px;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:8px;color:var(--color-header-text-muted, #868e96);transition:all .2s ease}.header-mobile-close:hover{background-color:var(--color-header-hover, rgba(0, 0, 0, .05));color:var(--color-header-text, #212529)}.header-mobile-close svg{width:24px;height:24px}.header-mobile-drawer-content{display:flex;flex-direction:column;padding:1rem;gap:.5rem}.header-nav-mobile .header-nav-link{padding:1rem 1.25rem;min-height:48px;border-radius:12px;font-size:1rem}.header-nav-mobile .header-nav-icon{width:22px;height:22px}.header-theme-section{display:flex;align-items:center;margin-left:1rem;display:none}@media(min-width:769px){.header-theme-section{display:flex}}.header-theme-toggle{appearance:none;background:none;border:none;cursor:pointer;width:40px;height:40px;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--color-header-text-muted, #868e96);transition:all .2s ease}.header-theme-toggle:hover{background-color:var(--color-header-hover, rgba(0, 0, 0, .05));color:var(--color-header-text, #212529);transform:scale(1.1)}.header-theme-toggle:focus{outline:2px solid #4a9eff;outline-offset:2px}.header-theme-toggle:active{transform:scale(.95)}.header-theme-icon-container{width:24px;height:24px;display:flex;align-items:center;justify-content:center}.header-theme-icon{width:100%;height:100%;transition:transform .3s ease}.header-theme-toggle-dark:hover .header-theme-icon{transform:rotate(45deg)}.header-theme-toggle-light:hover .header-theme-icon{transform:rotate(-15deg)}.header-mobile-theme-toggle{display:flex;align-items:center;margin-right:.5rem}@media(max-width:768px){.header-mobile-theme-toggle{display:flex}}@media(prefers-contrast:high){.header{border-bottom:2px solid #ffffff}.header-nav-link{border:1px solid transparent}.header-nav-link:focus{border-color:#fff}}@media(prefers-reduced-motion:reduce){.header,.header-burger-line,.header-nav-mobile,.header-mobile-drawer,.header-mobile-overlay{transition:none;animation:none}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center;padding:2rem;z-index:1000;backdrop-filter:blur(2px);animation:modal-overlay-fade-in .2s ease-out}@keyframes modal-overlay-fade-in{0%{opacity:0}to{opacity:1}}.modal-container{background-color:var(--color-surface-primary);border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);display:flex;flex-direction:column;animation:modal-slide-in .3s ease-out}@keyframes modal-slide-in{0%{transform:translateY(-20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border-primary);flex-shrink:0}.modal-title{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0;flex:1}.modal-close-button{background:none;border:none;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%;transition:background-color .2s ease;color:var(--color-text-secondary);padding:0;flex-shrink:0;margin-left:1rem}.modal-close-button:hover{background-color:var(--color-border-secondary);color:var(--color-text-primary)}.modal-close-button:active{transform:scale(.95)}.modal-close-button svg{width:1.25rem;height:1.25rem}.modal-close-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.modal-body{padding:1.5rem;flex:1;overflow-y:auto;min-height:0}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--color-border-primary);flex-shrink:0}.modal-overlay{animation:modal-overlay-fade-in .2s ease-out}.modal-container{animation:modal-slide-in .3s ease-out}@media(max-width:768px){.modal-overlay{padding:0}.modal-container{max-width:100%;max-height:100vh;border-radius:0;animation:modal-slide-in-mobile .3s ease-out}.modal-header{padding:1rem}.modal-title{font-size:1.25rem}.modal-body,.modal-footer{padding:1rem}}@keyframes modal-slide-in-mobile{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-spacer{margin-bottom:1.5rem}.modal-spacer-sm{margin-bottom:1rem}.modal-text-center{text-align:center}.modal-text-muted{color:var(--color-text-secondary)}.admin-unauthorized-page{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:2rem;background-color:var(--background-primary)}.admin-unauthorized-content{max-width:500px;text-align:center;padding:3rem 2rem;background-color:var(--card-background);border-radius:12px;box-shadow:0 4px 12px #0000001a}.admin-unauthorized-title{font-size:2rem;font-weight:700;color:var(--error-color);margin:0 0 1.5rem}.admin-unauthorized-message{font-size:1.125rem;color:var(--text-primary);margin:0 0 .75rem;line-height:1.6}.admin-unauthorized-subtitle{font-size:1rem;color:var(--text-secondary);margin:0}.admin-page{max-width:1200px;margin:0 auto;padding:2rem}.admin-section{margin-top:3rem}.admin-section-title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-border-primary)}.admin-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--color-border-primary)}.admin-page-title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin:0}.admin-page-description{font-size:1rem;color:var(--color-text-secondary);margin-top:.5rem}.admin-page-actions{display:flex;gap:1rem}.admin-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease,transform .1s ease;text-decoration:none}.admin-button-primary{background-color:var(--color-primary);color:var(--color-text-inverse)}.admin-button-primary:hover{background-color:var(--color-primary-hover)}.admin-button-secondary{background-color:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.admin-button-secondary:hover{background-color:var(--color-border-secondary)}.admin-button-danger{background-color:var(--color-error);color:var(--color-text-inverse)}.admin-button-danger:hover{background-color:var(--color-error-subtle);color:var(--color-error)}.admin-button:active{transform:scale(.98)}.admin-button:disabled{opacity:.6;cursor:not-allowed}.admin-button-icon{width:1.25rem;height:1.25rem}.admin-user-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.admin-user-list-empty{grid-column:1 / -1;text-align:center;padding:3rem;background-color:var(--color-surface-secondary);border-radius:12px;border:2px dashed var(--color-border-primary)}.admin-user-list-empty-message{font-size:1.125rem;color:var(--color-text-secondary);margin:0}.admin-user-card{background-color:var(--color-surface-primary);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-md);transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;display:flex;flex-direction:column;border:1px solid var(--color-border-primary)}.admin-user-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--color-border-focus)}.admin-user-card-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border-secondary)}.admin-user-avatar{width:3rem;height:3rem;border-radius:50%;background-color:var(--color-primary);color:var(--color-text-inverse);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;flex-shrink:0}.admin-user-name{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0}.admin-user-role{font-size:.875rem;color:var(--color-text-secondary);margin:0}.admin-user-role.admin{color:var(--color-primary);font-weight:600}.admin-user-body{flex:1;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.admin-user-info{display:flex;flex-direction:column;gap:.25rem}.admin-user-label{font-size:.75rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.admin-user-value{font-size:.875rem;color:var(--color-text-primary);word-break:break-all}.admin-user-footer{display:flex;gap:.75rem;padding-top:1rem;border-top:1px solid var(--color-border-secondary)}.admin-user-footer .admin-button{flex:1;justify-content:center;padding:.5rem;font-size:.875rem}.admin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;text-align:center}.admin-loading-spinner{width:3rem;height:3rem;border:3px solid var(--color-border-secondary);border-top-color:var(--color-primary);border-radius:50%;animation:admin-spin 1s linear infinite;margin-bottom:1rem}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-loading-text{font-size:1rem;color:var(--color-text-secondary);margin:0}.admin-error{background-color:var(--color-error-subtle);border:1px solid var(--color-error);border-radius:8px;padding:1.5rem;margin-bottom:2rem}.admin-error-title{font-size:1.125rem;font-weight:600;color:var(--color-error);margin:0 0 .5rem}.admin-error-message{font-size:.875rem;color:var(--color-text-primary);margin:0}.admin-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center;padding:2rem;z-index:1000;backdrop-filter:blur(2px)}.admin-modal-container{background-color:var(--color-surface-primary);border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);display:flex;flex-direction:column}.admin-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border-primary)}.admin-modal-title{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0}.admin-modal-close{background:none;border:none;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%;transition:background-color .2s ease;color:var(--color-text-secondary);padding:0}.admin-modal-close:hover{background-color:var(--color-border-secondary);color:var(--color-text-primary)}.admin-modal-close svg{width:1.25rem;height:1.25rem}.admin-modal-body{padding:1.5rem;flex:1;overflow-y:auto}.admin-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--color-border-primary)}.admin-form{display:flex;flex-direction:column;gap:1.25rem}.admin-form-group{display:flex;flex-direction:column;gap:.5rem}.admin-form-label{font-size:.875rem;font-weight:600;color:var(--color-text-primary);margin:0}.admin-form-input,.admin-form-select,.admin-form-textarea{padding:.75rem 1rem;font-size:1rem;border:1px solid var(--color-border-primary);border-radius:8px;background-color:var(--color-bg-secondary);color:var(--color-text-primary);font-family:inherit;transition:border-color .2s ease}.admin-form-input:focus,.admin-form-select:focus,.admin-form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.admin-form-input::placeholder,.admin-form-textarea::placeholder{color:var(--color-text-tertiary)}.admin-form-helper{font-size:.75rem;color:var(--color-text-tertiary);margin:0}.admin-form-error{font-size:.75rem;color:var(--color-error);margin:0;display:flex;align-items:center;gap:.25rem}.admin-family-meeting-section{background-color:var(--color-surface-primary);border-radius:12px;padding:2rem;box-shadow:var(--shadow-md);border:1px solid var(--color-border-primary)}.admin-family-meeting-content{display:flex;flex-direction:column;gap:1.5rem}.admin-system-settings-section{background-color:var(--color-surface-primary);border-radius:12px;padding:2rem;box-shadow:var(--shadow-md);border:1px solid var(--color-border-primary)}.admin-system-settings-content{display:flex;flex-direction:column;gap:1.5rem}.admin-warning-message{padding:1rem;background-color:var(--color-warning-subtle);border:1px solid var(--color-warning);border-radius:8px;color:var(--color-warning-dark);display:flex;align-items:center;gap:.75rem;font-weight:500}.admin-button-group{display:flex;gap:1rem;margin-top:.5rem}.admin-registration-toggle-button{width:100%}.admin-registration-toggle{width:100%;display:flex;align-items:center;gap:1.5rem;padding:1.5rem 2rem;border:none;border-radius:12px;font-family:inherit;font-size:1rem;cursor:pointer;transition:all .3s ease;text-align:left;position:relative;overflow:hidden}.admin-registration-toggle-open{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b9814d}.admin-registration-toggle-open:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.admin-registration-toggle-open:active{transform:translateY(0);box-shadow:0 2px 8px #10b9814d}.admin-registration-toggle-closed{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef44444d}.admin-registration-toggle-closed:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.admin-registration-toggle-closed:active{transform:translateY(0);box-shadow:0 2px 8px #ef44444d}.admin-registration-toggle:disabled{opacity:.7;cursor:not-allowed;transform:none!important}.admin-registration-toggle-icon{display:flex;align-items:center;justify-content:center;width:4rem;height:4rem;border-radius:12px;background-color:#fff3;flex-shrink:0;transition:transform .3s ease}.admin-registration-toggle:hover .admin-registration-toggle-icon{transform:scale(1.1)}.admin-registration-toggle-icon svg{width:2rem;height:2rem;stroke-width:2}.admin-registration-toggle-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.admin-registration-toggle-title{font-size:1.375rem;font-weight:700;line-height:1.3}.admin-registration-toggle-description{font-size:.875rem;opacity:.9;line-height:1.4}.admin-registration-toggle-action{display:flex;align-items:center;justify-content:center;min-width:5rem;padding:.75rem 1.5rem;background-color:#fff3;border-radius:8px;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;transition:all .3s ease}.admin-registration-toggle:hover .admin-registration-toggle-action{background-color:#ffffff4d}.admin-registration-toggle-action-text{white-space:nowrap}.admin-registration-toggle-spinner{width:1.5rem;height:1.5rem;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:admin-toggle-spin .8s linear infinite}@keyframes admin-toggle-spin{to{transform:rotate(360deg)}}.settings-message{padding:1rem;border-radius:8px;margin-bottom:1rem;font-size:.875rem;font-weight:500;text-align:center}.settings-message-success{background-color:#10b9811a;color:#10b981;border:1px solid #10b981}.settings-message-error{background-color:#ef44441a;color:#ef4444;border:1px solid #ef4444}@media(max-width:768px){.admin-registration-toggle{flex-wrap:wrap;padding:1.25rem;gap:1rem}.admin-registration-toggle-icon{width:3rem;height:3rem}.admin-registration-toggle-icon svg{width:1.5rem;height:1.5rem}.admin-registration-toggle-title{font-size:1.125rem}.admin-registration-toggle-description{font-size:.8125rem}.admin-registration-toggle-action{width:100%;min-width:auto}}@media(max-width:768px){.admin-page{padding:1rem}.admin-page-header{flex-direction:column;align-items:flex-start;gap:1rem}.admin-page-actions{width:100%}.admin-page-actions .admin-button{flex:1}.admin-user-list{grid-template-columns:1fr}.admin-modal-container{max-height:100vh;border-radius:0}.admin-modal-overlay{padding:0}}.admin-login-block-toggle-button{width:100%}.admin-login-block-toggle{width:100%;display:flex;align-items:center;gap:1.5rem;padding:1.5rem 2rem;border:none;border-radius:12px;font-family:inherit;font-size:1rem;cursor:pointer;transition:all .3s ease;text-align:left;position:relative;overflow:hidden}.admin-login-block-toggle-open{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f64d}.admin-login-block-toggle-open:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.admin-login-block-toggle-open:active{transform:translateY(0);box-shadow:0 2px 8px #3b82f64d}.admin-login-block-toggle-blocked{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 12px #f59e0b4d}.admin-login-block-toggle-blocked:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b66}.admin-login-block-toggle-blocked:active{transform:translateY(0);box-shadow:0 2px 8px #f59e0b4d}.admin-login-block-toggle:disabled{opacity:.7;cursor:not-allowed;transform:none!important}.admin-login-block-toggle-icon{display:flex;align-items:center;justify-content:center;width:4rem;height:4rem;border-radius:12px;background-color:#fff3;flex-shrink:0;transition:transform .3s ease}.admin-login-block-toggle:hover .admin-login-block-toggle-icon{transform:scale(1.1)}.admin-login-block-toggle-icon svg{width:2rem;height:2rem;stroke-width:2}.admin-login-block-toggle-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.admin-login-block-toggle-title{font-size:1.375rem;font-weight:700;line-height:1.3}.admin-login-block-toggle-description{font-size:.875rem;opacity:.9;line-height:1.4}.admin-login-block-toggle-action{display:flex;align-items:center;justify-content:center;min-width:5rem;padding:.75rem 1.5rem;background-color:#fff3;border-radius:8px;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;transition:all .3s ease}.admin-login-block-toggle:hover .admin-login-block-toggle-action{background-color:#ffffff4d}.admin-login-block-toggle-action-text{white-space:nowrap}.admin-login-block-toggle-spinner{width:1.5rem;height:1.5rem;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:admin-toggle-spin .8s linear infinite}.admin-revoke-tokens-button{width:100%}.admin-revoke-tokens-action{width:100%;display:flex;align-items:center;gap:1.5rem;padding:1.5rem 2rem;border:2px solid #ef4444;border-radius:12px;background-color:transparent;font-family:inherit;font-size:1rem;cursor:pointer;transition:all .3s ease;text-align:left;position:relative;overflow:hidden}.admin-revoke-tokens-action:not(:disabled):hover{background-color:#ef44441a;transform:translateY(-2px);box-shadow:0 6px 20px #ef444433}.admin-revoke-tokens-action:not(:disabled):active{transform:translateY(0);box-shadow:0 2px 8px #ef444426}.admin-revoke-tokens-action:disabled{opacity:.5;cursor:not-allowed;border-color:var(--color-border-secondary)}.admin-revoke-tokens-icon{display:flex;align-items:center;justify-content:center;width:4rem;height:4rem;border-radius:12px;background-color:#ef44441a;color:#ef4444;flex-shrink:0;transition:all .3s ease}.admin-revoke-tokens-action:not(:disabled):hover .admin-revoke-tokens-icon{background-color:#ef444433;transform:scale(1.1)}.admin-revoke-tokens-icon svg{width:2rem;height:2rem;stroke-width:2}.admin-revoke-tokens-spinner{width:1.5rem;height:1.5rem;border:3px solid rgba(239,68,68,.3);border-top-color:#ef4444;border-radius:50%;animation:admin-toggle-spin .8s linear infinite}.admin-revoke-tokens-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.admin-revoke-tokens-title{font-size:1.375rem;font-weight:700;line-height:1.3;color:var(--color-text-primary)}.admin-revoke-tokens-description{font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.admin-info-message{padding:1rem;background-color:var(--color-info-subtle);border:1px solid var(--color-info);border-radius:8px;color:var(--color-info-dark);display:flex;align-items:flex-start;gap:.75rem;font-weight:500}.admin-info-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.25rem;height:1.25rem}.admin-info-icon svg{width:100%;height:100%;color:currentColor}@media(max-width:768px){.admin-login-block-toggle{flex-wrap:wrap;padding:1.25rem;gap:1rem}.admin-login-block-toggle-icon{width:3rem;height:3rem}.admin-login-block-toggle-icon svg{width:1.5rem;height:1.5rem}.admin-login-block-toggle-title{font-size:1.125rem}.admin-login-block-toggle-description{font-size:.8125rem}.admin-login-block-toggle-action{width:100%;min-width:auto}.admin-revoke-tokens-action{flex-wrap:wrap;padding:1.25rem;gap:1rem}.admin-revoke-tokens-icon{width:3rem;height:3rem}.admin-revoke-tokens-icon svg{width:1.5rem;height:1.5rem}.admin-revoke-tokens-title{font-size:1.125rem}.admin-revoke-tokens-description{font-size:.8125rem}}.admin-whitelist-section{display:flex;flex-direction:column;gap:1.5rem}.admin-whitelist-loading{padding:1rem;text-align:center;color:var(--text-secondary, #6b7280)}.admin-whitelist-toggle{background-color:var(--card-bg, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:.5rem;padding:1.25rem}.admin-whitelist-toggle-title{font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827);margin-bottom:.5rem}.admin-whitelist-toggle-description{font-size:.875rem;color:var(--text-secondary, #6b7280);line-height:1.5;margin-bottom:1rem}.admin-toggle-button{width:100%;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;border:2px solid var(--border, #e5e7eb);border-radius:.375rem;background-color:var(--bg-secondary, #f9fafb);color:var(--text-primary, #111827);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.admin-toggle-button:hover:not(:disabled){background-color:var(--border, #e5e7eb)}.admin-toggle-button:disabled{opacity:.6;cursor:not-allowed}.admin-toggle-button-active{background-color:#10b981;color:#fff;border-color:#10b981}.admin-toggle-button-active:hover:not(:disabled){background-color:#059669;border-color:#059669}.admin-whitelist-users{background-color:var(--card-bg, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:.5rem;padding:1.25rem}.admin-whitelist-users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border, #e5e7eb)}.admin-whitelist-users-title{font-size:1rem;font-weight:600;color:var(--text-primary, #111827)}.admin-whitelist-users-count{font-size:.875rem;color:var(--text-secondary, #6b7280)}.admin-whitelist-add{display:flex;gap:.75rem;margin-bottom:1.5rem}.admin-whitelist-add-select{flex:1;padding:.5rem .75rem;font-size:.875rem;border:1px solid var(--border, #e5e7eb);border-radius:.375rem;background-color:var(--bg-secondary, #f9fafb);color:var(--text-primary, #111827);cursor:pointer}.admin-whitelist-add-button{padding:.5rem 1rem;font-size:.875rem}.admin-whitelist-list{display:flex;flex-direction:column;gap:.75rem}.admin-whitelist-empty{padding:2rem;text-align:center;background-color:var(--bg-secondary, #f9fafb);border-radius:.375rem;border:1px dashed var(--border, #e5e7eb)}.admin-whitelist-empty-message{font-size:.875rem;color:var(--text-secondary, #6b7280)}.admin-whitelist-entry{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;background-color:var(--bg-secondary, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:.375rem;transition:all .2s}.admin-whitelist-entry:hover{border-color:var(--primary, #3b82f6)}.admin-whitelist-entry-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.admin-whitelist-entry-username{font-size:.9375rem;font-weight:500;color:var(--text-primary, #111827)}.admin-whitelist-entry-info{display:flex;gap:.75rem;align-items:center}.admin-whitelist-entry-role{font-size:.75rem;padding:.125rem .5rem;border-radius:9999px;font-weight:500;text-transform:capitalize}.admin-whitelist-entry-role[data-role=admin]{background-color:#dbeafe;color:#1e40af}.admin-whitelist-entry-role[data-role=member]{background-color:#f3f4f6;color:#4b5563}.admin-whitelist-entry-notes{font-size:.75rem;color:var(--text-secondary, #6b7280);font-style:italic}.admin-whitelist-remove-button{padding:.375rem .75rem;font-size:.875rem;line-height:1}.admin-whitelist-notice{margin-top:1rem;padding:.75rem;background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:.375rem;font-size:.875rem;color:#075985;line-height:1.5}@media(max-width:640px){.admin-whitelist-add{flex-direction:column}.admin-whitelist-add-select,.admin-whitelist-add-button{width:100%}.admin-whitelist-entry{flex-wrap:wrap;gap:.5rem}.admin-whitelist-remove-button{width:100%}}.task-status-indicator{width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:default;user-select:none;transition:background-color .2s ease,border-color .2s ease,transform .1s ease;border:2px solid transparent;position:relative;z-index:2}.task-status-indicator.task-status-clickable{cursor:pointer}.task-status-indicator.task-status-clickable:hover{transform:scale(1.1);filter:brightness(1.1)}.task-status-indicator.task-status-clickable:active{transform:scale(.95)}.task-status-indicator.task-status-clickable:focus{outline:2px solid var(--color-border-focus);outline-offset:2px}.task-status-indicator.task-status-todo{background-color:transparent;border-color:var(--color-text-tertiary)}.task-status-indicator.task-status-clickable.task-status-todo:hover{border-color:var(--color-text-secondary);background-color:var(--color-bg-tertiary)}.task-status-indicator.task-status-done{background-color:var(--color-success);border-color:var(--color-success)}.task-status-indicator.task-status-clickable.task-status-done:hover{filter:brightness(1.1)}.task-status-indicator.task-status-in-progress{background-color:var(--color-primary);border-color:var(--color-primary)}.task-status-indicator.task-status-clickable.task-status-in-progress:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.task-status-indicator.task-status-cancelled{background-color:var(--color-error);border-color:var(--color-error)}.task-status-indicator.task-status-clickable.task-status-cancelled:hover{filter:brightness(1.1)}.task-status-indicator.task-status-discarded{background-color:var(--color-warning);border-color:var(--color-warning)}.task-status-indicator.task-status-clickable.task-status-discarded:hover{filter:brightness(1.1)}.task-status-emoji{color:var(--color-text-inverse);font-size:14px;line-height:1;text-align:center}.task-status-svg-container{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--color-text-inverse)}.task-status-svg-container svg{width:100%;height:100%;display:block}.task-status-indicator.task-status-in-progress .task-status-emoji{font-size:12px;font-weight:700}.task-status-indicator.task-status-done .task-status-emoji{font-size:16px;font-weight:700}.task-status-indicator.task-status-discarded .task-status-svg-container{width:14px;height:14px}.task-metadata{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:13px;color:var(--color-text-tertiary);font-weight:400;max-width:100%;pointer-events:auto}.task-metadata-item{display:inline-flex;align-items:center;gap:3px;white-space:nowrap;cursor:default;transition:opacity .15s ease}.task-metadata-item:not(.task-metadata-edit-btn):hover{opacity:.8}.task-metadata-date{background:var(--color-bg-tertiary);padding:2px 6px;border-radius:4px;font-weight:500;color:var(--color-text-secondary)}.task-metadata-recurrence{background:var(--color-primary-subtle);color:var(--color-primary);padding:2px 6px;border-radius:4px;font-weight:500}.task-metadata-priority{font-size:14px;padding:0}.task-metadata-priority.task-metadata-priority-high{background:var(--color-error-subtle);color:var(--color-error);padding:2px 6px;border-radius:4px;font-weight:600}.task-metadata-edit-btn{appearance:none;border:none;outline:none;background:transparent;padding:4px;margin:-2px;cursor:pointer;font-size:16px;line-height:1;border-radius:4px;transition:background-color .15s ease,transform .1s ease,opacity .15s ease}.task-metadata-edit-btn:hover{background-color:var(--color-bg-tertiary);transform:scale(1.1);opacity:1}.task-metadata-edit-btn:active{transform:scale(.95);background-color:var(--color-bg-secondary)}.task-metadata-edit-btn:focus{outline:2px solid var(--color-border-focus);outline-offset:1px}.task-metadata-separator{color:var(--color-text-tertiary);opacity:.4;font-size:12px;margin:0 2px;user-select:none;min-width:4px;display:flex;align-items:center;justify-content:center}@media(max-width:640px){.task-metadata{font-size:12px;gap:3px}.task-metadata-item{gap:2px;padding:1px 4px}.task-metadata-edit-btn{font-size:14px;padding:2px}.task-metadata-separator{font-size:10px;margin:0 1px}}.task-title-content{font-family:inherit;display:inline;margin:0;padding:0;text-align:left}.task-title-markdown-bold{font-weight:600;color:inherit;letter-spacing:-.01em}.task-title-markdown-italic{font-style:italic;color:inherit;font-weight:400;letter-spacing:-.005em}.task-title-markdown-code{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:.9em;background-color:var(--color-bg-tertiary);border-radius:3px;padding:.1em .4em;margin:0 .1em;color:var(--color-error);font-style:normal;font-weight:400;letter-spacing:normal;line-height:1;display:inline;white-space:nowrap}.task-title-markdown-tag{font-size:.85em;font-weight:500;color:var(--color-primary);background-color:var(--color-primary-subtle);border-radius:3px;padding:.1em .4em;margin:0 .1em;display:inline;user-select:all;cursor:text}.task-title-markdown-link{color:var(--color-primary);text-decoration:underline;text-decoration-style:solid;text-decoration-color:var(--color-primary);text-decoration-color:color-mix(in srgb,var(--color-primary),transparent 70%);text-underline-offset:2px;cursor:pointer}.task-title-markdown-link:hover{color:var(--color-primary-hover);text-decoration-color:var(--color-primary-hover)}.task-title-markdown-link:active{color:var(--color-primary-active)}.task-title-markdown-link:visited{color:var(--color-primary)}.task-title-markdown-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.task-title-markdown-link:hover{color:#2563eb;text-decoration-color:#2563eb}.task-title-markdown-link:active{color:#1d4ed8}.task-title-markdown-link:visited{color:var(--color-primary, #3b82f6)}.task-title-markdown-link:focus-visible{outline:2px solid var(--color-primary, #3b82f6);outline-offset:2px;border-radius:2px}@media(prefers-color-scheme:dark){.task-title-markdown-link{color:#60a5fa;text-decoration-color:#60a5fa4d}.task-title-markdown-link:hover{color:#93c5fd;text-decoration-color:#93c5fd}.task-title-markdown-link:active{color:#3b82f6}}.task-card:hover .task-title-content{color:var(--color-text-primary)}.task-card:hover .task-title-markdown-tag{color:var(--color-primary-hover);background-color:var(--color-primary-subtle)}@media(max-width:640px){.task-title-content{font-size:14px}.task-title-markdown-code{font-size:.85em}.task-title-markdown-tag{font-size:.8em}}@media(max-width:480px){.task-title-content{font-size:13px}}.task-card{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-bottom:1px solid var(--color-border-secondary);background:transparent;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,opacity .2s ease,filter .2s ease,box-shadow .2s ease;user-select:none;min-height:48px;overflow:hidden;position:relative;z-index:1}.task-card:hover{background-color:var(--color-bg-tertiary)}.task-card:last-child{border-bottom:none}.task-card:focus{outline:2px solid var(--color-border-focus);outline-offset:-2px;background-color:var(--color-primary-subtle)}.task-card.task-card-status-done{opacity:.75}.task-card.task-card-status-done .task-card-title{text-decoration:line-through;text-decoration-color:var(--color-text-tertiary)}.task-card.task-card-status-in-progress{background-color:var(--color-primary-subtle);border-left:3px solid var(--color-primary);padding-left:13px}.task-card.task-card-status-cancelled{background-color:var(--color-error-subtle);border-left:3px solid var(--color-error);padding-left:13px;opacity:.6}.task-card.task-card-status-discarded{background-color:var(--color-warning-subtle);opacity:.7}.tasklist-backdrop-active .task-card{opacity:.3;filter:grayscale(.3)}.tasklist-backdrop-active .task-card.task-card-menu-active{opacity:1;filter:none;position:relative;z-index:5;box-shadow:0 0 0 2px var(--color-border-focus),0 4px 16px #00000026}.tasklist-backdrop-active .task-card:hover{background-color:var(--color-bg-tertiary)}.task-card-ripple{position:absolute;width:400px;height:400px;transform:translate(-50%,-50%) scale(0);opacity:.7;border-radius:50%;background:radial-gradient(circle,#3b82f680,#3b82f61a);pointer-events:none;animation:task-card-ripple-scale .7s cubic-bezier(.4,0,.2,1) forwards,task-card-ripple-fade .7s ease-out forwards;z-index:100;border:3px solid rgba(59,130,246,.5)}.task-card-menu-active .task-card-ripple{display:block}@keyframes task-card-ripple-scale{0%{transform:translate(-50%,-50%) scale(0)}to{transform:translate(-50%,-50%) scale(15)}}@keyframes task-card-ripple-fade{0%{opacity:.3}to{opacity:0}}@media(prefers-color-scheme:dark){.task-card-ripple{background:radial-gradient(circle,#60a5fa80,#60a5fa26);border-color:#60a5fa66}}.task-card-in-progress-wave{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(1);border-radius:50%;opacity:.25;background:radial-gradient(circle,#3b82f64d,#3b82f60d);pointer-events:none;animation:task-card-in-progress-pulse-scale 2s ease-in-out infinite,task-card-in-progress-pulse-opacity 2s ease-in-out infinite;z-index:0}@keyframes task-card-in-progress-pulse-scale{0%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.15)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes task-card-in-progress-pulse-opacity{0%{opacity:.25}50%{opacity:.5}to{opacity:.25}}@media(prefers-color-scheme:dark){.task-card-in-progress-wave{background:radial-gradient(circle,#60a5fa66,#60a5fa1a)}@keyframes task-card-in-progress-pulse-opacity{0%{opacity:.3}50%{opacity:.55}to{opacity:.3}}}.task-card.task-card-depth-1{font-size:.95em}.task-card.task-card-depth-2{font-size:.9em}.task-card.task-card-depth-3{font-size:.85em}.task-card.task-card-depth-4{font-size:.8em}.task-card[class*=task-card-depth-]:before{content:"";position:absolute;left:12px;top:0;bottom:0;width:1px;background-color:var(--color-border-secondary);opacity:.5;pointer-events:none}.task-card-expand-toggle{appearance:none;border:none;outline:none;background:transparent;padding:0;margin:0 4px;cursor:pointer;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);border-radius:4px;transition:all .15s ease;flex-shrink:0;position:relative;z-index:2}.task-card-expand-toggle:hover{background-color:var(--color-bg-tertiary);color:var(--color-text-secondary);transform:scale(1.1)}.task-card-expand-toggle:active{transform:scale(.95);background-color:var(--color-bg-tertiary)}.task-card-expand-toggle:focus{outline:2px solid var(--color-border-focus);outline-offset:1px}.task-card-expand-icon{transition:transform .2s ease}.task-card-expand-icon.task-card-expand-icon-rotated{transform:rotate(180deg)}.task-card-content{display:flex;flex-direction:column;flex:1;gap:6px;min-width:0;position:relative;z-index:2}.task-card-title{font-size:15px;font-weight:400;color:var(--color-text-primary);line-height:1.4;min-width:0;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;display:inline}.task-card[class*=task-card-depth-] .task-card-title{color:var(--color-text-primary);opacity:.95}.task-card:hover .task-card-title{opacity:1}.task-card-has-subtasks:not(.task-card-expanded) .task-card-title{font-weight:500}@media(max-width:640px){.task-card{padding:10px 12px;min-height:44px}.task-card-title{font-size:14px}.task-card-expand-toggle{width:18px;height:18px}}@media(max-width:480px){.task-card{padding:8px 10px}.task-card-title{font-size:13px}}.task-card-subtasks{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border-tertiary, #e5e7eb)}.task-card-subtask{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem .75rem;background-color:var(--color-bg-secondary, #f3f4f6);border-radius:.375rem;cursor:pointer;transition:background-color .15s ease,transform .15s ease}.task-card-subtask:hover{background-color:var(--color-bg-tertiary, #e5e7eb);transform:translate(2px)}.task-card-subtask-content{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.task-card-subtask-title{font-size:.875rem;font-weight:400;color:var(--color-text-secondary, #6b7280);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-card-subtask[data-status=done] .task-card-subtask-title{text-decoration:line-through;color:var(--color-text-tertiary, #9ca3af)}.tasks-page-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;min-height:300px;text-align:center;color:var(--color-text-tertiary);gap:16px}.tasks-page-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;min-height:300px;text-align:center;color:var(--color-error);gap:16px}.tasks-page-error-state p{font-size:16px;font-weight:500}.tasks-page-error-state button{padding:10px 20px;background-color:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.tasklist{width:100%;background:var(--color-surface-primary);border-radius:8px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border-secondary);overflow:hidden;max-height:calc(100vh - 200px);overflow-y:auto}.tasklist::-webkit-scrollbar{width:8px}.tasklist::-webkit-scrollbar-track{background:var(--color-bg-tertiary)}.tasklist::-webkit-scrollbar-thumb{background:var(--color-text-tertiary);border-radius:4px;opacity:.3}.tasklist::-webkit-scrollbar-thumb:hover{opacity:.4}.tasks-page-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;min-height:300px;color:var(--color-text-tertiary)}.tasks-page-empty-state-description{font-size:14px;font-weight:400;color:var(--color-text-tertiary);max-width:300px;line-height:1.5;opacity:1}.tasks-page-add-task-section{display:flex;align-items:center;justify-content:flex-start;padding:16px 20px 12px;background:var(--color-surface-primary);border-bottom:1px solid var(--color-border-secondary)}.tasks-page-add-task-button-empty{padding:12px 24px;font-size:15px;font-weight:600;margin-top:24px}@media(max-width:640px){.tasks-page-add-task-section{padding:12px 16px 10px}.tasks-page-add-task-button{padding:9px 16px;font-size:13px}.tasks-page-add-task-button-empty{padding:11px 20px;font-size:14px;margin-top:20px}.tasklist{border-radius:0;border-left:none;border-right:none;max-height:calc(100vh - 160px)}.tasks-page-empty-state{padding:40px 20px;min-height:250px}.tasks-page-empty-state-icon{font-size:48px;margin-bottom:12px}.tasks-page-empty-state-title{font-size:18px}.tasks-page-empty-state-description{font-size:13px}}@media(max-width:480px){.tasks-page-add-task-section{padding:10px 12px 8px}.tasks-page-add-task-button{padding:8px 14px;font-size:12px}.tasks-page-add-task-button-empty{padding:10px 18px;font-size:13px;margin-top:16px}.tasklist{max-height:calc(100vh - 140px)}.tasks-page-empty-state{padding:30px 15px;min-height:200px}.tasks-page-empty-state-icon{font-size:40px}.tasks-page-empty-state-title{font-size:16px}.tasks-page-empty-state-description{font-size:12px;max-width:250px}}@media print{.tasks-page-add-task-section{display:none}.tasklist{box-shadow:none;border:1px solid var(--color-border-primary);max-height:none;overflow:visible;background:#fff}.tasks-page-empty-state{display:none}}.taskcontext-menu{position:fixed;z-index:1000;background-color:var(--color-surface-primary);border:1px solid var(--color-border-primary);border-radius:6px;box-shadow:var(--shadow-md);padding:4px 0;min-width:140px;outline:none}.taskcontext-menu-item{appearance:none;border:none;outline:none;background:transparent;display:block;width:100%;padding:8px 12px;text-align:left;font-size:14px;color:var(--color-text-primary);cursor:pointer;user-select:none}.taskcontext-menu-item:hover,.taskcontext-menu-item:focus{background-color:var(--color-bg-tertiary)}.taskcontext-menu-item:active{background-color:var(--color-bg-secondary)}.taskcontext-menu-item:focus{outline:2px solid var(--color-border-focus);outline-offset:-2px}@media(max-width:640px){.taskcontext-menu{min-width:120px}.taskcontext-menu-item{padding:10px 12px;font-size:13px}}.task-modal .modal-container{max-width:600px}#task-modal-form{display:flex;flex-direction:column;gap:1.5rem}.task-modal-field{display:flex;flex-direction:column;gap:.5rem}.task-modal-label{font-size:14px;font-weight:500;color:var(--color-text-primary);font-family:inherit;display:block;margin-bottom:.25rem}.task-modal-required{color:var(--color-error);margin-left:.25rem}.task-modal-label-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;margin-bottom:0}.task-modal-input{width:100%;padding:10px 12px;border:1px solid var(--color-border-primary);border-radius:6px;background-color:var(--color-surface-secondary);color:var(--color-text-primary);font-size:14px;font-family:inherit;line-height:1.5;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;outline:none}.task-modal-input:hover{border-color:var(--color-border-hover)}.task-modal-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.task-modal-input:disabled{background-color:var(--color-bg-tertiary);opacity:.6;cursor:not-allowed}.task-modal-input[aria-invalid=true]{border-color:var(--color-error)}.task-modal-input[aria-invalid=true]:focus{box-shadow:0 0 0 3px rgba(var(--color-error-rgb),.1)}.task-modal-input[type=textarea],.task-modal-input[name=title]{resize:none;line-height:1.5;appearance:none}.task-modal-date-time-group{display:flex;gap:.75rem;flex-wrap:wrap}.task-modal-date-input,.task-modal-time-input{min-width:140px;flex:1}.task-modal-checkbox{width:1.25rem;height:1.25rem;accent-color:var(--color-primary);cursor:pointer}.task-modal-quick-date-buttons{display:flex;gap:.5rem;margin-top:.25rem}.task-modal-quick-date-btn{font-size:12px;padding:4px 12px;height:28px;border:1px solid var(--color-border-primary);border-radius:4px;background-color:var(--color-surface-secondary);color:var(--color-text-secondary);font-weight:500;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .1s ease;user-select:none;touch-action:manipulation}.task-modal-quick-date-btn:hover{background-color:var(--color-bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.task-modal-quick-date-btn:active{background-color:var(--color-bg-active);transform:translateY(1px)}.task-modal-quick-date-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.task-modal-button{padding:10px 20px;height:40px;border-radius:6px;border:none;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:background-color .2s ease,transform .1s ease,box-shadow .2s ease;user-select:none;touch-action:manipulation}.task-modal-button-secondary{background-color:var(--color-surface-secondary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.task-modal-button-secondary:hover{background-color:var(--color-bg-hover);border-color:var(--color-border-hover)}.task-modal-button-secondary:active{transform:translateY(1px)}.task-modal-button-secondary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.task-modal-button-primary{background-color:var(--color-primary);color:#fff;box-shadow:0 1px 3px #0000001f}.task-modal-button-primary:hover{background-color:var(--color-primary-hover);box-shadow:0 2px 6px #00000026}.task-modal-button-primary:active{background-color:var(--color-primary-active);transform:translateY(1px);box-shadow:0 1px 2px #0000001a}.task-modal-button-primary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.task-modal-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.task-modal-button:disabled:hover{transform:none;box-shadow:none}.task-modal-button-spinner{display:inline-block;width:16px;height:16px;margin-right:.5rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:task-modal-button-spinner-spin .6s linear infinite;vertical-align:middle}@keyframes task-modal-button-spinner-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.task-modal-server-error{font-size:14px;color:var(--color-error);margin-bottom:1.5rem;padding:1rem;background-color:rgba(var(--color-error-rgb),.08);border:1px solid var(--color-error);border-left:4px solid var(--color-error);border-radius:6px;animation:task-modal-server-error-enter .3s ease-out}.task-modal-server-error-content{display:flex;align-items:flex-start;gap:.5rem}.task-modal-server-error-content strong{color:var(--color-error);font-weight:600;white-space:nowrap}@keyframes task-modal-server-error-enter{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.task-modal-error{font-size:13px;color:var(--color-error);margin-top:.25rem;padding:.5rem .75rem;background-color:rgba(var(--color-error-rgb),.1);border-left:3px solid var(--color-error);border-radius:4px;animation:task-modal-error-fade-in .2s ease-out}@keyframes task-modal-error-fade-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.task-modal-help{font-size:12px;color:var(--color-text-tertiary);margin-top:.25rem}.task-modal-hint{font-size:12px;color:var(--color-text-secondary);background-color:var(--color-bg-tertiary);border-radius:6px;padding:.75rem 1rem;margin-top:1rem}.task-modal-recurrence-section{margin-top:.5rem;padding:1rem;border:1px dashed var(--color-border-secondary);border-radius:6px;background-color:var(--color-bg-tertiary)}@media(max-width:640px){.task-modal .modal-container{max-width:100%;border-radius:0}.task-modal-date-input,.task-modal-time-input{min-width:120px}.task-modal-quick-date-buttons{flex-wrap:wrap}.task-modal-button{padding:9px 16px;height:36px;font-size:13px}}@media(max-width:480px){.task-modal-date-time-group{flex-direction:column;gap:.5rem}.task-modal-date-input,.task-modal-time-input{width:100%;min-width:unset}.task-modal-recurrence-section{padding:.75rem}}@media print{.task-modal{display:none}}.task-modal-subtasks-section{display:flex;flex-direction:column;gap:.75rem;padding:0;margin:0}.task-modal-existing-subtasks{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background-color:var(--colors-gray-50, #f9fafb);border:1px solid var(--colors-gray-200, #e5e7eb);border-radius:.5rem}.task-modal-existing-subtask{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background-color:var(--colors-white, #ffffff);border:1px solid var(--colors-gray-200, #e5e7eb);border-radius:.375rem;transition:box-shadow .2s ease}.task-modal-existing-subtask:hover{box-shadow:0 1px 3px #0000001a}.task-modal-subtask-status-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.task-modal-existing-subtask-title{flex:1;font-size:.875rem;color:var(--colors-gray-600, #4b5563);font-style:italic}.task-modal-subtask-edit-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background-color:var(--colors-blue-50, #eff6ff);border:1px solid var(--colors-blue-200, #bfdbfe);border-radius:.25rem;color:var(--colors-blue-600, #2563eb);cursor:pointer;transition:all .2s ease}.task-modal-subtask-edit-btn:hover{background-color:var(--colors-blue-100, #dbeafe);transform:translateY(-1px)}.task-modal-subtask-edit-btn:active{transform:translateY(0)}.task-modal-subtasks-container{display:flex;flex-direction:column;gap:.5rem}.task-modal-subtask-input-group{display:flex;align-items:center;gap:.5rem;position:relative}.task-modal-subtask-input{flex:1;min-height:2.5rem;padding:.5rem .75rem;font-size:.875rem;border:1px solid var(--colors-gray-300, #d1d5db);border-radius:.375rem;transition:all .2s ease}.task-modal-subtask-input:focus{outline:none;border-color:var(--colors-blue-500, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.task-modal-subtask-input::placeholder{color:var(--colors-gray-400, #9ca3af)}.task-modal-subtask-remove-btn{display:flex;align-items:center;justify-content:center;width:32px;height:2.5rem;padding:0;font-size:1.25rem;line-height:1;background-color:var(--colors-red-50, #fef2f2);border:1px solid var(--colors-red-200, #fecaca);border-radius:.375rem;color:var(--colors-red-600, #dc2626);cursor:pointer;transition:all .2s ease}.task-modal-subtask-remove-btn:hover{background-color:var(--colors-red-100, #fee2e2);transform:translateY(-1px)}.task-modal-subtask-remove-btn:active{transform:translateY(0)}.task-filter-presets-container{width:100%;margin-bottom:16px;background-color:var(--color-surface-primary);border-radius:8px;border:1px solid var(--color-border-secondary);box-shadow:var(--shadow-sm);overflow:hidden}.task-filter-presets-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;user-select:none}.task-filter-presets-scroll::-webkit-scrollbar{display:none}.task-filter-presets-list{display:flex;align-items:center;gap:4px;padding:8px 12px;min-width:fit-content;scroll-snap-align:start}.task-filter-preset-button{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--color-border-secondary);border-radius:6px;background-color:transparent;font-size:13px;font-weight:500;font-family:inherit;color:var(--color-text-secondary);white-space:nowrap;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .1s ease;user-select:none;touch-action:manipulation}.task-filter-preset-icon{font-size:14px;line-height:1}.task-filter-preset-label{line-height:1.2}.task-filter-preset-button.active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-inverse);box-shadow:0 1px 3px #00000040}.task-filter-preset-button:hover:not(.active){background-color:var(--color-surface-secondary);border-color:var(--color-border-primary);color:var(--color-text-primary)}.task-filter-preset-button.active:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.task-filter-preset-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.task-filter-preset-button:active:not(.active){transform:translateY(1px);background-color:var(--color-bg-tertiary);border-color:var(--color-border-primary)}.task-filter-preset-button.active:active{transform:translateY(1px);background-color:var(--color-primary-active);border-color:var(--color-primary-active)}@media(max-width:1024px){.task-filter-presets-container{margin-bottom:12px}.task-filter-preset-button{padding:7px 10px;font-size:12px}}@media(max-width:640px){.task-filter-presets-container{margin-bottom:10px}.task-filter-presets-list{padding:6px 8px;gap:3px}.task-filter-preset-button{padding:6px 8px;font-size:11px;gap:4px}.task-filter-preset-icon{font-size:12px}.task-filter-preset-count{font-size:10px}}@media(max-width:400px){.task-filter-presets-list{padding:5px 6px}.task-filter-preset-button{padding:6px 8px;font-size:11px}}@media print{.task-filter-presets-container{display:none}}.task-history-view{width:100%;height:100%;overflow:hidden;display:flex;flex-direction:column}.task-history-view-list{flex:1;overflow-y:auto;padding:12px}.task-history-view-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:#6b7280}.task-history-view-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:task-history-spin 1s linear infinite;margin-bottom:16px}@keyframes task-history-spin{to{transform:rotate(360deg)}}.task-history-view-error{padding:48px 24px;text-align:center}.task-history-view-error p{color:#ef4444;font-size:16px}.task-history-view-empty{padding:48px 24px;text-align:center}.task-history-view-empty p{color:#9ca3af;font-size:16px}.task-history-view-entry{background-color:var(--color-surface-primary);border:1px solid var(--color-border-primary);border-radius:8px;margin-bottom:12px;transition:all .2s ease;overflow:hidden}.task-history-view-entry:hover{border-color:var(--color-border-secondary);box-shadow:0 2px 4px #0000000d}.task-history-view-entry.expanded{border-color:#bfdbfe;box-shadow:0 4px 6px -1px #3b82f61a}.task-history-view-entry-header{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;user-select:none}.task-history-view-entry-header:hover{background-color:var(--color-surface-secondary)}.task-history-view-badge{flex-shrink:0;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.task-history-view-badge-green{background-color:#dcfce7;color:#166534}.task-history-view-badge-blue{background-color:#dbeafe;color:#1e40af}.task-history-view-badge-red{background-color:#fee2e2;color:#991b1b}.task-history-view-badge-purple{background-color:#f3e8ff;color:#6b21a8}.task-history-view-badge-orange{background-color:#ffedd5;color:#9a3412}.task-history-view-badge-yellow{background-color:#fef9c3;color:#854d0e}.task-history-view-badge-gray{background-color:#f3f4f6;color:#374151}.task-history-view-badge-cyan{background-color:#cffafe;color:#155e75}.task-history-view-badge-indigo{background-color:#e0e7ff;color:#3730a3}.task-history-view-badge-pink{background-color:#fce7f3;color:#9d174d}.task-history-view-badge-emerald{background-color:#d1fae5;color:#065f46}.task-history-view-badge-amber{background-color:#fef3c7;color:#92400e}.task-history-view-badge-rose{background-color:#ffe4e6;color:#881337}.task-history-view-badge-teal{background-color:#ccfbf1;color:#115e59}.task-history-view-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.task-history-view-task{display:flex;align-items:center;gap:4px;overflow:hidden}.task-history-view-task-title{font-size:14px;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-history-view-task-deleted{font-size:12px;color:#ef4444;font-weight:500}.task-history-view-user{display:flex;align-items:center;gap:4px;font-size:12px}.task-history-view-user-name{color:#4b5563;font-weight:500}.task-history-view-user-email{color:#9ca3af;font-weight:400}.task-history-view-user-system{color:#6b7280;font-style:italic}.task-history-view-timestamp{flex-shrink:0;font-size:12px;color:#9ca3af;font-family:Segoe UI,system-ui,-apple-system,sans-serif}.task-history-view-chevron{flex-shrink:0;color:#9ca3af;transition:transform .2s ease}.task-history-view-entry.expanded .task-history-view-chevron{transform:rotate(180deg)}.task-history-view-chevron svg{display:block}.task-history-view-entry-details{border-top:1px solid var(--color-border-primary);background-color:var(--color-bg-tertiary);padding:12px 16px}.task-history-view-snapshot{margin-bottom:12px}.task-history-view-snapshot:last-child{margin-bottom:0}.task-history-view-snapshot-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.task-history-view-snapshot-label{font-size:12px;font-weight:600;color:#374151}.task-history-view-snapshot-badge{font-size:10px;font-weight:500;color:#9ca3af;text-transform:uppercase}.task-history-view-snapshot-before .task-history-view-snapshot-label{color:#dc2626}.task-history-view-snapshot-after .task-history-view-snapshot-label{color:#059669}.task-history-view-snapshot-content{background-color:#1e293b;border-radius:6px;overflow:hidden;max-height:400px;overflow-y:auto}.task-history-view-snapshot-content pre{margin:0;padding:12px;font-size:11px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;line-height:1.5;color:#e2e8f0;white-space:pre-wrap;word-wrap:break-word}.task-history-view-snapshot-content::-webkit-scrollbar{width:8px;height:8px}.task-history-view-snapshot-content::-webkit-scrollbar-track{background:#334155}.task-history-view-snapshot-content::-webkit-scrollbar-thumb{background:#475569;border-radius:4px}.task-history-view-snapshot-content::-webkit-scrollbar-thumb:hover{background:#64748b}.task-history-view-metadata{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:6px}.task-history-view-metadata-item{display:flex;align-items:center;gap:8px;font-size:12px}.task-history-view-metadata-label{font-weight:600;color:#6b7280;min-width:80px}.task-history-view-metadata-value{color:#374151;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:11px;word-break:break-all}@media(max-width:768px){.task-history-view-entry-header{flex-wrap:wrap;align-items:flex-start}.task-history-view-timestamp{order:3;flex-basis:100%;margin-top:4px}.task-history-view-info{flex-basis:calc(100% - 80px)}}@media(max-width:480px){.task-history-view-list{padding:8px}.task-history-view-entry{margin-bottom:8px}.task-history-view-entry-header{padding:10px 12px}.task-history-view-badge{font-size:11px;padding:3px 8px}.task-history-view-task-title{font-size:13px}.task-history-view-user,.task-history-view-timestamp{font-size:11px}.task-history-view-entry-details{padding:10px 12px}}.tasks-page-container{width:100%;max-width:1200px;margin:0 auto;padding:24px 20px;background-color:var(--color-bg-primary, #f8f9fa);color:var(--color-text-primary, #212529)}.tasks-page-header{padding:12px 0;margin-bottom:16px;border-bottom:1px solid var(--color-border-secondary, #dee2e6)}.tasks-page-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0}.tasks-page-content{display:flex;flex-direction:column;gap:16px}.tasks-page-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:300px;text-align:center;color:var(--color-text-tertiary);gap:16px;background-color:var(--color-surface-primary);border-radius:8px;border:1px solid var(--color-border-secondary);box-shadow:var(--shadow-sm)}.tasks-page-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:300px;text-align:center;color:var(--color-error);gap:16px;background-color:var(--color-surface-primary);border-radius:8px;border:1px solid var(--color-border-secondary);box-shadow:var(--shadow-sm)}.tasks-page-error-state p{font-size:16px;font-weight:500;max-width:400px;line-height:1.5}.tasks-page-error-state button{padding:10px 20px;background-color:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.tasks-page-error-state button:hover{background-color:var(--color-primary-hover)}.tasks-page-error-state button:active{background-color:var(--color-primary-active)}.tasks-page-error-state button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tasks-page-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;min-height:300px;text-align:center;background-color:var(--color-surface-primary);border-radius:8px;border:1px solid var(--color-border-secondary);box-shadow:var(--shadow-sm);color:var(--color-text-tertiary)}.tasks-page-empty-state-icon{font-size:64px;margin-bottom:16px;opacity:.6;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.tasks-page-empty-state-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.tasks-page-empty-state-description{font-size:14px;font-weight:400;color:var(--color-text-tertiary);max-width:300px;line-height:1.5;margin-bottom:24px}.tasks-page-add-task-section{display:flex;align-items:center;justify-content:flex-start;padding:16px 20px;background-color:var(--color-surface-primary);border-radius:8px;border:1px solid var(--color-border-secondary);box-shadow:var(--shadow-sm)}.tasks-page-fab{position:fixed;right:20px;bottom:20px;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:var(--color-primary);color:#fff;border:none;box-shadow:0 4px 12px #00000026;cursor:pointer;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease;z-index:1000;user-select:none;touch-action:manipulation}.tasks-page-fab-icon{width:24px;height:24px;flex-shrink:0}.tasks-page-fab:hover{background-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:0 6px 16px #0003}.tasks-page-fab:active{background-color:var(--color-primary-active);transform:translateY(0);box-shadow:0 2px 8px #00000026}.tasks-page-fab:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.tasks-page-add-task-button{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background-color:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:background-color .2s ease,transform .1s ease,box-shadow .2s ease;box-shadow:0 1px 3px #0000001f;user-select:none;touch-action:manipulation}.tasks-page-add-task-button:hover{background-color:var(--color-primary-hover);box-shadow:0 2px 6px #00000026}.tasks-page-add-task-button:active{background-color:var(--color-primary-active);transform:translateY(1px);box-shadow:0 1px 2px #0000001a}.tasks-page-add-task-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tasks-page-add-task-button-empty{padding:12px 24px;font-size:15px;font-weight:600;margin-top:8px}.tasks-page-tasklist-wrapper{width:100%}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border-primary);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1024px){.tasks-page-container{max-width:100%;padding:20px 16px}.tasks-page-title{font-size:22px}.tasks-page-filter-section{padding:6px 8px;gap:10px}.tasks-page-search-toggle-button{height:36px;width:36px}.tasks-page-search-bar{padding:10px 14px;gap:10px}.tasks-page-search-bar-input{font-size:14px}.tasks-page-history-toggle-button{width:36px;height:36px}}@media(max-width:640px){.tasks-page-container{padding:16px 12px}.tasks-page-header{padding:10px 0;margin-bottom:12px}.tasks-page-title{font-size:20px}.tasks-page-content{gap:12px}.tasks-page-add-task-section{display:none}.tasks-page-loading-state,.tasks-page-error-state{padding:32px 16px;min-height:250px}.tasks-page-error-state p{font-size:14px}.tasks-page-error-state button{padding:9px 16px;font-size:13px}.tasks-page-empty-state{padding:36px 16px;min-height:250px}.tasks-page-empty-state-icon{font-size:48px;margin-bottom:12px}.tasks-page-empty-state-title{font-size:18px}.tasks-page-empty-state-description{font-size:13px;max-width:260px}.tasks-page-add-task-button{padding:9px 16px;font-size:13px}.tasks-page-add-task-button-empty{padding:10px 18px;font-size:14px;margin-top:6px}.tasks-page-filter-section{padding:6px 8px;gap:8px;flex-direction:column;align-items:stretch}.tasks-page-search-toggle-button{height:36px;width:100%;justify-content:center;gap:8px}.tasks-page-search-toggle-label{display:inline}.tasks-page-search-bar-container{box-shadow:none;border-radius:6px}.tasks-page-search-bar{padding:8px 12px;gap:8px}.tasks-page-search-bar-icon{width:16px;height:16px}.tasks-page-search-bar-input{font-size:14px}.tasks-page-search-bar-clear-button{width:24px;height:24px}.tasks-page-search-bar-clear-icon{width:14px;height:14px}}@media(min-width:641px){.tasks-page-fab{display:none}}@media(max-width:400px){.tasks-page-container{padding:12px 8px}.tasks-page-title{font-size:18px}.tasks-page-add-task-section{padding:10px 12px}.tasks-page-add-task-button{padding:8px 14px;font-size:12px}.tasks-page-loading-state,.tasks-page-error-state{padding:24px 12px;min-height:200px}.tasks-page-error-state p{font-size:13px;max-width:280px}.tasks-page-empty-state{padding:28px 12px;min-height:200px}.tasks-page-empty-state-icon{font-size:40px;margin-bottom:10px}.tasks-page-empty-state-title{font-size:16px}.tasks-page-empty-state-description{font-size:12px;max-width:220px}.tasks-page-add-task-button-empty{padding:9px 16px;font-size:13px;margin-top:4px}.tasks-page-filter-section{padding:5px 6px}.tasks-page-search-toggle-button{height:34px;width:34px}.tasks-page-search-bar{padding:8px 10px}.tasks-page-search-bar-input{font-size:13px}}@media(min-width:641px)and (max-width:900px){.tasks-page-container{padding:20px 24px}.tasks-page-title{font-size:22px}.tasks-page-add-task-section{padding:14px 18px}.tasks-page-filter-section{padding:8px 10px;gap:11px}.tasks-page-search-bar{padding:11px 15px}.tasks-page-search-toggle-button{height:38px;width:38px}}@media(min-width:1440px){.tasks-page-container{padding:32px 24px}.tasks-page-title{font-size:26px}.tasks-page-content{gap:20px}.tasks-page-loading-state,.tasks-page-error-state,.tasks-page-empty-state{padding:56px 24px;min-height:350px}}@media print{.tasks-page-container{padding:0;background:#fff;box-shadow:none;border:none;max-width:100%}.tasks-page-header,.tasks-page-add-task-section,.tasks-page-empty-state{display:none}}.tasks-page-filter-section{display:flex;align-items:center;justify-content:space-between;gap:12px;background-color:var(--color-surface-primary);border-radius:8px;border:1px solid var(--color-border-secondary);box-shadow:var(--shadow-sm);padding:8px 12px;width:100%}.tasks-page-filter-section .task-filter-presets-container{margin-bottom:0;background:transparent;border:none;box-shadow:none;border-radius:0;overflow:visible}.tasks-page-filter-section .task-filter-presets-scroll{overflow:visible}.tasks-page-search-toggle-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background-color:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border-primary);border-radius:6px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .1s ease;flex-shrink:0}.tasks-page-search-toggle-button:hover{background-color:var(--color-primary-hover);color:#fff;border-color:var(--color-primary-hover);transform:translateY(-1px)}.tasks-page-search-toggle-button[aria-pressed=true]{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.tasks-page-search-toggle-button[aria-pressed=true]:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.tasks-page-search-toggle-icon{width:20px;height:20px;flex-shrink:0}.tasks-page-search-toggle-label{display:none;font-size:13px;font-weight:500;line-height:1.2;white-space:nowrap}.tasks-page-search-bar-container{width:100%;background-color:var(--color-surface-primary);border-radius:8px;border:1px solid var(--color-border-secondary);box-shadow:var(--shadow-sm);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.tasks-page-search-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;width:100%}.tasks-page-search-bar-icon{width:18px;height:18px;color:var(--color-text-tertiary);flex-shrink:0}.tasks-page-search-bar-input{flex:1;background:transparent;border:none;outline:none;font-size:15px;font-family:inherit;color:var(--color-text-primary);padding:0;margin:0;font-weight:400}.tasks-page-search-bar-input::placeholder{color:var(--color-text-tertiary);opacity:.7}.tasks-page-search-bar-clear-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background-color:var(--color-bg-secondary);color:var(--color-text-secondary);border:none;border-radius:4px;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .1s ease;padding:0;flex-shrink:0}.tasks-page-search-bar-clear-button:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary);transform:scale(1.1)}.tasks-page-search-bar-clear-button:active{transform:scale(1);background-color:var(--color-bg-active)}.tasks-page-search-bar-clear-icon{width:16px;height:16px;flex-shrink:0}.tasks-page-filter-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.tasks-page-history-toggle-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background-color:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .1s ease,box-shadow .2s ease;box-shadow:0 1px 3px #6366f14d;flex-shrink:0}.tasks-page-history-toggle-button:hover{background-color:#4f46e5;transform:translateY(-1px);box-shadow:0 2px 6px #6366f166}.tasks-page-history-toggle-button.active{background-color:#4338ca;box-shadow:inset 0 2px 4px #0003}.tasks-page-history-toggle-button.active:hover{background-color:#3730a3}.tasks-page-history-toggle-button.disabled{background-color:var(--color-bg-secondary);color:var(--color-text-tertiary);cursor:not-allowed;border:1px solid var(--color-border-primary);box-shadow:none}.tasks-page-history-toggle-button.disabled:hover{background-color:var(--color-bg-secondary);transform:none;box-shadow:none}.tasks-page-history-toggle-icon{width:20px;height:20px;flex-shrink:0}.tasks-page-history-toggle-label{display:none;font-size:13px;font-weight:500;line-height:1.2;white-space:nowrap}.tasks-page-search-toggle-button.disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-bg-secondary);color:var(--color-text-tertiary)}.tasks-page-search-toggle-button.disabled:hover{background-color:var(--color-bg-secondary);color:var(--color-text-tertiary);transform:none}.tasks-page-history-wrapper{width:100%;min-height:400px;background-color:var(--color-surface-primary);border-radius:8px;border:1px solid var(--color-border-secondary);box-shadow:var(--shadow-sm);animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.tasks-page-filter-actions{width:100%;gap:8px}.tasks-page-history-toggle-button{width:36px;height:36px}.tasks-page-history-toggle-icon{width:18px;height:18px}}@media(max-width:400px){.tasks-page-filter-actions{gap:6px}.tasks-page-history-toggle-button{width:34px;height:34px}.tasks-page-history-toggle-icon{width:16px;height:16px}}@media(min-width:641px)and (max-width:900px){.tasks-page-filter-actions{gap:10px}.tasks-page-history-toggle-button{width:38px;height:38px}}.okm-page{display:flex;flex-direction:column;gap:1.5rem;padding:2rem;min-height:calc(100vh - 60px);width:100%;max-width:100%;overflow-x:hidden;background-color:var(--color-bg-primary)}.okm-container{max-width:1200px;margin:0 auto;width:100%}.okm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.okm-header-left{display:flex;flex-direction:column;gap:.25rem}.okm-title{margin:0;font-size:1.75rem;font-weight:700;color:var(--color-text-primary)}.okm-subtitle{margin:0;font-size:1rem;color:var(--color-text-secondary)}.okm-header-right{display:flex;align-items:center;gap:1rem}.okm-date-selector{display:flex;align-items:center;gap:.5rem}.okm-date-label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.okm-date-input{padding:.5rem .75rem;border:1px solid var(--color-border-primary);border-radius:6px;font-size:.875rem;background:var(--color-bg-primary);color:var(--color-text-primary);transition:all .2s ease}.okm-date-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.okm-alerts{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.okm-conflict-errors{background:var(--color-error-subtle);border:2px solid var(--color-error);border-radius:12px;padding:1.25rem;margin-bottom:1.25rem;box-shadow:var(--shadow-md)}.okm-conflict-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.okm-conflict-icon{font-size:1.5rem;flex-shrink:0}.okm-conflict-title{margin:0;font-size:1.125rem;font-weight:700;color:var(--color-error)}.okm-conflict-list{display:flex;flex-direction:column;gap:.75rem}.okm-conflict-item{display:flex;gap:.75rem;background:var(--color-surface-primary);border:1px solid var(--color-error);border-radius:8px;padding:.875rem;align-items:flex-start}.okm-conflict-badge{flex-shrink:0;padding:.25rem .625rem;background:var(--color-error);color:#fff;border-radius:9999px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.025em;white-space:nowrap}.okm-conflict-message{font-size:.9375rem;color:var(--color-text-primary);line-height:1.5}.okm-conflict-close{margin-top:1rem;width:100%;padding:.625rem 1rem;background:var(--color-error);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s ease}.okm-conflict-close:hover{background:#d32f2f}.okm-missing-receivers-section{background:var(--color-warning-subtle);border:2px solid var(--color-warning);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:var(--shadow-md)}.okm-missing-receivers-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.okm-missing-receivers-icon{font-size:1.25rem;flex-shrink:0}.okm-missing-receivers-title{margin:0;font-size:1.125rem;font-weight:700;color:var(--color-warning)}.okm-missing-receivers-text{margin:0 0 1rem;font-size:.9375rem;color:var(--color-text-primary);line-height:1.5}.okm-missing-receivers-text strong{font-weight:600;color:var(--color-warning)}.okm-missing-receivers-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.okm-missing-receiver-card{display:flex;justify-content:space-between;align-items:center;background:var(--color-surface-primary);border:1px solid var(--color-warning);border-radius:8px;padding:.75rem 1rem;transition:all .2s ease}.okm-missing-receiver-card:hover{box-shadow:var(--shadow-sm);border-color:var(--color-warning);transform:translate(4px)}.okm-missing-receiver-name{font-size:.9375rem;font-weight:600;color:var(--color-text-primary)}.okm-missing-receiver-badge{padding:.25rem .75rem;background:var(--color-warning);color:#fff;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.okm-alert{display:flex;gap:.75rem;align-items:flex-start;padding:1rem;border-radius:8px;font-size:.875rem}.okm-alert-warning{background:var(--color-warning-subtle);border:1px solid var(--color-warning);color:var(--color-warning)}.okm-alert-error{background:var(--color-error-subtle);border:1px solid var(--color-error);color:var(--color-error)}.okm-alert-info{background:var(--color-primary-subtle);border:1px solid var(--color-primary);color:var(--color-primary)}.okm-alert-icon{flex-shrink:0;font-size:1rem}.okm-alert-message{flex:1}.okm-progress{background:var(--color-surface-primary);border-radius:12px;padding:1.25rem;box-shadow:var(--shadow-sm);margin-bottom:1.5rem}.okm-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.okm-progress-label{font-size:.9375rem;font-weight:600;color:var(--color-text-primary)}.okm-progress-value{font-size:.875rem;color:var(--color-text-secondary)}.okm-progress-bar{height:.5rem;background:var(--color-bg-tertiary);border-radius:9999px;overflow:hidden}.okm-progress-fill{height:100%;background:var(--color-primary);border-radius:9999px;transition:width .3s ease}.okm-tabs{display:flex;gap:.25rem;background:var(--color-surface-primary);padding:.375rem;border-radius:10px;box-shadow:var(--shadow-sm);margin-bottom:1.5rem}.okm-tab{flex:1;padding:.75rem 1rem;border:none;background:transparent;border-radius:8px;cursor:pointer;font-size:.9375rem;font-weight:500;color:var(--color-text-secondary);transition:all .2s ease}.okm-tab:hover{color:var(--color-text-primary);background:var(--color-bg-tertiary)}.okm-tab-active{background:var(--color-primary);color:#fff}.okm-tab-active:hover{color:#fff;background:var(--color-primary-hover)}.okm-tab-content{width:100%}.okm-sessions-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.okm-list-title{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.okm-session-card{display:flex;align-items:center;padding:1rem;background:var(--color-surface-primary);border:1px solid var(--color-border-primary);border-radius:12px;gap:1rem;transition:all .2s ease}.okm-session-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary)}.okm-session-time{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:70px}.okm-session-clock{font-size:1rem;font-weight:600;color:var(--color-text-primary)}.okm-session-duration{font-size:.75rem;color:var(--color-text-tertiary)}.okm-session-participants{display:flex;align-items:center;gap:.75rem;flex:1}.okm-session-giver,.okm-session-receiver{display:flex;flex-direction:column;gap:.125rem}.okm-session-role{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);font-weight:600}.okm-session-name{font-size:.9375rem;font-weight:600;color:var(--color-text-primary)}.okm-session-arrow{color:var(--color-text-tertiary);font-size:.875rem}.okm-session-description{flex:1;font-size:.8125rem;color:var(--color-text-secondary);font-style:italic}.okm-session-status{display:flex;gap:.5rem}.okm-status{padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:600}.okm-status-completed{background:var(--color-success-subtle);color:var(--color-success)}.okm-status-pending{background:var(--color-warning-subtle);color:var(--color-warning)}.okm-status-planned{background:var(--color-primary-subtle);color:var(--color-primary)}.okm-session-delete{padding:.5rem;border:none;background:transparent;cursor:pointer;font-size:1rem;color:var(--color-text-tertiary);border-radius:6px;transition:all .2s ease}.okm-session-delete:hover{color:var(--color-error);background:var(--color-error-subtle)}.okm-session-form,.okm-recording-form{background:var(--color-surface-primary);border:1px solid var(--color-border-primary);padding:1.5rem;border-radius:12px;margin-bottom:1.5rem}.okm-form-title{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.okm-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.okm-form-group{margin-bottom:1rem}.okm-form-group:last-child{margin-bottom:0}.okm-form-label{display:block;margin-bottom:.375rem;font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.okm-form-input,.okm-form-select,.okm-form-textarea{width:100%;padding:.625rem .75rem;border:1px solid var(--color-border-primary);border-radius:8px;font-size:.9375rem;background:var(--color-bg-primary);color:var(--color-text-primary);transition:all .2s ease}.okm-form-input:focus,.okm-form-select:focus,.okm-form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.okm-form-textarea{resize:vertical;min-height:80px}.okm-form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.okm-add-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease}.okm-add-button:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.okm-button{padding:.625rem 1.25rem;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease}.okm-button-primary{background:var(--color-primary);color:#fff}.okm-button-primary:hover:not(:disabled){background:var(--color-primary-hover)}.okm-button-primary:disabled{background:var(--color-text-tertiary);cursor:not-allowed;opacity:.5}.okm-button-cancel{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.okm-button-cancel:hover{background:var(--color-border-primary)}.okm-execute-tab{display:flex;flex-direction:column;gap:1rem}.okm-recording-info{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem;background:var(--color-primary-subtle);border:1px solid var(--color-primary);border-radius:8px}.okm-recording-participants{font-size:1rem;font-weight:600;color:var(--color-text-primary)}.okm-recording-sep{color:var(--color-text-tertiary)}.okm-execute-card{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--color-surface-primary);border:1px solid var(--color-border-primary);border-radius:12px;gap:1rem;transition:all .2s ease}.okm-execute-card-pending{border-left:4px solid var(--color-warning)}.okm-execute-card-completed{border-left:4px solid var(--color-success)}.okm-execute-time,.okm-execute-participants,.okm-actual-info,.okm-execute-actions{display:flex;align-items:center;gap:.5rem}.okm-execute-clock,.okm-execute-duration,.okm-actual-duration{font-size:.875rem;color:var(--color-text-secondary)}.okm-participant{font-size:.9375rem;font-weight:600;color:var(--color-text-primary)}.okm-participant-sep{color:var(--color-text-tertiary)}.okm-actual-status-pending{color:var(--color-warning);font-weight:500}.okm-actual-status-completed{color:var(--color-success);font-weight:500}.okm-analysis-tab{display:flex;flex-direction:column;gap:1.5rem}.okm-alerts-section,.okm-stats-section{background:var(--color-surface-primary);border:1px solid var(--color-border-primary);padding:1.5rem;border-radius:12px}.okm-section-title{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.okm-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;margin-bottom:1rem}.okm-stat-card{padding:.5rem .75rem;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:6px;text-align:center;transition:all .2s ease}.okm-stat-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.okm-stat-card-warning{background:var(--color-warning-subtle);border-color:var(--color-warning)}.okm-stat-label{font-size:.6875rem;color:var(--color-text-secondary);margin-bottom:.25rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em}.okm-stat-value{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);line-height:1.2}.okm-user-stats{margin-top:1.5rem}.okm-user-stats-title{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:var(--color-text-primary)}.okm-user-stats-list{display:flex;flex-direction:column;gap:.75rem}.okm-user-stat-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:8px}.okm-user-name{font-weight:600;font-size:.9375rem;color:var(--color-text-primary)}.okm-user-details{display:flex;gap:1rem}.okm-user-detail{font-size:.875rem;color:var(--color-text-secondary)}.okm-missing-receivers{padding:1rem;background:var(--color-warning-subtle);border:1px solid var(--color-warning);border-radius:8px;margin-top:1rem}.okm-missing-title{margin:0 0 .5rem;font-size:.9375rem;font-weight:600;color:var(--color-warning)}.okm-missing-text{margin:0;font-size:.875rem;color:var(--color-warning)}.okm-plan-empty,.okm-execute-empty,.okm-analysis-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.okm-empty-icon{font-size:3rem;margin-bottom:.75rem;opacity:.5}.okm-empty-title{margin:.75rem 0 .5rem;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.okm-empty-text{margin:0;font-size:.9375rem;color:var(--color-text-secondary)}.okm-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.okm-loading-spinner{width:2.5rem;height:2.5rem;border:3px solid var(--color-bg-tertiary);border-top-color:var(--color-primary);border-radius:50%;animation:okm-spin 1s linear infinite}@keyframes okm-spin{to{transform:rotate(360deg)}}.okm-analysis-loading,.okm-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem}@media(max-width:768px){.okm-page{padding:1rem}.okm-header{flex-direction:column;align-items:flex-start}.okm-header-right{width:100%;justify-content:flex-start}.okm-title{font-size:1.5rem}.okm-tabs{flex-direction:column}.okm-form-row{grid-template-columns:1fr}.okm-session-card{flex-direction:column;align-items:flex-start}.okm-session-participants{flex-direction:column;align-items:flex-start;gap:.5rem}.okm-execute-card{flex-direction:column;align-items:flex-start}.okm-execute-time,.okm-execute-participants,.okm-actual-info,.okm-execute-actions{width:100%;justify-content:space-between}.okm-stats-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}@media(max-width:480px){.okm-page,.okm-session-card{padding:.75rem}.okm-stats-grid{grid-template-columns:1fr 1fr;gap:.375rem}}.issues-page-form-section{background-color:var(--color-surface-primary);border:1px solid var(--color-border-primary);border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}.issues-page-form-title{margin:0 0 1rem;font-size:1.5rem;font-weight:600;color:var(--color-text-primary)}.issues-page-form-container{display:flex;flex-direction:column;gap:1rem}.issues-page-form-field-container{display:flex;flex-direction:column;gap:.5rem}.issues-page-form-textarea{width:100%;padding:.75rem;font-size:1rem;line-height:1.5;color:var(--color-text-primary);background-color:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:8px;resize:vertical;min-height:100px;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.issues-page-form-textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-subtle)}.issues-page-form-textarea:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed;opacity:.6}.issues-page-form-char-counter{text-align:right;font-size:.85rem;color:var(--color-text-tertiary);font-weight:500}.issues-page-form-char-counter .warning{color:var(--color-warning)}.issues-page-form-error{padding:.75rem 1rem;background-color:var(--color-error-subtle);border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:.9rem;font-weight:500}.issues-page-form-submit-button{padding:.75rem 1.5rem;font-size:1rem;font-weight:600;color:var(--color-text-inverse);background-color:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.issues-page-form-submit-button:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.issues-page-form-submit-button:active:not(:disabled){transform:translateY(0);background-color:var(--color-primary-active)}.issues-page-form-submit-button:disabled{background-color:var(--color-bg-tertiary);color:var(--color-text-tertiary);cursor:not-allowed;transform:none;box-shadow:none}@media(max-width:640px){.issues-page-form-section{padding:1rem}.issues-page-form-title{font-size:1.25rem}.issues-page-form-textarea{font-size:.95rem}.issues-page-form-submit-button{width:100%}}.issues-page-issue-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;background-color:var(--color-surface-primary);border:1px solid var(--color-border-primary);border-radius:8px;margin-bottom:.75rem;transition:box-shadow .2s ease,border-color .2s ease}.issues-page-issue-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-focus)}.issues-page-issue-card-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.5rem}.issues-page-issue-card-text{margin:0;font-size:1rem;line-height:1.5;color:var(--color-text-primary);word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap}.issues-page-issue-card-edit-textarea{width:100%;padding:.75rem;font-size:1rem;line-height:1.5;color:var(--color-text-primary);background-color:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:6px;resize:vertical;min-height:100px;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.issues-page-issue-card-edit-textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-subtle)}.issues-page-issue-card-edit-textarea:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed;opacity:.6}.issues-page-issue-card-dates{display:flex;flex-direction:column;gap:.25rem}.issues-page-issue-card-date{margin:0;font-size:.8rem;color:var(--color-text-tertiary);font-weight:500;line-height:1.3}.issues-page-issue-card-actions{display:flex;gap:.5rem;flex-shrink:0;flex-wrap:wrap}.issues-page-issue-card-action-button{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid var(--color-border-primary);border-radius:6px;background-color:var(--color-surface-primary);color:var(--color-text-primary);font-size:1.1rem;cursor:pointer;transition:all .2s ease}.issues-page-issue-card-action-button:hover:not(:disabled){background-color:var(--color-bg-tertiary);border-color:var(--color-border-secondary);transform:translateY(-1px)}.issues-page-issue-card-action-button:active:not(:disabled){transform:translateY(0)}.issues-page-issue-card-action-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.issues-page-issue-card-edit-button{border-color:var(--color-secondary);color:var(--color-secondary)}.issues-page-issue-card-edit-button:hover:not(:disabled){background-color:var(--color-bg-tertiary);border-color:var(--color-secondary-hover)}.issues-page-issue-card-save-button{border-color:var(--color-success);color:var(--color-success)}.issues-page-issue-card-save-button:hover:not(:disabled){background-color:var(--color-success-subtle)}.issues-page-issue-card-cancel-button{border-color:var(--color-secondary);color:var(--color-secondary)}.issues-page-issue-card-cancel-button:hover:not(:disabled){background-color:var(--color-bg-tertiary);border-color:var(--color-secondary-hover)}.issues-page-issue-card-archive-button.issues-page-issue-card-button-archive{border-color:var(--color-warning);color:var(--color-warning)}.issues-page-issue-card-archive-button.issues-page-issue-card-button-archive:hover:not(:disabled){background-color:var(--color-warning-subtle)}.issues-page-issue-card-archive-button.issues-page-issue-card-button-unarchive{border-color:var(--color-success);color:var(--color-success)}.issues-page-issue-card-archive-button.issues-page-issue-card-button-unarchive:hover:not(:disabled){background-color:var(--color-success-subtle)}.issues-page-issue-card-delete-button{border-color:var(--color-error);color:var(--color-error)}.issues-page-issue-card-delete-button:hover:not(:disabled){background-color:var(--color-error-subtle)}.issues-page-issue-card-button-loading{font-size:1rem}@media(max-width:640px){.issues-page-issue-card{flex-direction:column;gap:.75rem}.issues-page-issue-card-content{width:100%}.issues-page-issue-card-actions{width:100%;justify-content:flex-end}}.issues-page-list-container{display:flex;flex-direction:column;gap:2rem;width:100%}.issues-page-section{display:flex;flex-direction:column;gap:1rem}.issues-page-section-archived{opacity:.85}.issues-page-section-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary);border-bottom:2px solid var(--color-border-primary);padding-bottom:.5rem}.issues-page-cards-container{display:flex;flex-direction:column;gap:.75rem}.issues-page-loading-message{text-align:center;color:var(--color-text-tertiary);font-style:italic;font-size:1rem;padding:2rem}.issues-page-error-message{padding:1rem;background-color:var(--color-error-subtle);border:1px solid var(--color-error);border-radius:8px;color:var(--color-error);font-size:1rem}.issues-page-error-message strong{display:block;margin-bottom:.25rem}.issues-page-empty-state{text-align:center;padding:3rem 1.5rem;background-color:var(--color-bg-tertiary);border:2px dashed var(--color-border-primary);border-radius:12px}.issues-page-empty-state-text{margin:0;font-size:1.1rem;color:var(--color-text-tertiary);line-height:1.6}.issues-page-container{max-width:900px;margin:0 auto;padding:2rem 1rem;width:100%;display:flex;flex-direction:column;gap:2rem}.issues-page-header{text-align:center;padding-bottom:1.5rem;border-bottom:2px solid var(--color-border-primary)}.issues-page-page-title{margin:0 0 .5rem;font-size:2rem;font-weight:700;color:var(--color-text-primary);letter-spacing:-.025em}.issues-page-subtitle{font-size:1.1rem;color:var(--color-text-secondary);line-height:1.5;max-width:600px;margin:0 auto}@media(max-width:640px){.issues-page-container{padding:1rem .75rem;gap:1.5rem}.issues-page-header{padding-bottom:1rem}.issues-page-page-title{font-size:1.5rem}.issues-page-subtitle{font-size:1rem}}.settings-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 70px);padding:2rem 1rem;background-color:var(--color-bg-primary)}.settings-container{width:100%;max-width:700px;display:flex;flex-direction:column;gap:2rem}.settings-page-header{text-align:center;margin-bottom:1rem}.settings-page-title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem}.settings-page-subtitle{font-size:1rem;color:var(--color-text-secondary);margin:0}.settings-section{display:flex;flex-direction:column;gap:1.5rem}.settings-section-title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0}.settings-section-icon{width:24px;height:24px;color:var(--color-primary)}.settings-card{background-color:var(--color-surface-primary);border-radius:12px;box-shadow:var(--shadow-md);padding:1.5rem}.settings-theme-card{display:flex;flex-direction:column;gap:1.5rem}.settings-current-theme{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border-primary)}.settings-current-theme-label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.settings-current-theme-value{font-size:1rem;font-weight:600;color:var(--color-text-primary)}.settings-theme-value-auto{color:var(--color-primary)}.settings-theme-value-light{color:#f39c12}.settings-theme-value-dark{color:#8e44ad}.settings-theme-options{display:flex;flex-direction:column;gap:.75rem}.settings-theme-button{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start;padding:1rem;background-color:var(--color-bg-secondary);border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease}.settings-theme-button:hover:not(:disabled){border-color:var(--color-border-secondary);background-color:var(--color-bg-tertiary)}.settings-theme-button-active{border-color:var(--color-primary);background-color:var(--color-primary-subtle)}.settings-theme-button:disabled{opacity:.6;cursor:not-allowed}.settings-theme-button-icon{width:20px;height:20px;color:var(--color-primary);margin-bottom:.25rem}.settings-theme-button-label{font-size:1rem;font-weight:600;color:var(--color-text-primary)}.settings-theme-button-description{font-size:.875rem;color:var(--color-text-secondary)}.settings-password-change-card{display:flex;flex-direction:column;gap:1.5rem}.settings-password-change-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0}.settings-password-change-description{font-size:.875rem;color:var(--color-text-secondary);margin:0}.settings-password-form{display:flex;flex-direction:column;gap:1.25rem}.settings-password-input-container{display:flex;flex-direction:column;gap:.5rem;position:relative}.settings-password-input-label{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.settings-password-input{width:100%;padding:.875rem 3rem .875rem 1rem;font-size:1rem;color:var(--color-text-primary);background-color:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:8px;transition:all .2s ease}.settings-password-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3498db1a}.settings-password-input:disabled{opacity:.6;cursor:not-allowed}.settings-password-toggle-button{position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:20px;height:20px;padding:0;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.settings-password-toggle-button:hover{color:var(--color-primary)}.settings-password-toggle-button:disabled{opacity:.4;cursor:not-allowed}.settings-password-error{font-size:.75rem;color:var(--color-error);margin:-.25rem 0 0}.settings-password-hint{font-size:.75rem;color:var(--color-text-secondary);margin:-.25rem 0 0}.settings-password-strength{display:flex;gap:.25rem;margin-top:.25rem}.settings-password-strength-bar{flex:1;height:4px;border-radius:2px;background-color:var(--color-border-primary);transition:background-color .2s ease}.settings-password-strength-bar-weak{background-color:var(--color-error)}.settings-password-strength-bar-medium{background-color:#f39c12}.settings-password-strength-bar-strong{background-color:#27ae60}.settings-password-strength-text{font-size:.75rem;color:var(--color-text-secondary);margin-top:.25rem}.settings-password-requirements{font-size:.75rem;color:var(--color-text-secondary);margin-top:.5rem}.settings-password-submit-button{width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;color:var(--color-text-inverse);background-color:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.settings-password-submit-button:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.settings-password-submit-button:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.settings-password-submit-button:disabled{opacity:.6;cursor:not-allowed}.settings-logout-card{display:flex;flex-direction:column;gap:1.5rem}.settings-logout-content{display:flex;flex-direction:column;gap:.75rem}.settings-logout-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0}.settings-logout-description{font-size:.875rem;color:var(--color-text-secondary);margin:0}.settings-logout-button{width:fit-content;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;color:var(--color-error);background-color:transparent;border:2px solid var(--color-error);border-radius:8px;cursor:pointer;transition:all .2s ease}.settings-logout-button:hover:not(:disabled){background-color:var(--color-error);color:var(--color-text-inverse)}.settings-logout-button:active:not(:disabled){transform:scale(.98)}.settings-logout-button:disabled{opacity:.6;cursor:not-allowed}.settings-message{padding:1rem;font-size:.875rem;border-radius:8px;text-align:center}.settings-message-success{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.settings-message-error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}@media(max-width:768px){.settings-page{padding:1rem .5rem}.settings-container{gap:1.5rem}.settings-page-title{font-size:1.5rem}.settings-theme-current-theme{flex-direction:column;align-items:flex-start;gap:.5rem}}.dashboard-tiles{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:1rem;max-width:100%;width:100%}.family-meeting-tile{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:400px;background-color:var(--color-surface-primary, #ffffff);border:1px solid var(--color-border-primary, #dee2e6);border-radius:12px;padding:1.25rem;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .08));transition:box-shadow .2s ease,border-color .2s ease,background-color .2s ease}.family-meeting-tile:hover{box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1))}.family-meeting-tile-header{display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--color-border-secondary, #e9ecef);padding-bottom:.75rem}.family-meeting-tile-icon{width:24px;height:24px;color:var(--color-primary, #339af0);flex-shrink:0}.family-meeting-tile-title{font-size:1rem;font-weight:600;color:var(--color-text-primary, #212529);margin:0;line-height:1.2}.family-meeting-tile-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;min-height:40px}.family-meeting-tile-date{font-size:1rem;font-weight:500;color:var(--color-text-primary, #212529);text-align:center;margin:0;cursor:help;user-select:none;-webkit-user-select:none;transition:color .2s ease}.family-meeting-tile-date:hover{color:var(--color-primary, #339af0)}.family-meeting-tile-date-tooltip{position:fixed;z-index:1000;background-color:var(--color-surface-elevated, #1a1a1a);color:var(--color-text-on-primary, #ffffff);border-radius:8px;padding:.5rem .75rem;font-size:.875rem;font-weight:500;line-height:1.4;white-space:nowrap;box-shadow:0 4px 12px #0003;transform:translate(-50%) translateY(calc(-100% - 8px));animation:tooltipFadeIn .2s ease-out}.family-meeting-tile-date-tooltip:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid var(--color-surface-elevated, #1a1a1a)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(calc(-100% - 4px))}to{opacity:1;transform:translate(-50%) translateY(calc(-100% - 8px))}}.family-meeting-tile-description{font-size:.9rem;color:var(--color-text-secondary, #495057);text-align:center;line-height:1.5;margin:0;overflow-wrap:break-word}.family-meeting-tile-warning{font-size:.85rem;font-weight:600;color:#d62246;text-align:center;margin:0;padding:.25rem .5rem;background-color:#d622461a;border-radius:4px}.family-meeting-tile-empty{font-size:.9rem;color:var(--color-text-tertiary, #868e96);text-align:center;margin:0;font-style:italic}.theme-dark .family-meeting-tile{border-color:var(--color-border-primary, #30363d)}.theme-dark .family-meeting-tile-header{border-color:var(--color-border-secondary, #21262d)}.theme-dark .family-meeting-tile-title,.theme-dark .family-meeting-tile-date{color:var(--color-text-primary, #e6edf3)}.theme-dark .family-meeting-tile-date:hover{color:var(--color-primary, #58a6ff)}.theme-dark .family-meeting-tile-date-tooltip{background-color:var(--color-surface-elevated, #30363d);box-shadow:0 4px 12px #0006}.theme-dark .family-meeting-tile-date-tooltip:after{border-top-color:var(--color-surface-elevated, #30363d)}.theme-dark .family-meeting-tile-description{color:var(--color-text-secondary, #b1bac4)}.theme-dark .family-meeting-tile-warning{color:#ff7b72;background-color:#ff7b7226}.theme-dark .family-meeting-tile-empty{color:var(--color-text-tertiary, #6e7681)}.theme-dark .family-meeting-tile-placeholder-text{color:var(--color-text-secondary, #b1bac4)}.theme-dark .family-meeting-tile-todo{background-color:#d2992233;color:#d29922}.theme-dark .family-meeting-tile-hint{color:var(--color-text-tertiary, #6e7681)}@media(max-width:480px){.dashboard-tiles{padding:.75rem 1rem}.family-meeting-tile{padding:1rem;max-width:100%;margin:0 auto}.family-meeting-tile-title{font-size:.95rem}.family-meeting-tile-date{font-size:1rem}.family-meeting-tile-description{font-size:.85rem}.family-meeting-tile-warning{font-size:.8rem}.family-meeting-tile-empty{font-size:.85rem}}@media(prefers-contrast:high){.family-meeting-tile{border-width:2px}}@media(prefers-reduced-motion:reduce){.family-meeting-tile,.family-meeting-tile:hover{transition:none;animation:none}}.weekly-completion-stats{background-color:var(--color-surface-primary, #ffffff);border:1px solid var(--color-border-primary, #dee2e6);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1));margin:0;width:100%;max-width:400px;transition:var(--theme-transition)}.weekly-completion-stats-header{margin-bottom:1.5rem}.weekly-completion-stats-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary, #212529);margin:0 0 .5rem;transition:var(--theme-transition)}.weekly-completion-stats-subtitle{font-size:.875rem;color:var(--color-text-secondary, #495057);margin:0;transition:var(--theme-transition)}.weekly-completion-stats-loading,.weekly-completion-stats-error,.weekly-completion-stats-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;text-align:center}.loading-spinner-small{width:24px;height:24px;border:3px solid var(--color-border-primary, #dee2e6);border-top:3px solid var(--color-primary, #339af0);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:.75rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text-small,.error-text,.weekly-completion-stats-empty-text{font-size:.875rem;color:var(--color-text-secondary, #495057);margin:0;transition:var(--theme-transition)}.error-text{color:var(--color-error, #fa5252)}.weekly-completion-stats-list{display:flex;flex-direction:column;gap:1rem}.weekly-completion-stats-item{display:flex;flex-direction:column;gap:.5rem}.weekly-completion-stats-user-info{display:flex;align-items:center;gap:1rem}.weekly-completion-stats-user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:var(--color-text-inverse, #ffffff);font-weight:600;font-size:1.125rem;flex-shrink:0}.weekly-completion-stats-user-details{flex:1}.weekly-completion-stats-user-name{font-size:.875rem;font-weight:500;color:var(--color-text-primary, #212529);margin:0;transition:var(--theme-transition)}.weekly-completion-stats-completion-count{font-size:.75rem;color:var(--color-text-secondary, #495057);margin:.25rem 0 0;transition:var(--theme-transition)}.weekly-completion-stats-completion-count strong{color:var(--color-primary, #339af0);font-size:.875rem;transition:var(--theme-transition)}.weekly-completion-stats-bar-container{width:100%;height:8px;background-color:var(--color-bg-tertiary, #e9ecef);border-radius:4px;overflow:hidden;transition:var(--theme-transition)}.weekly-completion-stats-bar{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;transition:width .3s ease-in-out}
