.login-page{--background: var(--ion-background-color)}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;padding:24px}.login-header{text-align:center;margin-bottom:32px}.login-logo{font-size:64px;margin-bottom:16px}.login-title{font-family:var(--kff-heading-font);font-size:28px;font-weight:700;color:var(--ion-text-color);margin:0 0 8px}.login-subtitle{font-family:var(--kff-data-font);font-size:14px;color:var(--ion-color-medium);margin:0}.login-card{width:100%;max-width:400px;padding:24px!important}.login-form{display:flex;flex-direction:column;gap:16px}.login-error{background:rgba(var(--ion-color-danger-rgb),.1);border:1px solid var(--ion-color-danger);border-radius:8px;padding:12px 16px;margin-bottom:16px;font-family:var(--kff-data-font);font-size:14px;color:var(--ion-color-danger)}.login-message{background:rgba(var(--ion-color-success-rgb),.1);border:1px solid var(--ion-color-success);border-radius:8px;padding:12px 16px;margin-bottom:16px;font-family:var(--kff-data-font);font-size:14px;color:var(--ion-color-success)}.login-divider{display:flex;align-items:center;gap:16px;margin:8px 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--ion-border-color)}.login-divider span{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.05em}.login-footer{margin-top:16px;text-align:center}.login-link{background:none;border:none;font-family:var(--kff-data-font);font-size:14px;color:var(--kff-foundry-blue);cursor:pointer;padding:0}.login-link:hover{text-decoration:underline}.login-terms{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);text-align:center;margin-top:24px;max-width:400px}[data-layout=PageShell] ion-content{--padding-top: 16px}.layout-col{flex:var(--col-mobile-flex);max-width:var(--col-mobile-max-width)}@media (min-width: 768px){.layout-col{flex:var(--col-tablet-flex);max-width:var(--col-tablet-max-width)}}@media (min-width: 992px){.layout-col{flex:var(--col-desktop-flex);max-width:var(--col-desktop-max-width)}}:root{--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--container-sm: 600px;--container-md: 960px;--container-lg: 1280px;--container-xl: 1440px}.home-hero__greeting{font-family:var(--kff-heading-font);font-size:28px;font-weight:700;color:var(--ion-text-color);margin:0;line-height:1.2}.home-hero__date{font-family:var(--kff-data-font);font-size:15px;color:var(--ion-color-medium);margin:0}.stat-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 12px;background:var(--ion-card-background);border-radius:12px;border:1px solid var(--ion-border-color);transition:transform .15s ease,box-shadow .15s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.stat-card__icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px}.stat-card__content{text-align:center}.stat-card__value{font-family:var(--kff-heading-font);font-size:22px;font-weight:700;color:var(--ion-text-color);line-height:1.1}.stat-card__label{font-family:var(--kff-data-font);font-size:11px;font-weight:500;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.03em;margin-top:4px}.stat-card__subvalue{font-family:var(--kff-data-font);font-size:11px;color:var(--ion-color-medium);margin-top:2px}.chore-preview-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--ion-color-step-50);border-radius:10px;transition:opacity .15s ease}.chore-preview-item.completed{opacity:.6}.chore-preview-item__icon{font-size:24px;flex-shrink:0}.chore-preview-item__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.chore-preview-item__name{font-family:var(--kff-heading-font);font-size:14px;font-weight:600;color:var(--ion-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chore-preview-item.completed .chore-preview-item__name{text-decoration:line-through}.chore-preview-item__assignee{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium)}.chore-preview-item__check{font-size:22px;color:var(--ion-color-success);flex-shrink:0}.chores-preview__more{text-align:center;font-family:var(--kff-data-font);font-size:13px;color:var(--ion-color-medium);padding:8px 0 4px}.home-actions__title{font-family:var(--kff-heading-font);font-size:16px;font-weight:600;color:var(--ion-text-color);margin:0}.home-speed-dial{bottom:80px;right:16px}.home-speed-dial ion-fab-button{--background: var(--kff-foundry-blue);--color: white;--box-shadow: 0 4px 16px rgba(0, 0, 0, .25);transition:transform .2s ease}.home-speed-dial ion-fab-button.fab-open{--background: var(--ion-color-medium)}.home-speed-dial ion-fab-list ion-fab-button{--background: var(--ion-card-background);--color: var(--ion-text-color);--box-shadow: 0 2px 12px rgba(0, 0, 0, .15);position:relative}.home-speed-dial ion-fab-list ion-fab-button:hover{--background: var(--ion-color-step-100)}.home-speed-dial ion-fab-list ion-fab-button:before{content:attr(data-desc);position:absolute;right:56px;top:50%;transform:translateY(-50%);background:var(--ion-card-background);color:var(--ion-text-color);padding:6px 12px;border-radius:6px;font-family:var(--kff-data-font);font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 2px 8px #00000026;pointer-events:none;opacity:1;transition:opacity .15s ease}.home-speed-dial ion-fab-list ion-fab-button:nth-child(1){--color: var(--ion-color-primary)}.home-speed-dial ion-fab-list ion-fab-button:nth-child(2){--color: var(--ion-color-success)}.home-speed-dial ion-fab-list ion-fab-button:nth-child(3){--color: var(--kff-foundry-blue)}.home-speed-dial ion-fab-list ion-fab-button:nth-child(4){--color: var(--kff-forge-gold)}.fab-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;z-index:999;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.home-speed-dial{bottom:90px;right:12px}.home-speed-dial ion-fab-list ion-fab-button:before{font-size:11px;padding:5px 10px;right:50px}}.dashboard-editor{--ion-background-color: var(--ion-background-color)}.dashboard-icon{font-size:24px;margin-right:12px}.dashboard-content{padding-bottom:80px}.template-card{display:flex;flex-direction:column;align-items:center;padding:16px;background:var(--ion-background-color);border-radius:12px;cursor:pointer;transition:all .2s;text-align:center;border:1px solid transparent}.template-card:hover{background:rgba(var(--kff-foundry-blue-rgb),.1);border-color:var(--kff-foundry-blue);transform:translateY(-2px)}.template-card .template-icon{font-size:32px;margin-bottom:8px}.template-card .template-name{font-size:14px;font-weight:500;font-family:var(--kff-heading-font);color:var(--ion-text-color);margin-bottom:4px}.template-card .template-desc{font-size:11px;font-family:var(--kff-data-font);color:var(--ion-color-medium)}.template-list{display:flex;flex-direction:column;gap:12px;padding:16px}.template-option{display:flex;align-items:center;gap:16px;padding:16px;background:var(--ion-color-step-50);border-radius:12px;cursor:pointer;transition:all .2s;border:2px solid transparent}.template-option:hover{background:rgba(var(--kff-foundry-blue-rgb),.1)}.template-option.selected{border-color:var(--kff-forge-gold);background:rgba(var(--kff-forge-gold-rgb),.1)}.template-option .template-icon{font-size:32px;width:48px;text-align:center}.template-option .template-info{flex:1}.template-option .template-info h3{font-size:16px;font-family:var(--kff-heading-font);font-weight:600;margin:0 0 4px;color:var(--ion-text-color)}.template-option .template-info p{font-size:13px;font-family:var(--kff-data-font);margin:0;color:var(--ion-color-medium)}.template-option .template-widgets{font-size:11px;font-family:var(--kff-data-font);color:var(--kff-forge-gold);margin-top:4px}.widget-grid{display:flex;flex-direction:column;gap:8px;padding:16px}.widget-option{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--ion-color-step-50);border-radius:8px;cursor:pointer;transition:all .2s;border:1px solid transparent}.widget-option:hover{background:rgba(var(--kff-foundry-blue-rgb),.1);border-color:var(--kff-foundry-blue)}.widget-option .widget-icon{font-size:24px;width:40px;text-align:center}.widget-option .widget-info{flex:1}.widget-option .widget-info h4{font-size:14px;font-family:var(--kff-heading-font);font-weight:500;margin:0;color:var(--ion-text-color)}.widget-option .widget-info p{font-size:12px;font-family:var(--kff-data-font);margin:2px 0 0;color:var(--ion-color-medium)}.widget-option .widget-size{font-size:11px;font-family:var(--kff-data-font);color:var(--ion-color-medium);background:var(--ion-color-step-100);padding:4px 8px;border-radius:4px}ion-card-title{font-size:16px;font-family:var(--kff-heading-font)}@media (min-width: 768px){.widget-grid{display:grid;grid-template-columns:repeat(2,1fr)}}.task-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--ion-card-background);border-radius:12px;position:relative;overflow:hidden;transition:all .2s ease;flex-shrink:0}.task-item.compact{padding:8px 12px;gap:8px}.task-item:hover{background:var(--ion-color-step-50)}.task-item.completed{opacity:.7}.task-item.completed .task-item__name{text-decoration:line-through;color:var(--ion-color-medium)}.task-item.celebrating{animation:celebratePulse .6s ease-out}@keyframes celebratePulse{0%{transform:scale(1);background:var(--ion-card-background)}30%{transform:scale(1.02);background:rgba(var(--ion-color-success-rgb),.15)}to{transform:scale(1);background:var(--ion-card-background)}}.task-item__icon{font-size:24px;line-height:1;flex-shrink:0}.task-item.compact .task-item__icon{font-size:20px}.task-item__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.task-item__name{font-family:var(--kff-heading-font);font-size:15px;font-weight:500;color:var(--ion-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-item.compact .task-item__name{font-size:14px}.task-item__check-btn{width:44px;height:44px;min-width:44px;border-radius:50%;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .2s ease}.task-item.compact .task-item__check-btn{width:36px;height:36px;min-width:36px}.task-item__check-btn:hover{background:var(--ion-color-step-100)}.task-item__check-icon{font-size:28px;color:var(--ion-color-medium);transition:color .2s ease}.task-item.compact .task-item__check-icon{font-size:24px}.task-item__check-btn.completed .task-item__check-icon{color:var(--ion-color-success)}.tasks-overview-card{display:flex;flex-direction:column;gap:16px}.tasks-overview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:16px}.tasks-overview-stat{text-align:center}.tasks-overview-stat__value{font-family:var(--kff-data-font);font-size:28px;font-weight:600;line-height:1.1;font-feature-settings:"tnum"}.tasks-overview-stat__value--primary{color:var(--kff-forge-gold)}.tasks-overview-stat__value--success{color:var(--ion-color-success)}.tasks-overview-stat__value--info{color:var(--kff-foundry-blue)}.tasks-overview-stat__label{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);margin-top:4px}.tasks-overview-progress{margin-top:8px}.tasks-overview-progress__bar{height:8px;border-radius:4px;background:var(--ion-color-step-100);overflow:hidden}.tasks-overview-progress__fill{height:100%;background:var(--ion-color-success);border-radius:4px;transition:width .3s ease}.tasks-overview-progress__label{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);margin-top:6px;text-align:center}.tasks-quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.tasks-quick-action-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:12px;border:2px solid var(--ion-border-color);background:transparent;font-family:var(--kff-heading-font);font-size:14px;font-weight:500;color:var(--ion-text-color);cursor:pointer;transition:all .2s ease}.tasks-quick-action-btn:hover{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint);color:var(--ion-color-primary-shade)}.tasks-quick-action-btn:active{transform:scale(.98)}.tasks-quick-action-btn ion-icon{font-size:18px}.my-tasks-card{display:flex;flex-direction:column;gap:8px}.my-tasks-card__list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s ease;padding-right:4px;margin-right:-4px}.my-tasks-card__list:hover{scrollbar-color:var(--ion-color-step-300) transparent}.my-tasks-card__list::-webkit-scrollbar{width:6px}.my-tasks-card__list::-webkit-scrollbar-track{background:transparent}.my-tasks-card__list::-webkit-scrollbar-thumb{background-color:transparent;border-radius:3px;transition:background-color .3s ease}.my-tasks-card__list:hover::-webkit-scrollbar-thumb{background-color:var(--ion-color-step-300)}.my-tasks-card__empty{text-align:center;padding:24px 16px;color:var(--ion-color-medium)}.my-tasks-card__empty-icon{font-size:40px;margin-bottom:8px;display:block}.my-tasks-card__quick-add-container{display:flex;align-items:center;gap:10px;padding:10px 0;border:none;border-bottom:2px solid var(--ion-border-color);background:transparent;transition:border-color .2s ease;margin-top:8px}.my-tasks-card__quick-add-container:focus-within{border-bottom-color:var(--kff-forge-gold)}.my-tasks-card__quick-add-icon{font-size:18px;color:var(--ion-color-medium);flex-shrink:0;transition:color .2s ease}.my-tasks-card__quick-add-container:focus-within .my-tasks-card__quick-add-icon{color:var(--kff-forge-gold)}.my-tasks-card__quick-add-input{flex:1;border:none;border-bottom:1px solid transparent;background:transparent;font-family:var(--kff-data-font);font-size:14px;color:var(--ion-text-color);outline:none;box-shadow:none;padding:4px 0;min-width:0;transition:border-color .2s ease}.my-tasks-card__quick-add-input:focus{outline:none;box-shadow:none;border-bottom-color:var(--kff-forge-gold)}.my-tasks-card__quick-add-input::placeholder{color:var(--ion-color-medium)}.my-tasks-card__quick-add-input:disabled{opacity:.5;cursor:not-allowed}.my-tasks-card__quick-add-submit{width:32px;height:32px;border-radius:50%;border:none;background:var(--kff-foundry-blue);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .2s ease}.my-tasks-card__quick-add-submit:hover:not(:disabled){background:var(--ion-color-primary-shade);transform:scale(1.08);box-shadow:0 4px 12px #1b3b5a4d}.my-tasks-card__quick-add-submit:active:not(:disabled){transform:scale(.95)}.my-tasks-card__quick-add-submit:disabled{opacity:.4;cursor:not-allowed;transform:none}.my-tasks-card__quick-add-submit ion-icon{font-size:20px}.routines-card{display:flex;flex-direction:column;gap:12px}.routines-card__empty{text-align:center;padding:24px 16px;color:var(--ion-color-medium)}.routines-card__empty-icon{font-size:40px;margin-bottom:8px;display:block}.routine-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--ion-color-step-50);border-radius:12px;position:relative;flex-shrink:0}.routine-item__icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.routine-item__info{flex:1;min-width:0}.routine-item__name{font-family:var(--kff-heading-font);font-size:14px;font-weight:600;color:var(--ion-text-color)}.routine-item__meta{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);margin-top:2px}.routine-item__apply-btn{padding:6px 12px;border-radius:8px;border:none;background:var(--ion-color-primary);color:#fff;font-family:var(--kff-data-font);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.routine-item__apply-btn:hover{background:var(--ion-color-primary-shade)}.routine-item__apply-btn:active{transform:scale(.98)}.family-progress-card{display:flex;flex-direction:column;gap:16px}.family-progress-members{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.family-member-section{background:var(--ion-color-step-50);border-radius:16px;overflow:hidden}.family-member-header{display:flex;align-items:center;gap:12px;padding:16px;border-left:4px solid var(--member-color, var(--ion-color-medium))}.family-member-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;object-fit:cover}.family-member-info{flex:1;min-width:0}.family-member-name{font-family:var(--kff-heading-font);font-size:16px;font-weight:600;color:var(--ion-text-color)}.family-member-stats{display:flex;align-items:center;gap:8px;font-family:var(--kff-data-font);font-size:13px;color:var(--ion-color-medium);margin-top:2px}.family-member-complete-badge{font-size:12px;color:var(--ion-color-success);font-weight:500}.family-member-points{display:flex;align-items:center;gap:4px;font-family:var(--kff-data-font);flex-shrink:0}.family-member-points ion-icon{color:var(--kff-forge-gold);font-size:18px}.family-member-points__value{font-size:16px;font-weight:600;color:var(--ion-text-color)}.family-member-points__label{font-size:12px;color:var(--ion-color-medium)}.family-member-tasks{display:flex;flex-direction:column;padding:0 12px 12px;gap:4px}.lists-panel{--background: var(--ion-background-color)}.lists-panel__content{padding:16px;padding-bottom:calc(16px + var(--ion-safe-area-bottom))}.lists-panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.lists-panel__title{font-family:var(--kff-heading-font);font-size:18px;font-weight:600;margin:0}.lists-panel__section{margin-bottom:24px}.lists-panel__section-title{font-family:var(--kff-data-font);font-size:12px;font-weight:500;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.lists-panel__pinned{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.list-card{display:flex;align-items:center;gap:8px;padding:12px;background:var(--ion-card-background);border-radius:12px;cursor:pointer;transition:all .2s ease;border:none;width:100%;text-align:left}.list-card:hover{background:var(--ion-color-step-50)}.list-card__icon{font-size:20px;line-height:1}.list-card__name{font-family:var(--kff-heading-font);font-size:14px;font-weight:500;color:var(--ion-text-color);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-card__count{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);background:var(--ion-color-step-100);padding:2px 8px;border-radius:10px}.lists-panel__types{display:flex;flex-direction:column;gap:4px}.list-type-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--ion-card-background);border-radius:12px;cursor:pointer;transition:all .2s ease;border:none;width:100%}.list-type-row:hover{background:var(--ion-color-step-50)}.list-type-row__label{font-family:var(--kff-heading-font);font-size:15px;font-weight:500;color:var(--ion-text-color)}.list-type-row__count{font-family:var(--kff-data-font);font-size:13px;color:var(--ion-color-medium)}.list-type-row ion-icon{color:var(--ion-color-medium);font-size:18px}.routines-card__header{display:flex;justify-content:flex-end;margin-bottom:12px}.routines-card__loading{display:flex;justify-content:center;padding:24px}.routines-card__create-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;border:2px dashed var(--ion-border-color);background:transparent;font-family:var(--kff-data-font);font-size:13px;color:var(--ion-color-primary);cursor:pointer;margin-top:8px;transition:all .2s ease}.routines-card__create-btn:hover{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.routines-card__add-btn{width:32px;height:32px;border-radius:8px;border:none;background:var(--ion-color-step-100);color:var(--ion-text-color);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.routines-card__add-btn:hover{background:var(--ion-color-primary);color:#fff}.routines-card__add-btn ion-icon{font-size:18px}.routines-card__list{display:flex;flex-direction:column;gap:16px;max-height:400px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s ease;padding-right:4px;margin-right:-4px}.routines-card__list:hover{scrollbar-color:var(--ion-color-step-300) transparent}.routines-card__list::-webkit-scrollbar{width:6px}.routines-card__list::-webkit-scrollbar-track{background:transparent}.routines-card__list::-webkit-scrollbar-thumb{background-color:transparent;border-radius:3px;transition:background-color .3s ease}.routines-card__list:hover::-webkit-scrollbar-thumb{background-color:var(--ion-color-step-300)}.routines-card__category{display:flex;flex-direction:column;gap:8px}.routines-card__category-header{display:flex;align-items:center;gap:6px;padding:4px 0}.routines-card__category-icon{font-size:16px;line-height:1}.routines-card__category-label{font-family:var(--kff-data-font);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--category-color, var(--ion-color-medium))}.routines-card__item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--ion-color-step-50);border-radius:12px;border-left:3px solid var(--routine-color, var(--ion-color-primary));transition:all .2s ease;flex-shrink:0}.routines-card__item.inactive{opacity:.5}.routines-card__item-icon{font-size:20px;line-height:1;flex-shrink:0}.routines-card__item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.routines-card__item-name{font-family:var(--kff-heading-font);font-size:14px;font-weight:500;color:var(--ion-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.routines-card__item-assignee,.routines-card__item-count{font-family:var(--kff-data-font);font-size:11px;color:var(--ion-color-medium)}.routines-card__item-assignees{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.routines-card__assignee-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 6px 2px 2px;background:var(--ion-color-step-100);border-radius:12px;font-family:var(--kff-data-font);font-size:10px;color:var(--ion-color-medium)}.routines-card__assignee-avatar{width:16px;height:16px;border-radius:50%;object-fit:cover}.routines-card__assignee-emoji{width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:10px;background:var(--ion-color-step-150);border-radius:50%}.routines-card__item-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.routines-card__action-btn{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.routines-card__action-btn:hover{background:var(--ion-color-step-100)}.routines-card__action-btn--apply:hover{background:var(--ion-color-success-tint);color:var(--ion-color-success)}.routines-card__action-btn--edit:hover{color:var(--ion-color-primary)}.routines-card__action-btn ion-icon{font-size:16px}.family-progress-card__empty{text-align:center;padding:24px 16px;color:var(--ion-color-medium)}.family-progress-card__empty-icon{font-size:40px;margin-bottom:8px;display:block}.family-progress-card__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}@media (min-width: 768px){.family-progress-card__grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.family-progress-card__member{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;background:var(--ion-color-step-50);border-radius:16px;border:none;cursor:pointer;transition:all .2s ease;position:relative}.family-progress-card__member:hover:not(:disabled){background:var(--ion-color-step-100);transform:translateY(-2px)}.family-progress-card__member:disabled{cursor:default}.family-progress-card__member.complete{background:rgba(var(--ion-color-success-rgb),.1)}.family-progress-card__member.no-tasks{opacity:.6}.family-progress-card__avatar{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;border:3px solid var(--member-color, var(--ion-color-medium));background:var(--ion-card-background);overflow:hidden}.family-progress-card__avatar img{width:100%;height:100%;object-fit:cover}.family-progress-card__avatar-placeholder,.family-progress-card__avatar-emoji{font-size:28px;line-height:1}.family-progress-card__complete-badge{position:absolute;bottom:-4px;right:-4px;width:24px;height:24px;border-radius:50%;background:var(--ion-color-success);color:#fff;display:flex;align-items:center;justify-content:center;border:2px solid var(--ion-card-background)}.family-progress-card__complete-badge ion-icon{font-size:14px}.family-progress-card__name{font-family:var(--kff-heading-font);font-size:13px;font-weight:500;color:var(--ion-text-color);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.family-progress-card__progress{width:100%;height:6px;border-radius:3px;background:var(--ion-color-step-150);overflow:hidden}.family-progress-card__progress-fill{height:100%;background:var(--member-color, var(--ion-color-success));border-radius:3px;transition:width .3s ease}.family-progress-card__stats{display:flex;align-items:center;gap:8px;font-family:var(--kff-data-font);font-size:12px}.family-progress-card__count{color:var(--ion-text-color);font-weight:500}.family-progress-card__points{display:flex;align-items:center;gap:2px;color:var(--kff-forge-gold)}.family-progress-card__points ion-icon{font-size:12px}.family-progress-card__no-tasks{color:var(--ion-color-medium);font-style:italic}.family-progress-card__member-container{display:flex;flex-direction:column}.family-progress-card__member.expanded{border-radius:16px 16px 0 0}.family-progress-card__expand-icon{position:absolute;bottom:8px;right:8px;font-size:14px;color:var(--ion-color-medium);opacity:.6}.family-progress-card__member:hover .family-progress-card__expand-icon{opacity:1}.family-progress-card__tasks{display:flex;flex-direction:column;gap:4px;padding:8px;background:var(--ion-color-step-100);border-radius:0 0 16px 16px;margin-top:-4px}.lists-panel__loading{display:flex;justify-content:center;padding:48px}.lists-panel__add-btn{width:36px;height:36px;border-radius:10px;border:none;background:var(--ion-color-primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.lists-panel__add-btn:hover{background:var(--ion-color-primary-shade);transform:scale(1.05)}.lists-panel__add-btn ion-icon{font-size:20px}.lists-panel__section-title{display:flex;align-items:center;gap:6px}.lists-panel__section-title ion-icon{font-size:14px}.list-type-row__icon{font-size:20px;line-height:1;margin-right:8px}.lists-panel__quick-create{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media (min-width: 480px){.lists-panel__quick-create{grid-template-columns:repeat(4,1fr)}}.lists-panel__quick-create-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 12px;border-radius:12px;border:2px dashed var(--ion-border-color);background:transparent;font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);cursor:pointer;transition:all .2s ease}.lists-panel__quick-create-btn:hover{border-color:var(--ion-color-primary);color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.lists-panel__quick-create-btn span:first-child{font-size:24px;line-height:1}.routine-editor__label{font-family:var(--kff-data-font);font-size:12px;font-weight:500;color:var(--ion-color-medium);margin-bottom:6px}.routine-editor__icon-btn{width:52px;height:52px;border-radius:12px;border:2px solid var(--ion-border-color);background:var(--ion-card-background);font-size:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.routine-editor__icon-btn:hover{border-color:var(--kff-forge-gold);background:var(--kff-forge-gold-10)}.routine-editor__day-chip{width:36px;height:36px;border-radius:50%;border:2px solid var(--ion-border-color);background:transparent;font-family:var(--kff-data-font);font-size:13px;font-weight:600;color:var(--ion-color-medium);cursor:pointer;transition:all .2s ease}.routine-editor__day-chip:hover{border-color:var(--ion-color-primary);color:var(--ion-color-primary)}.routine-editor__day-chip.active{border-color:var(--ion-color-primary);background:var(--ion-color-primary);color:#fff}.routine-editor__member-chip{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;border:2px solid var(--ion-border-color);background:transparent;font-family:var(--kff-data-font);font-size:13px;font-weight:500;color:var(--ion-text-color);cursor:pointer;transition:all .2s ease}.routine-editor__member-chip:hover{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.routine-editor__member-chip.active{border-color:var(--ion-color-primary);background:var(--ion-color-primary);color:#fff}.routine-editor__member-avatar{width:20px;height:20px;border-radius:50%;object-fit:cover}.routine-editor__member-emoji{font-size:16px;line-height:1}.routine-editor__hint{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);margin-top:8px;font-style:italic}.routine-editor__empty-tasks{padding:24px 16px;text-align:center;color:var(--ion-color-medium);font-family:var(--kff-data-font);font-size:13px;background:var(--ion-color-step-50);border-radius:12px;border:2px dashed var(--ion-border-color)}.routine-editor__task-item{--background: var(--ion-color-step-50);--padding-start: 8px;--padding-end: 8px;--inner-padding-end: 0;border-radius:10px;margin-bottom:6px}.routine-editor__reorder-icon{font-size:20px;color:var(--ion-color-medium);cursor:grab}.routine-editor__task-order{width:24px;height:24px;border-radius:50%;background:var(--ion-color-step-150);display:flex;align-items:center;justify-content:center;font-family:var(--kff-data-font);font-size:12px;font-weight:600;color:var(--ion-color-medium);margin-right:8px}.routine-editor__task-icon{font-size:20px;margin-right:8px}.routine-editor__task-name{flex:1;font-family:var(--kff-heading-font);font-size:14px;color:var(--ion-text-color)}.routine-editor__remove-btn{width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.routine-editor__remove-btn:hover{background:var(--ion-color-danger-tint);color:var(--ion-color-danger)}.routine-editor__remove-btn ion-icon{font-size:16px}.routine-editor__task-actions{display:flex;align-items:center;gap:4px}.routine-editor__edit-btn{width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.routine-editor__edit-btn:hover{background:var(--ion-color-primary-tint);color:var(--ion-color-primary)}.routine-editor__edit-btn ion-icon{font-size:14px}.routine-editor__points-chip{width:40px;height:40px;border-radius:8px;border:2px solid var(--ion-border-color);background:transparent;color:var(--ion-text-color);font-family:var(--kff-data-font);font-weight:600;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.routine-editor__points-chip:hover{border-color:var(--kff-forge-gold);background:var(--kff-forge-gold-10)}.routine-editor__points-chip.active{border-color:var(--kff-forge-gold);background:var(--kff-forge-gold);color:#fff}.routine-editor__add-task{margin-top:12px}.routine-editor__create-task-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px 16px;margin-top:8px;border-radius:10px;border:2px dashed var(--ion-border-color);background:transparent;font-family:var(--kff-data-font);font-size:13px;font-weight:500;color:var(--ion-color-primary);cursor:pointer;transition:all .2s ease}.routine-editor__create-task-btn:hover{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.routine-editor__create-task-btn ion-icon{font-size:16px}.routine-editor__quick-create{padding:12px;border-radius:12px;background:var(--ion-color-step-50);border:1px solid var(--ion-border-color)}.routine-editor__new-task-icon-btn{width:44px;height:44px;border-radius:10px;border:2px solid var(--ion-border-color);background:var(--ion-card-background);font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.routine-editor__new-task-icon-btn:hover{border-color:var(--kff-forge-gold);background:var(--kff-forge-gold-10)}.assign-task__label{font-family:var(--kff-data-font);font-size:12px;font-weight:500;color:var(--ion-color-medium);margin-bottom:8px}.assign-task__recent{margin-bottom:12px}.assign-task__recent-label{font-family:var(--kff-data-font);font-size:11px;color:var(--ion-color-medium);margin-bottom:6px}.assign-task__recent-list{display:flex;flex-wrap:wrap;gap:6px}.assign-task__recent-item{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:16px;border:1px solid var(--ion-border-color);background:var(--ion-color-step-50);font-family:var(--kff-data-font);font-size:12px;color:var(--ion-text-color);cursor:pointer;transition:all .2s ease}.assign-task__recent-item:hover{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.assign-task__recent-icon{font-size:14px;line-height:1}.assign-task__recent-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assign-task__selected{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--ion-color-primary-tint);border:2px solid var(--ion-color-primary);border-radius:12px;margin-bottom:8px}.assign-task__selected-icon{font-size:24px;line-height:1}.assign-task__selected-name{flex:1;font-family:var(--kff-heading-font);font-size:16px;font-weight:500;color:var(--ion-text-color)}.assign-task__selected-clear{width:28px;height:28px;border-radius:50%;border:none;background:rgba(var(--ion-text-color-rgb),.1);color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.assign-task__selected-clear:hover{background:var(--ion-color-danger-tint);color:var(--ion-color-danger)}.assign-task__selected-clear ion-icon{font-size:16px}.assign-task__create-btn{display:inline-block;margin-top:8px;padding:0;border:none;background:none;font-family:var(--kff-data-font);font-size:13px;color:var(--ion-color-primary);cursor:pointer;transition:color .2s ease}.assign-task__create-btn:hover{color:var(--ion-color-primary-shade);text-decoration:underline}.assign-task__create-form{display:flex;align-items:center;gap:8px;padding:12px;background:var(--ion-color-step-50);border-radius:12px;margin-top:12px}.assign-task__create-icon-btn{width:44px;height:44px;border-radius:10px;border:2px solid var(--ion-border-color);background:var(--ion-card-background);font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.assign-task__create-icon-btn:hover{border-color:var(--kff-forge-gold);background:var(--kff-forge-gold-10)}.assign-task__create-form .ui-input{flex:1}.assign-task__members{display:flex;flex-wrap:wrap;gap:8px}.assign-task__member-chip{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:24px;border:2px solid var(--ion-border-color);background:transparent;font-family:var(--kff-data-font);font-size:14px;font-weight:500;color:var(--ion-text-color);cursor:pointer;transition:all .2s ease;position:relative}.assign-task__member-chip:hover{border-color:var(--member-color, var(--ion-color-primary));background:rgba(var(--ion-color-primary-rgb),.05)}.assign-task__member-chip.active{border-color:var(--member-color, var(--ion-color-primary));background:var(--member-color, var(--ion-color-primary));color:#fff}.assign-task__member-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.assign-task__member-emoji{font-size:18px;line-height:1}.assign-task__member-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assign-task__member-check{font-size:16px;margin-left:4px}.assign-task__hint{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);margin-top:8px;font-style:italic}.assign-task__field{display:flex;flex-direction:column;gap:6px}.assign-task__field-label{display:flex;align-items:center;gap:6px;font-family:var(--kff-data-font);font-size:12px;font-weight:500;color:var(--ion-color-medium)}.assign-task__field-label ion-icon{font-size:14px}.assign-task__date-input{width:100%;padding:10px 12px;border:1px solid var(--ion-border-color);border-radius:8px;background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:14px;color:var(--ion-text-color);transition:border-color .2s ease}.assign-task__date-input:focus{outline:none;border-color:var(--ion-color-primary)}.assign-task__date-input::-webkit-calendar-picker-indicator{filter:invert(.5);cursor:pointer}.list-quick-view{display:flex;flex-direction:column;height:100%;background:var(--ion-background-color)}.list-quick-view__header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--ion-border-color);background:var(--ion-card-background)}.list-quick-view__back-btn{width:36px;height:36px;border-radius:10px;border:none;background:transparent;color:var(--ion-text-color);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.list-quick-view__back-btn:hover{background:var(--ion-color-step-100)}.list-quick-view__back-btn ion-icon{font-size:20px}.list-quick-view__title-row{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.list-quick-view__icon{font-size:24px;line-height:1;flex-shrink:0}.list-quick-view__title{font-family:var(--kff-heading-font);font-size:18px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-quick-view__edit-btn{width:36px;height:36px;border-radius:10px;border:none;background:transparent;color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.list-quick-view__edit-btn:hover{background:var(--ion-color-step-100);color:var(--ion-color-primary)}.list-quick-view__edit-btn ion-icon{font-size:18px}.list-quick-view__stats{display:flex;align-items:center;gap:12px;padding:8px 16px;font-family:var(--kff-data-font);font-size:13px;border-bottom:1px solid var(--ion-border-color)}.list-quick-view__stat{color:var(--ion-text-color)}.list-quick-view__stat--muted{color:var(--ion-color-medium)}.list-quick-view__loading{display:flex;justify-content:center;padding:48px}.list-quick-view__empty{text-align:center;padding:48px 24px;color:var(--ion-color-medium)}.list-quick-view__empty-icon{font-size:48px;display:block;margin-bottom:12px}.list-quick-view__empty p{margin:0}.list-quick-view__empty-hint{font-size:13px;margin-top:4px!important}.list-quick-view__items{flex:1;overflow-y:auto;padding:8px 0}.list-quick-view__group{margin-bottom:8px}.list-quick-view__category{font-family:var(--kff-data-font);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--ion-color-medium);padding:8px 16px 4px}.list-quick-view__item{display:flex;align-items:center;gap:8px;padding:8px 16px;transition:background .15s ease}.list-quick-view__item:hover{background:var(--ion-color-step-50)}.list-quick-view__item.checked{opacity:.6}.list-quick-view__item.checked .list-quick-view__item-name{text-decoration:line-through;color:var(--ion-color-medium)}.list-quick-view__check-btn{width:32px;height:32px;min-width:32px;border-radius:50%;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:var(--ion-color-medium)}.list-quick-view__check-btn:hover:not(:disabled){background:var(--ion-color-step-100);color:var(--ion-color-success)}.list-quick-view__check-btn.checked{color:var(--ion-color-success)}.list-quick-view__check-btn:disabled{cursor:default}.list-quick-view__check-btn ion-icon{font-size:24px}.list-quick-view__check-btn ion-spinner{width:20px;height:20px}.list-quick-view__item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.list-quick-view__item-name{font-family:var(--kff-heading-font);font-size:15px;color:var(--ion-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-quick-view__item-qty{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium)}.list-quick-view__item-notes{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);font-style:italic}.list-quick-view__delete-btn{width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;opacity:0}.list-quick-view__item:hover .list-quick-view__delete-btn{opacity:1}.list-quick-view__delete-btn:hover{background:var(--ion-color-danger-tint);color:var(--ion-color-danger)}.list-quick-view__delete-btn ion-icon{font-size:16px}.list-quick-view__add{padding:12px 16px;border-top:1px solid var(--ion-border-color);background:var(--ion-card-background)}.task-detail__header{display:flex;align-items:flex-start;gap:16px;padding:16px;background:var(--ion-color-step-50);border-radius:16px;margin-bottom:8px}.task-detail__icon{font-size:40px;line-height:1;flex-shrink:0}.task-detail__info{flex:1;min-width:0}.task-detail__name{font-family:var(--kff-heading-font);font-size:18px;font-weight:600;margin:0 0 4px;color:var(--ion-text-color)}.task-detail__name-input{margin-bottom:4px}.task-detail__name-input input{font-family:var(--kff-heading-font);font-size:18px;font-weight:600}.task-detail__description{font-family:var(--kff-data-font);font-size:14px;color:var(--ion-color-medium);margin:0 0 8px;line-height:1.4}.task-detail__meta{display:flex;align-items:center;gap:12px;font-family:var(--kff-data-font);font-size:13px}.task-detail__points{color:var(--kff-forge-gold);font-weight:500}.task-detail__duration{color:var(--ion-color-medium)}.task-detail__label{display:flex;align-items:center;gap:6px;font-family:var(--kff-data-font);font-size:12px;font-weight:500;color:var(--ion-color-medium);margin-bottom:8px}.task-detail__label ion-icon{font-size:14px}.task-detail__members{display:flex;flex-wrap:wrap;gap:8px}.task-detail__member-chip{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:24px;border:2px solid var(--ion-border-color);background:transparent;font-family:var(--kff-data-font);font-size:14px;font-weight:500;color:var(--ion-text-color);cursor:pointer;transition:all .2s ease;position:relative}.task-detail__member-chip:hover{border-color:var(--member-color, var(--ion-color-primary));background:rgba(var(--ion-color-primary-rgb),.05)}.task-detail__member-chip.active{border-color:var(--member-color, var(--ion-color-primary));background:var(--member-color, var(--ion-color-primary));color:#fff}.task-detail__member-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.task-detail__member-emoji{font-size:18px;line-height:1}.task-detail__member-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail__member-check{font-size:16px;margin-left:4px}.task-detail__dates-section{padding:12px 16px;background:var(--ion-color-step-50);border-radius:12px}.task-detail__attachments-section{padding:16px;background:var(--ion-color-step-50);border-radius:12px}.task-detail__attachment-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.task-detail__attachment-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--ion-card-background);border-radius:10px;border:1px solid var(--ion-border-color)}.task-detail__attachment-icon{font-size:24px;line-height:1;flex-shrink:0}.task-detail__attachment-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.task-detail__attachment-name{font-family:var(--kff-heading-font);font-size:14px;color:var(--ion-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail__attachment-size{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium)}.task-detail__attachment-action{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;text-decoration:none}.task-detail__attachment-action:hover{background:var(--ion-color-step-100);color:var(--ion-color-primary)}.task-detail__attachment-delete:hover{background:var(--ion-color-danger-tint);color:var(--ion-color-danger)}.task-detail__attachment-action ion-icon{font-size:18px}.task-detail__status{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:12px;font-family:var(--kff-data-font);font-size:14px;font-weight:500}.task-detail__status ion-icon{font-size:18px}.task-detail__status--completed{background:rgba(var(--ion-color-success-rgb),.1);color:var(--ion-color-success)}.task-detail__status--overdue{background:rgba(var(--ion-color-danger-rgb),.1);color:var(--ion-color-danger)}.task-detail__delete-section{padding-top:16px;border-top:1px solid var(--ion-border-color);display:flex;justify-content:center}.task-detail__points-section{padding:12px 16px;background:var(--ion-color-step-50);border-radius:12px}.task-detail__points-hint{display:block;font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);margin-top:6px;font-style:italic}.task-detail__field{display:flex;flex-direction:column;gap:6px}.task-detail__field-label{display:flex;align-items:center;gap:6px;font-family:var(--kff-data-font);font-size:12px;font-weight:500;color:var(--ion-color-medium)}.task-detail__field-label ion-icon{font-size:14px}.task-detail__date-input{width:100%;padding:10px 12px;border:1px solid var(--ion-border-color);border-radius:8px;background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:14px;color:var(--ion-text-color);transition:border-color .2s ease}.task-detail__date-input:focus{outline:none;border-color:var(--ion-color-primary)}.task-detail__date-input::-webkit-calendar-picker-indicator{filter:invert(.5);cursor:pointer}.task-detail__due-section{padding:12px 16px;background:var(--ion-color-step-50);border-radius:12px}.task-detail__quick-dates{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.task-detail__quick-date-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:20px;border:1px solid var(--ion-border-color);background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:13px;font-weight:500;color:var(--ion-text-color);cursor:pointer;transition:all .15s ease}.task-detail__quick-date-btn:hover{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.task-detail__quick-date-btn.active{border-color:var(--ion-color-primary);background:var(--ion-color-primary);color:#fff}.task-detail__quick-date-btn ion-icon{font-size:16px}.task-detail__date-picker-row{display:flex;align-items:center;gap:8px;margin-top:10px}.task-detail__pick-date-btn{flex:1;justify-content:flex-start;border-style:dashed}.task-detail__pick-date-btn.active{border-style:solid}.task-detail__picker-wrapper{position:relative;display:inline-flex}.task-detail__hidden-date-input{position:absolute;top:100%;left:0;opacity:0;pointer-events:none;width:1px;height:1px}.task-detail__clear-date-btn,.task-detail__clear-time-btn{width:32px;height:32px;border-radius:50%;border:none;background:var(--ion-color-step-100);color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;flex-shrink:0}.task-detail__clear-date-btn:hover,.task-detail__clear-time-btn:hover{background:var(--ion-color-danger-tint);color:var(--ion-color-danger)}.task-detail__clear-date-btn ion-icon,.task-detail__clear-time-btn ion-icon{font-size:16px}.task-detail__time-row{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--ion-border-color)}.task-detail__time-icon{font-size:18px;color:var(--ion-color-medium);flex-shrink:0}.task-detail__time-input{flex:1;padding:8px 12px;border:1px solid var(--ion-border-color);border-radius:8px;background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:14px;color:var(--ion-text-color);transition:border-color .15s ease}.task-detail__time-input:focus{outline:none;border-color:var(--ion-color-primary)}.task-detail__time-input::-webkit-calendar-picker-indicator{filter:invert(.5);cursor:pointer}.task-detail__points-input-row{display:flex;align-items:center;gap:8px;margin-top:8px}.task-detail__points-input{width:80px;padding:10px 12px;border:1px solid var(--ion-border-color);border-radius:8px;background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:16px;font-weight:600;color:var(--kff-forge-gold);text-align:center;transition:border-color .15s ease}.task-detail__points-input:focus{outline:none;border-color:var(--kff-forge-gold)}.task-detail__points-input::-webkit-inner-spin-button,.task-detail__points-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.task-detail__points-input[type=number]{-moz-appearance:textfield}.task-detail__points-label{font-family:var(--kff-data-font);font-size:14px;font-weight:500;color:var(--ion-color-medium)}.task-detail__btn-divider{width:1px;height:24px;background:var(--ion-border-color);margin:0 4px;flex-shrink:0}.task-detail__custom-date-btn,.task-detail__time-btn{padding:8px 10px}.task-detail__custom-date-btn.active{background:var(--ion-color-primary);border-color:var(--ion-color-primary);color:#fff}.task-detail__time-btn.active{background:var(--ion-color-tertiary);border-color:var(--ion-color-tertiary);color:#fff}.task-detail__date-display{display:flex;align-items:center;gap:12px;margin-top:10px;padding:10px 14px;background:var(--ion-color-primary);border-radius:10px;color:#fff}.task-detail__date-display-date,.task-detail__date-display-time{display:flex;align-items:center;gap:6px;font-family:var(--kff-data-font);font-size:14px;font-weight:500}.task-detail__date-display-date ion-icon,.task-detail__date-display-time ion-icon{font-size:16px;opacity:.8}.task-detail__date-display-time{padding-left:12px;border-left:1px solid rgba(255,255,255,.3)}.task-detail__date-display-clear{margin-left:auto;width:24px;height:24px;border-radius:50%;border:none;background:#fff3;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;flex-shrink:0}.task-detail__date-display-clear:hover{background:#ffffff4d}.task-detail__date-display-clear ion-icon{font-size:14px}.task-detail__points-compact{display:flex;justify-content:flex-start}.task-detail__points-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:20px;border:1px dashed var(--ion-border-color);background:transparent;font-family:var(--kff-data-font);font-size:13px;font-weight:500;color:var(--ion-color-medium);cursor:pointer;transition:all .15s ease}.task-detail__points-pill:hover{border-color:var(--kff-forge-gold);color:var(--kff-forge-gold)}.task-detail__points-pill.has-points{border-style:solid;border-color:var(--kff-forge-gold);background:#d4af371a;color:var(--kff-forge-gold)}.task-detail__points-pill ion-icon{font-size:16px}.task-detail__points-pill.has-points ion-icon{color:var(--kff-forge-gold)}.task-detail__points-stepper{display:flex;align-items:center;gap:4px;padding:6px 8px;background:var(--ion-color-step-50);border-radius:24px}.task-detail__points-btn{width:36px;height:36px;border-radius:50%;border:none;background:transparent;color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.task-detail__points-btn:hover:not(:disabled){background:var(--ion-color-step-100)}.task-detail__points-btn:disabled{opacity:.3;cursor:not-allowed}.task-detail__points-btn ion-icon{font-size:24px}.task-detail__points-btn--minus:hover:not(:disabled){color:var(--ion-color-danger)}.task-detail__points-btn--plus:hover:not(:disabled){color:var(--ion-color-success)}.task-detail__points-value{display:flex;align-items:center;gap:4px;min-width:60px;justify-content:center;font-family:var(--kff-data-font);font-size:18px;font-weight:600;color:var(--kff-forge-gold)}.task-detail__points-star{font-size:20px;color:var(--kff-forge-gold)}.task-detail__points-done{width:32px;height:32px;border-radius:50%;border:none;background:var(--ion-color-success);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-left:4px;transition:all .15s ease}.task-detail__points-done:hover{background:var(--ion-color-success-shade);transform:scale(1.05)}.task-detail__points-done ion-icon{font-size:18px}.lists-card{display:flex;flex-direction:column;gap:12px}.lists-card__header{display:flex;justify-content:flex-end;margin-top:-8px}.lists-card__add-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--ion-border-color);background:var(--ion-card-background);color:var(--ion-color-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;font-size:18px}.lists-card__add-btn:hover{background:var(--ion-color-primary);color:#fff;border-color:var(--ion-color-primary)}.lists-card__loading{display:flex;justify-content:center;padding:24px}.lists-card__empty{display:flex;flex-direction:column;align-items:center;padding:24px 16px;text-align:center;color:var(--ion-color-medium)}.lists-card__empty-icon{font-size:36px;margin-bottom:8px}.lists-card__empty p{margin:0 0 12px;font-size:14px}.lists-card__create-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;border:1px solid var(--ion-color-primary);background:transparent;color:var(--ion-color-primary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.lists-card__create-btn:hover{background:var(--ion-color-primary);color:#fff}.lists-card__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media (min-width: 480px){.lists-card__grid{grid-template-columns:repeat(3,1fr)}}.lists-card__item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 10px;border-radius:12px;border:1px solid var(--ion-border-color);background:var(--ion-card-background);cursor:pointer;transition:all .15s ease;text-align:center}.lists-card__item:hover{border-color:var(--list-color, var(--ion-color-primary));transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.lists-card__item-icon{font-size:28px;line-height:1}.lists-card__item-info{display:flex;flex-direction:column;gap:2px;min-width:0;width:100%}.lists-card__item-name{font-size:13px;font-weight:600;color:var(--ion-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lists-card__item-meta{display:flex;align-items:center;justify-content:center;gap:4px;font-size:11px;color:var(--ion-color-medium);font-family:var(--kff-data-font)}.lists-card__pin-icon{font-size:10px;color:var(--ion-color-warning)}.lists-card__view-all{display:flex;align-items:center;justify-content:center;gap:4px;padding:10px;border-radius:8px;border:none;background:var(--ion-color-step-50);color:var(--ion-color-primary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.lists-card__view-all:hover{background:var(--ion-color-step-100)}.lists-card__view-all ion-icon{font-size:16px}.lists-card__quick-create{display:flex;justify-content:center;gap:8px;padding-top:8px;border-top:1px solid var(--ion-border-color)}.lists-card__type-btn{width:40px;height:40px;border-radius:10px;border:1px dashed var(--ion-border-color);background:transparent;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.lists-card__type-btn:hover{border-style:solid;border-color:var(--ion-color-primary);background:var(--ion-color-step-50);transform:scale(1.05)}.task-detail__actions{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0}.task-detail__action-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:20px;border:1px solid var(--ion-border-color);background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:13px;font-weight:500;color:var(--ion-text-color);cursor:pointer;transition:all .15s ease}.task-detail__action-chip:hover{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.task-detail__action-chip ion-icon{font-size:16px}.task-detail__action-chip-add{color:var(--ion-color-medium);font-weight:400}.task-detail__action-chip--active{border-color:var(--ion-color-primary);background:var(--ion-color-primary);color:#fff}.task-detail__action-chip--active:hover{background:var(--ion-color-primary-shade)}.task-detail__action-chip--gold{border-color:var(--kff-forge-gold);background:#d4af371a;color:var(--kff-forge-gold)}.task-detail__action-chip--gold:hover{background:#d4af3733}.task-detail__action-chip--gold.task-detail__action-chip--active{background:var(--kff-forge-gold);color:#fff}.task-detail__expandable-section{margin-top:8px;padding:16px;background:var(--ion-color-step-50);border-radius:12px;border:1px solid var(--ion-border-color);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.task-detail__expandable-section--gold{border-color:var(--kff-forge-gold);background:#d4af370d}.task-detail__section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.task-detail__section-header h4{margin:0;font-family:var(--kff-heading-font);font-size:14px;font-weight:600;color:var(--ion-text-color);display:flex;align-items:center;gap:6px}.task-detail__section-header h4 ion-icon{font-size:16px;color:var(--ion-color-medium)}.task-detail__section-close{width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.task-detail__section-close:hover{background:var(--ion-color-danger-tint);color:var(--ion-color-danger)}.task-detail__section-close ion-icon{font-size:18px}.task-detail__date-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.task-detail__inline-date-input{flex:1;min-width:140px;padding:10px 12px;border:1px solid var(--ion-border-color);border-radius:8px;background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:14px;color:var(--ion-text-color);transition:border-color .15s ease}.task-detail__inline-date-input:focus{outline:none;border-color:var(--ion-color-primary)}.task-detail__inline-date-input::-webkit-calendar-picker-indicator{filter:invert(.5);cursor:pointer}.task-detail__inline-time-input{width:120px;padding:10px 12px;border:1px solid var(--ion-border-color);border-radius:8px;background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:14px;color:var(--ion-text-color);transition:border-color .15s ease}.task-detail__inline-time-input:focus{outline:none;border-color:var(--ion-color-primary)}.task-detail__inline-time-input::-webkit-calendar-picker-indicator{filter:invert(.5);cursor:pointer}.task-detail__duration-hint{font-family:var(--kff-data-font);font-size:13px;color:var(--ion-color-medium);font-style:italic;text-align:center;padding:12px}.task-detail__notes-textarea{width:100%;min-height:100px;padding:12px;border:1px solid var(--ion-border-color);border-radius:8px;background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:14px;color:var(--ion-text-color);resize:vertical;transition:border-color .15s ease}.task-detail__notes-textarea:focus{outline:none;border-color:var(--ion-color-primary)}.task-detail__notes-textarea::placeholder{color:var(--ion-color-medium)}.task-detail__attachment-add-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:16px;border-radius:10px;border:2px dashed var(--ion-border-color);background:transparent;font-family:var(--kff-data-font);font-size:14px;color:var(--ion-color-medium);cursor:pointer;transition:all .15s ease}.task-detail__attachment-add-btn:hover{border-color:var(--ion-color-primary);color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.task-detail__attachment-add-btn ion-icon{font-size:20px}.task-detail__attachment-add-btn:disabled{opacity:.5;cursor:not-allowed}.task-detail__static-section{padding:16px;background:var(--ion-color-step-50);border-radius:12px;border:1px solid var(--ion-border-color)}.task-detail__static-section .task-detail__section-header,.task-detail__static-section .task-detail__attachment-list{margin-bottom:12px}.task-detail__date-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.task-detail__date-option{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:2px solid var(--ion-border-color);border-radius:12px;background:var(--ion-card-background);cursor:pointer;transition:all .15s ease}.task-detail__date-option:hover{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.task-detail__date-option.active{border-color:var(--ion-color-primary);background:var(--ion-color-primary);color:#fff}.task-detail__date-option-icon{font-size:22px;color:var(--ion-color-primary)}.task-detail__date-option.active .task-detail__date-option-icon{color:#fff}.task-detail__date-option-label{font-family:var(--kff-data-font);font-size:13px;font-weight:600}.task-detail__date-option-date{font-family:var(--kff-data-font);font-size:11px;color:var(--ion-color-medium)}.task-detail__date-option.active .task-detail__date-option-date{color:#fffc}.task-detail__time-row{margin-bottom:12px}.task-detail__time-option{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 16px;border:2px solid var(--ion-border-color);border-radius:10px;background:var(--ion-card-background);font-family:var(--kff-data-font);font-size:14px;color:var(--ion-color-medium);cursor:pointer;transition:all .15s ease}.task-detail__time-option:hover{border-color:var(--ion-color-primary);color:var(--ion-color-primary)}.task-detail__time-option.active{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint);color:var(--ion-color-primary);font-weight:500}.task-detail__time-option ion-icon{font-size:18px}.task-detail__date-summary{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--ion-color-primary);border-radius:8px;font-family:var(--kff-data-font);font-size:13px;color:#fff}.task-detail__date-summary-label{opacity:.8}.task-detail__date-summary-value{font-weight:600}.tasks-stat-card{padding:16px;border-radius:12px;background:var(--ion-card-background);text-align:center;border:1px solid var(--ion-border-color)}.tasks-stat-card__value{font-size:24px;font-weight:700;font-family:var(--kff-heading-font)}.tasks-stat-card__label{font-size:11px;color:var(--ion-color-medium);font-family:var(--kff-data-font);margin-top:4px;text-transform:uppercase;letter-spacing:.03em}.tasks-list{padding-bottom:80px}.tasks-group__header{padding:12px 0;border-bottom:1px solid var(--ion-border-color)}.tasks-group__avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff;flex-shrink:0;overflow:hidden}.tasks-group__name{font-family:var(--kff-heading-font);font-size:16px;font-weight:600;color:var(--ion-text-color)}.tasks-group__count{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium)}.task-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--ion-card-background);border-radius:12px;border:1px solid var(--ion-border-color);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.task-item:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.task-item:active{transform:scale(.99)}.task-item.completed{opacity:.6}.task-item__icon{font-size:24px;flex-shrink:0}.task-item__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.task-item__name{font-family:var(--kff-heading-font);font-size:15px;font-weight:600;color:var(--ion-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-item.completed .task-item__name{text-decoration:line-through}.task-item__meta{display:flex;align-items:center;gap:4px;font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium)}.task-item__meta ion-icon{font-size:14px}.task-item__check{font-size:28px;flex-shrink:0;margin-left:4px}.tasks-member-section{position:relative}.tasks-member-card{display:flex;align-items:center;gap:12px;padding:16px;background:var(--ion-card-background);border-radius:16px 16px 0 0;border:2px solid var(--member-color, var(--ion-border-color));border-bottom:none;border-left-width:4px}.tasks-member-card__avatar-section{flex-shrink:0}.tasks-member-card__avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;object-fit:cover;box-shadow:0 2px 8px #00000026}.tasks-member-card__avatar--unassigned{background:var(--ion-color-medium);font-weight:700}.tasks-member-card__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.tasks-member-card__name{font-family:var(--kff-heading-font);font-size:18px;font-weight:700;color:var(--ion-text-color)}.tasks-member-card__stats{display:flex;align-items:center;gap:8px}.tasks-member-card__progress{font-family:var(--kff-data-font);font-size:13px;color:var(--ion-color-medium)}.tasks-member-card__complete-badge{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-success);font-weight:600}.tasks-member-card__points{display:flex;align-items:center;gap:4px;padding:8px 12px;background:var(--kff-forge-gold-10);border-radius:20px;flex-shrink:0}.tasks-member-card__points-icon{font-size:16px;color:var(--kff-forge-gold)}.tasks-member-card__points-value{font-family:var(--kff-data-font);font-size:18px;font-weight:700;color:var(--kff-forge-gold)}.tasks-member-card__points-label{font-family:var(--kff-data-font);font-size:11px;color:var(--kff-forge-gold);text-transform:uppercase;letter-spacing:.03em}.tasks-member-items{background:var(--ion-card-background);border:2px solid var(--ion-border-color);border-top:1px solid var(--ion-border-color);border-radius:0 0 16px 16px;padding:8px;display:flex;flex-direction:column;gap:8px}.tasks-member-items .task-item{border:none;background:rgba(var(--ion-text-color-rgb),.03)}.task-item__check-btn{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;border:3px solid var(--ion-color-medium);background:transparent;cursor:pointer;transition:all .2s ease;flex-shrink:0;margin-left:8px;-webkit-tap-highlight-color:transparent}.task-item__check-btn:hover{border-color:var(--ion-color-success);background:rgba(var(--ion-color-success-rgb),.1);transform:scale(1.05)}.task-item__check-btn:active{transform:scale(.95)}.task-item__check-btn.completed{border-color:var(--ion-color-success);background:var(--ion-color-success)}.task-item__check-icon{font-size:32px;color:var(--ion-color-medium);transition:color .2s ease}.task-item__check-btn:hover .task-item__check-icon{color:var(--ion-color-success)}.task-item__check-btn.completed .task-item__check-icon{color:#fff}.task-item.celebrating{animation:celebratePulse .3s ease-out}@keyframes celebratePulse{0%{transform:scale(1);box-shadow:0 0 rgba(var(--ion-color-success-rgb),.4)}50%{transform:scale(1.02);box-shadow:0 0 20px 10px rgba(var(--ion-color-success-rgb),.2)}to{transform:scale(1);box-shadow:0 0 rgba(var(--ion-color-success-rgb),0)}}.celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;overflow:hidden}.celebration-emoji{position:absolute;font-size:28px;animation:celebrationFloat 1s ease-out forwards;transform:translate(-50%,-50%)}@keyframes celebrationFloat{0%{opacity:1;transform:translate(-50%,-50%) scale(.5)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}to{opacity:0;transform:translate(calc(-50% + var(--drift-x, 0px)),calc(-50% - 80px)) scale(.8)}}.celebration-emoji:nth-child(odd){--drift-x: 20px}.celebration-emoji:nth-child(2n){--drift-x: -20px}.celebration-emoji:nth-child(3n){--drift-x: 35px}.celebration-emoji:nth-child(4n){--drift-x: -30px}.icon-picker-button:hover{border-color:var(--kff-forge-gold)!important;background:var(--kff-forge-gold-10)!important}.tasks-dashboard{display:grid;grid-template-columns:1fr;gap:16px;padding-bottom:80px}@media (min-width: 640px){.tasks-dashboard{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.tasks-dashboard{gap:20px}}.tasks-dashboard__full-width{grid-column:1 / -1}.tasks-header-action{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;border:none;background:var(--ion-color-step-100);color:var(--ion-text-color);font-family:var(--kff-data-font);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.tasks-header-action:hover{background:var(--ion-color-step-150)}.tasks-header-action:active{transform:scale(.98)}.tasks-header-action ion-icon{font-size:18px}.info-label{font-family:var(--kff-data-font);font-size:12px;font-weight:500;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.02em;margin-bottom:4px}.info-value{font-family:var(--kff-heading-font);font-size:15px;font-weight:500;color:var(--ion-text-color)}.admin-settings ion-card{--background: var(--ion-card-background);box-shadow:none;border:1px solid var(--ion-border-color)}.admin-settings ion-item-divider{--background: var(--ion-color-step-100);--color: var(--ion-color-medium);font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.5px}.admin-settings ion-item-divider ion-icon{margin-right:8px;font-size:16px}.admin-settings ion-item{--background: transparent}.admin-settings ion-badge{margin-bottom:12px}.admin-settings ion-note{display:block;font-size:12px;color:var(--ion-color-medium)}.theme-option{display:flex;align-items:center;gap:16px;padding:16px;background:var(--ion-color-step-50);border:2px solid transparent;border-radius:12px;cursor:pointer;text-align:left;transition:all .2s ease}.theme-option.selected{background:rgba(var(--kff-forge-gold-rgb),.15);border-color:var(--kff-forge-gold)}.family-member-profile{--ion-background-color: #0f172a}.avatar-preview{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;margin:16px auto}.emoji-picker{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0}.emoji-option{width:44px;height:44px;border:2px solid transparent;border-radius:8px;background:var(--ion-color-light, #1e293b);font-size:24px;cursor:pointer;transition:all .2s}.emoji-option:hover{background:var(--ion-color-medium, #334155)}.emoji-option.selected{border-color:var(--ion-color-primary, #6366f1);background:#6366f133}.color-picker{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0}.color-option{width:36px;height:36px;border:3px solid transparent;border-radius:50%;cursor:pointer;transition:all .2s}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:#fff;box-shadow:0 0 0 2px var(--ion-color-primary, #6366f1)}.chip-container{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px;min-height:48px}.no-items{color:var(--ion-color-medium);font-size:14px;font-style:italic}ion-card{--background: var(--ion-color-light, #1e293b);margin:16px}ion-card-header{padding-bottom:0}ion-card-title{font-size:16px;display:flex;align-items:center;gap:8px}ion-card-title ion-icon{font-size:20px;color:var(--ion-color-primary)}ion-item-divider{--background: transparent;--color: var(--ion-color-medium);font-size:12px;font-weight:600;text-transform:uppercase;margin-top:12px}ion-chip{--background: rgba(239, 68, 68, .2)}ion-chip[color=primary]{--background: rgba(99, 102, 241, .2)}.inspiration-widget{position:relative;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,var(--kff-foundry-blue, #6366f1),#8b5cf6);min-height:120px;height:100%;display:flex;flex-direction:column;justify-content:center}.inspiration-widget.loading,.inspiration-widget.empty{display:flex;align-items:center;justify-content:center;min-height:150px;color:var(--ion-color-medium)}.inspiration-widget .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1}.inspiration-content{position:relative;z-index:2;padding:24px;text-align:center}.quote-icon{font-size:32px;margin-bottom:12px}.quote-text{font-size:18px;font-weight:400;line-height:1.6;color:#fff;margin:0 0 16px;font-style:italic}.quote-author{display:block;font-size:14px;color:#fffc;font-style:normal;margin-bottom:8px}.quote-source{font-size:11px;color:#ffffff80;text-transform:uppercase;letter-spacing:1px}.inspiration-actions{position:absolute;bottom:8px;right:8px;z-index:3;display:flex;gap:4px}.inspiration-actions ion-button{--color: rgba(255, 255, 255, .6)}.inspiration-actions ion-button:hover{--color: white}.spinning{animation:spin 1s linear infinite}.inspiration-widget.card{min-height:180px}.inspiration-widget.banner{padding:16px 24px}.inspiration-widget.banner .inspiration-content{padding:0;text-align:left;display:flex;align-items:center;gap:16px}.inspiration-widget.banner .quote-icon{font-size:24px;margin:0}.inspiration-widget.banner .quote-text{font-size:14px;margin:0;flex:1}.inspiration-widget.banner .quote-author{font-size:12px;margin:0;white-space:nowrap}.inspiration-widget.banner .quote-source{display:none}.inspiration-widget.minimal{background:transparent}.inspiration-widget.minimal .inspiration-content{padding:16px}.inspiration-widget.minimal .quote-icon{display:none}.inspiration-widget.minimal .quote-text{font-size:14px;color:var(--ion-text-color)}.inspiration-widget.minimal .quote-author{color:var(--ion-color-medium)}.inspiration-widget.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;border-radius:0;display:flex;align-items:center;justify-content:center;background:var(--ion-background-color)}.inspiration-widget.fullscreen .inspiration-content{max-width:800px;padding:48px}.inspiration-widget.fullscreen .quote-icon{font-size:48px;margin-bottom:24px}.inspiration-widget.fullscreen .quote-text{font-size:32px;margin-bottom:24px}.inspiration-widget.fullscreen .quote-author{font-size:20px}.inspiration-screensaver{position:absolute;bottom:120px;left:48px;right:48px;text-align:center;z-index:20;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.8)}.screensaver-quote{position:relative;max-width:800px;margin:0 auto}.screensaver-quote .quote-mark{font-size:64px;font-family:Georgia,serif;color:#ffffff4d;line-height:0;position:absolute;top:-20px;left:-30px}.screensaver-quote .quote-mark.closing{left:auto;right:-30px;top:auto;bottom:-40px}.screensaver-quote .quote-text{font-size:28px;font-weight:300;font-style:italic;line-height:1.5;margin:0}.screensaver-author{font-size:18px;font-weight:400;opacity:.8;margin-top:16px}.inspiration-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--ion-color-step-100);border-radius:8px;cursor:pointer;transition:background .2s}.inspiration-banner:hover{background:var(--ion-color-step-150)}.banner-icon{font-size:20px}.banner-quote{flex:1;font-size:13px;font-style:italic;color:var(--ion-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.banner-author{font-size:12px;color:var(--ion-color-medium);white-space:nowrap}@media (max-width: 768px){.inspiration-widget.fullscreen .quote-text{font-size:24px}.inspiration-widget.fullscreen .quote-author{font-size:16px}.screensaver-quote .quote-text{font-size:20px}.screensaver-quote .quote-mark{font-size:48px}.inspiration-screensaver{left:24px;right:24px;bottom:80px}}.quote-manager{--ion-background-color: #0f172a}.today-view{padding:16px}.tip-text{font-size:14px;color:var(--ion-color-medium);margin-bottom:16px;line-height:1.5}.quote-item,.preset-quote-item,.history-item{--background: var(--ion-color-light, #1e293b);margin:8px 16px;border-radius:8px}.quote-item h2,.preset-quote-item h2,.history-item h3{font-size:14px;font-style:italic;color:var(--ion-text-color);line-height:1.5}.quote-item p,.preset-quote-item p,.history-item p{font-size:12px;color:var(--ion-color-medium);margin-top:4px}.quote-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;align-items:center}.quote-meta ion-chip{height:24px;font-size:11px}.shown-count{font-size:11px;color:var(--ion-color-medium);margin-left:auto}.category-selector{padding:8px 16px;background:#0003}.category-selector ion-segment-button{--indicator-color: var(--ion-color-primary);font-size:12px}.history-item ion-badge{min-width:40px;text-align:center}.tags-container{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.input-hint{font-size:11px;color:var(--ion-color-medium);margin-top:4px}ion-card{--background: var(--ion-color-light, #1e293b)}ion-item-divider{--background: rgba(0, 0, 0, .2);--color: var(--ion-color-medium);font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.5px}ion-fab-button{--background: var(--ion-color-primary)}@media (min-width: 768px){.quote-item,.preset-quote-item,.history-item{margin:8px 24px}.today-view{max-width:600px;margin:0 auto;padding:24px}}.screen-control{--ion-background-color: #0f172a}.quick-actions-bar{display:flex;gap:8px;padding:12px 16px;background:#0003;overflow-x:auto}.quick-actions-bar ion-button{--background: var(--ion-color-primary-shade);flex-shrink:0}.screen-card{--background: var(--ion-color-light, #1e293b);margin:8px;cursor:pointer;transition:transform .2s,box-shadow .2s}.screen-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.screen-card.screensaver{opacity:.7}.screen-preview{height:100px;background:linear-gradient(135deg,#1a1a2e,#16213e);display:flex;align-items:center;justify-content:center;position:relative;border-radius:8px 8px 0 0}.screen-mode-icon{font-size:48px}.screensaver-badge{position:absolute;top:8px;right:8px;font-size:24px}.screen-card ion-card-content{padding:12px}.screen-info h3{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--ion-text-color)}.screen-info p{margin:0;font-size:12px;color:var(--ion-color-medium)}.screen-status{display:flex;gap:8px;margin:12px 0}.screen-status ion-chip{height:24px;font-size:11px}.screen-brightness{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ion-color-medium)}.screen-brightness ion-icon{font-size:14px}.offline-screen{opacity:.6}.group-icon,.preset-icon{font-size:28px;width:40px;text-align:center}ion-item-divider{--background: rgba(0, 0, 0, .2);--color: var(--ion-color-medium);font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.5px;padding:12px 16px}ion-item-divider ion-badge{margin-right:8px}ion-modal ion-content{--background: var(--ion-background-color)}.announcement-priority-low{opacity:.7}.announcement-priority-urgent{background:#ef44440d}.announcements-page input[type=checkbox]{width:18px;height:18px;accent-color:var(--kff-foundry-blue)}.list-page__loading{display:flex;justify-content:center;align-items:center;padding:48px}.list-page__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:var(--ion-color-medium)}.list-page__empty-icon{font-size:48px;margin-bottom:16px}.list-page__empty-hint{font-size:13px;opacity:.7;margin-top:4px}.list-page__create-header{display:flex;gap:16px;align-items:flex-start}.list-page__icon-btn{width:64px;height:64px;border-radius:16px;border:2px solid var(--ion-border-color);background:var(--ion-card-background);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;flex-shrink:0}.list-page__icon-btn:hover{border-color:var(--ion-color-primary);transform:scale(1.02)}.list-page__icon-btn-emoji{font-size:32px}.list-page__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.list-page__header-info{display:flex;align-items:center;gap:16px}.list-page__header-icon{font-size:40px}.list-page__header-title{font-size:24px;font-weight:700;margin:0;line-height:1.2}.list-page__header-meta{display:flex;align-items:center;gap:12px;margin-top:4px}.list-page__header-type{font-size:13px;color:var(--ion-color-medium)}.list-page__header-pinned{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--ion-color-warning)}.list-page__header-actions{display:flex;gap:8px}.list-page__action-btn{width:40px;height:40px;border-radius:10px;border:1px solid var(--ion-border-color);background:var(--ion-card-background);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;color:var(--ion-color-medium);font-size:20px}.list-page__action-btn:hover{background:var(--ion-color-step-50);color:var(--ion-color-primary)}.list-page__stats{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--ion-color-step-50);border-radius:10px}.list-page__stat{font-family:var(--kff-data-font);font-size:14px;color:var(--ion-text-color)}.list-page__stat--muted{color:var(--ion-color-medium)}.list-page__clear-btn{display:flex;align-items:center;gap:6px;margin-left:auto;padding:6px 12px;border-radius:8px;border:none;background:transparent;color:var(--ion-color-primary);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease}.list-page__clear-btn:hover{background:var(--ion-color-primary-shade);background:rgba(var(--ion-color-primary-rgb),.1)}.list-page__add-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:transparent;border:none;border-radius:0}.list-page__add-icon{font-size:24px;color:var(--ion-color-medium)}.list-page__add-input{flex:1;border:none;border-bottom:2px solid var(--ion-border-color);background:transparent;font-size:16px;color:var(--ion-text-color);outline:none;box-shadow:none;padding:4px 0;transition:border-color .15s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.list-page__add-input:focus{border-bottom-color:var(--kff-forge-gold);outline:none;box-shadow:none}.list-page__add-input::placeholder{color:var(--ion-color-medium)}.list-page__add-btn{width:36px;height:36px;border-radius:8px;border:none;background:var(--ion-color-primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;font-size:20px}.list-page__add-btn:hover{background:var(--ion-color-primary-shade);transform:scale(1.05)}.list-page__add-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.list-page__items{display:flex;flex-direction:column;gap:8px}.list-page__group{display:flex;flex-direction:column;gap:4px}.list-page__category{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--ion-color-medium);padding:8px 4px 4px;margin-top:8px}.list-page__category:first-child{margin-top:0}.list-page__item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--ion-card-background);border-radius:12px;border:1px solid var(--ion-border-color);transition:all .2s ease-out,opacity .25s ease-out,transform .2s ease-out}.list-page__item:hover{border-color:var(--ion-color-medium)}.list-page__item.checked{opacity:.6}.list-page__item.checked .list-page__item-name{text-decoration:line-through;color:var(--ion-color-medium);transition:color .2s ease,text-decoration .2s ease}.list-page__check-btn{width:28px;height:28px;border-radius:50%;border:2px solid var(--ion-color-medium);background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease-out,background-color .15s ease,border-color .15s ease,transform .1s ease;flex-shrink:0;position:relative}.list-page__check-btn:active{transform:scale(.9)}.list-page__check-btn:hover{border-color:var(--ion-color-primary)}.list-page__check-btn.checked{border-color:var(--ion-color-success);background:var(--ion-color-success)}.list-page__check-icon{width:12px;height:6px;border-left:2px solid transparent;border-bottom:2px solid transparent;transform:rotate(-45deg);margin-bottom:2px;transition:border-color .15s ease}.list-page__check-btn.checked .list-page__check-icon{border-color:#fff}.list-page__item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.list-page__inline-input{width:100%;padding:2px 0;font-size:15px;font-family:inherit;color:var(--ion-text-color);background:transparent;border:none;border-bottom:2px solid var(--kff-forge-gold);border-radius:0;outline:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.list-page__inline-input:focus{outline:none;box-shadow:none;border-bottom:2px solid var(--kff-forge-gold)}.list-page__item-name{font-size:15px;color:var(--ion-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:text;padding:2px 4px;margin:-2px -4px;border-radius:4px;transition:background .15s ease}.list-page__item-name:hover{background:var(--ion-color-step-50)}.list-page__item-qty{font-size:12px;color:var(--ion-color-medium);font-family:var(--kff-data-font)}.list-page__item-notes{font-size:12px;color:var(--ion-color-medium);font-style:italic}.list-page__delete-btn{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--ion-color-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;font-size:18px;opacity:0}.list-page__item:hover .list-page__delete-btn{opacity:1}.list-page__delete-btn:hover{background:rgba(var(--ion-color-danger-rgb),.1);color:var(--ion-color-danger)}@media (pointer: coarse){.list-page__delete-btn{opacity:1}.list-page__check-btn{width:36px;height:36px}.list-page__item{padding:14px 16px}}.quick-access-entry{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;min-height:100%;outline:none;-webkit-user-select:none;user-select:none}.entry-header{text-align:center;margin-bottom:48px}.entry-header h2{font-size:28px;font-weight:600;color:var(--ion-text-color);margin:0 0 12px}.entry-header p{font-size:16px;color:var(--ion-color-medium);margin:0}.code-inputs{display:flex;margin-bottom:32px;padding:24px 32px;background:rgba(var(--ion-color-primary-rgb),.05);border-radius:16px;border:2px solid rgba(var(--ion-color-primary-rgb),.1);transition:border-color .2s ease,background-color .2s ease}.code-inputs.success{background:rgba(var(--ion-color-success-rgb),.1);border-color:var(--ion-color-success)}.code-inputs.shake{animation:shake .4s ease-in-out;border-color:var(--ion-color-danger);background:rgba(var(--ion-color-danger-rgb),.1)}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(10px)}60%{transform:translate(-10px)}80%{transform:translate(10px)}}.input-group{display:flex;align-items:center;gap:8px}.input-separator{font-size:24px;font-weight:300;color:var(--ion-color-medium);margin:0 4px}.code-input{width:48px;height:56px;border-radius:12px;background:var(--ion-card-background, #1e293b);border:2px solid var(--ion-color-step-200, rgba(255, 255, 255, .15));font-size:28px;font-weight:700;color:var(--ion-text-color);text-align:center;caret-color:var(--ion-color-primary);transition:all .15s ease;outline:none;-webkit-appearance:none;-moz-appearance:textfield}.code-input::-webkit-outer-spin-button,.code-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.code-input:focus,.code-input.focused{border-color:var(--ion-color-primary);box-shadow:0 0 0 3px rgba(var(--ion-color-primary-rgb),.25)}.code-input.filled{border-color:var(--ion-color-primary);background:rgba(var(--ion-color-primary-rgb),.15)}.code-input:disabled{opacity:.6;cursor:not-allowed}.success-display{display:flex;align-items:center;gap:12px;color:var(--ion-color-success);font-size:24px;font-weight:600}.success-display ion-icon{font-size:32px}.entry-error{display:flex;align-items:center;gap:8px;color:var(--ion-color-danger);font-size:14px;margin-bottom:24px;padding:12px 20px;background:rgba(var(--ion-color-danger-rgb),.1);border-radius:8px}.entry-error ion-icon{font-size:20px}.entry-loading{display:flex;align-items:center;gap:12px;color:var(--ion-color-medium);font-size:16px;margin-bottom:24px}.entry-loading ion-spinner{width:24px;height:24px}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:320px;margin-bottom:32px}.keypad-key{width:88px;height:72px;border:none;border-radius:16px;background:var(--ion-card-background, #1e293b);color:var(--ion-text-color);font-size:28px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .1s ease;-webkit-tap-highlight-color:transparent}.keypad-key:hover:not(:disabled){background:var(--ion-color-step-100, rgba(255, 255, 255, .1))}.keypad-key:active:not(:disabled){transform:scale(.95);background:var(--ion-color-step-150, rgba(255, 255, 255, .15))}.keypad-key.empty{background:transparent;cursor:default}.keypad-key.backspace{background:var(--ion-color-step-50, rgba(255, 255, 255, .05))}.keypad-key.backspace ion-icon{font-size:28px}.keypad-key:disabled{opacity:.4;cursor:not-allowed}.keypad-key:focus-visible{outline:2px solid var(--kff-foundry-blue, #6366f1);outline-offset:2px}.cancel-button{padding:14px 48px;border:none;border-radius:12px;background:transparent;color:var(--ion-color-medium);font-size:16px;font-weight:500;cursor:pointer;transition:all .15s ease}.cancel-button:hover{background:var(--ion-color-step-50, rgba(255, 255, 255, .05));color:var(--ion-text-color)}.cancel-button:active{transform:scale(.98)}.cancel-button:focus-visible{outline:2px solid var(--kff-foundry-blue, #6366f1);outline-offset:2px}@media (min-width: 768px){.quick-access-entry{padding:60px 40px}.entry-header h2{font-size:36px}.entry-header p{font-size:18px}.code-input{width:56px;height:64px;font-size:32px}.input-separator{font-size:28px}.keypad-key{width:100px;height:80px;font-size:32px}}@media (max-width: 480px){.quick-access-entry{padding:24px 16px}.entry-header{margin-bottom:32px}.entry-header h2{font-size:22px}.entry-header p{font-size:14px}.code-inputs{padding:16px 12px}.input-group{gap:6px}.code-input{width:38px;height:46px;font-size:20px;border-radius:10px}.input-separator{font-size:18px;margin:0 2px}.keypad{gap:12px;max-width:280px}.keypad-key{width:76px;height:64px;font-size:24px;border-radius:12px}}.quick-access-page{--background: var(--ion-background-color)}.quick-access-content{--background: linear-gradient( 135deg, var(--ion-background-color) 0%, rgba(var(--ion-color-primary-rgb), .05) 100% )}.quick-access-wrapper{display:flex;flex-direction:column;align-items:center;min-height:100%;padding:24px}.quick-access-icon{margin-bottom:24px;padding:24px;background:rgba(var(--ion-color-primary-rgb),.1);border-radius:50%}.quick-access-icon ion-icon{font-size:64px;color:var(--ion-color-primary)}.quick-access-instructions{margin-top:auto;padding:24px;max-width:480px;text-align:center;color:var(--ion-color-medium)}.quick-access-instructions h3{font-size:16px;font-weight:600;color:var(--ion-text-color);margin:0 0 16px}.quick-access-instructions ol{text-align:left;margin:0;padding-left:24px;font-size:14px;line-height:1.8}.quick-access-instructions li{margin-bottom:8px}.quick-access-instructions li:last-child{margin-bottom:0}.quick-access-instructions .instruction-note{margin-top:16px;font-size:13px;color:var(--ion-color-medium-shade);font-style:italic}@media (min-width: 768px){.quick-access-wrapper{padding:40px;justify-content:center}.quick-access-icon{padding:32px;margin-bottom:32px}.quick-access-icon ion-icon{font-size:80px}.quick-access-instructions{margin-top:48px;padding:32px}.quick-access-instructions h3{font-size:18px}.quick-access-instructions ol{font-size:16px}}@media (max-width: 480px){.quick-access-wrapper{padding:16px}.quick-access-icon{padding:16px;margin-bottom:16px}.quick-access-icon ion-icon{font-size:48px}.quick-access-instructions{padding:16px}.quick-access-instructions h3{font-size:14px}.quick-access-instructions ol{font-size:13px;padding-left:20px}}.widget{height:100%;display:flex;flex-direction:column;position:relative;background:var(--ion-card-background);color:var(--ion-text-color);border-radius:12px;overflow:hidden}.widget.editing{cursor:move}.widget-edit-controls{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:6px 8px;background:#6366f1e6;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:grab;-webkit-user-select:none;user-select:none}.widget-edit-controls:active{cursor:grabbing;background:#6366f1f2}.widget-edit-label{color:#fff;font-size:12px;font-weight:500;text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;padding-right:8px}.widget-edit-actions{display:flex;gap:2px;cursor:default;flex-shrink:0}.widget-edit-actions ion-button{--color: white;--padding-start: 12px;--padding-end: 12px;--padding-top: 12px;--padding-bottom: 12px;min-width:48px;min-height:40px;margin:-6px -8px -6px 0;--background: rgba(255, 255, 255, .15);--background-hover: rgba(255, 255, 255, .3);--background-activated: rgba(255, 255, 255, .4);--background-focused: rgba(255, 255, 255, .3);border-radius:8px}.widget-edit-actions ion-button ion-icon{font-size:24px}.widget-options-popover{--width: 260px}.widget-options-list{padding:8px 0}.widget-options-list ion-item{--padding-start: 16px;--padding-end: 12px;--inner-padding-end: 0;--min-height: 44px;font-size:14px}.widget-options-list ion-icon[slot=start]{font-size:18px;margin-right:12px;color:var(--ion-color-medium)}.widget-options-list .widget-menu-item{--min-height: 44px}.widget-options-list .widget-style-select{--padding-start: 0;--padding-end: 0;min-width:80px;font-size:14px;font-weight:500}.widget-options-list .widget-menu-divider{--background: var(--ion-color-step-100);min-height:1px;margin:4px 0}.widget-options-list .danger-item{--color: var(--ion-color-danger)}.widget-options-list .danger-item ion-icon[slot=start]{color:var(--ion-color-danger)!important}.menu-divider{height:1px;background:var(--ion-color-step-100);margin:4px 12px}.widget-title{padding:12px 16px 0;font-size:14px;font-weight:600;color:var(--ion-text-color);text-transform:uppercase;letter-spacing:.5px}.widget-content{flex:1;overflow:hidden;position:relative}.widget-loading{display:flex;align-items:center;justify-content:center;height:100%}.widget-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ion-color-danger);text-align:center;padding:16px}.widget-error span{font-size:32px;margin-bottom:8px}.widget-error p{font-size:14px;margin:0}.widget-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ion-color-medium);text-align:center;padding:16px}.widget-placeholder span{font-size:32px;margin-bottom:8px}.widget-placeholder p{font-size:14px;margin:0 0 4px}.widget-placeholder small{font-size:12px;opacity:.7}.react-grid-item.react-grid-placeholder{background:var(--ion-color-primary);opacity:.2;border-radius:12px}.react-grid-item>.react-resizable-handle{width:20px;height:20px}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:6px;bottom:6px;width:8px;height:8px;border-right:2px solid rgba(255,255,255,.4);border-bottom:2px solid rgba(255,255,255,.4)}.widget-resize-handle{position:absolute;right:0;bottom:0;width:20px;height:20px;cursor:nwse-resize;background:transparent;z-index:15}.widget-resize-handle:after{content:"";position:absolute;right:4px;bottom:4px;width:10px;height:10px;border-right:3px solid var(--kff-forge-gold, #fbbf24);border-bottom:3px solid var(--kff-forge-gold, #fbbf24);border-radius:2px;opacity:.6;transition:opacity .15s ease}.widget-resize-handle:hover:after{opacity:1}.widget-resize-handle:active:after{opacity:1;border-color:var(--kff-foundry-blue, #6366f1)}.widget.in-section{height:100%;min-height:100px}.widget.is-dragging{opacity:.5;z-index:1000}.widget.drag-over{outline:2px dashed var(--kff-foundry-blue, #6366f1);outline-offset:2px;background:#6366f11a}.widget-drag-handle[data-dnd-kit-draggable]{cursor:grab}.widget-drag-handle[data-dnd-kit-draggable]:active{cursor:grabbing}.widget-expand-button{position:absolute;top:8px;right:8px;z-index:5;width:32px;height:32px;border:none;border-radius:8px;background:#0006;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background-color .15s ease,transform .1s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.widget-expand-button ion-icon{font-size:18px}.widget:hover .widget-expand-button{opacity:1}.widget-expand-button:hover{background:#0009}.widget-expand-button:active{transform:scale(.95)}.widget-expand-button:focus-visible{outline:2px solid var(--kff-foundry-blue, #6366f1);outline-offset:2px;opacity:1}@media (hover: none){.widget-expand-button{opacity:.8}}.widget.editing .widget-expand-button{display:none}.widget-content.fullscreen{overflow:auto;-webkit-overflow-scrolling:touch}.skeleton{background:linear-gradient(90deg,var(--ion-color-step-100, rgba(0, 0, 0, .08)) 25%,var(--ion-color-step-150, rgba(0, 0, 0, .12)) 50%,var(--ion-color-step-100, rgba(0, 0, 0, .08)) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px;height:100%;min-height:100px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.loading,.empty,.error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:var(--ion-color-medium)}.empty span,.error span{font-size:32px}.empty p,.error p{font-size:14px;margin:0}.clock-widget{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:16px}.clock-widget.digital .clock-time{font-size:48px;font-weight:300;font-variant-numeric:tabular-nums;color:var(--ion-text-color);letter-spacing:-2px}.clock-widget .clock-date{font-size:16px;color:var(--ion-color-medium);margin-top:8px}.clock-widget.analog .clock-face{position:relative;width:120px;height:120px;border:3px solid var(--ion-color-medium);border-radius:50%}.clock-widget.analog .hour-marker{position:absolute;width:2px;height:8px;background:var(--ion-color-medium);left:50%;top:4px;transform-origin:center 56px}.clock-widget.analog .hand{position:absolute;bottom:50%;left:50%;transform-origin:bottom center;border-radius:2px}.clock-widget.analog .hour-hand{width:4px;height:35px;background:var(--ion-text-color);margin-left:-2px}.clock-widget.analog .minute-hand{width:3px;height:45px;background:var(--ion-text-color);margin-left:-1.5px}.clock-widget.analog .second-hand{width:1px;height:50px;background:#ef4444;margin-left:-.5px}.clock-widget.analog .center-dot{position:absolute;width:10px;height:10px;background:var(--ion-text-color);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.weather-widget{padding:16px;height:100%;display:flex;flex-direction:column}.weather-current{display:flex;gap:16px;align-items:center}.weather-main{display:flex;align-items:center;gap:8px}.weather-icon{font-size:48px}.weather-temp{display:flex;align-items:flex-start}.weather-temp .temp-value{font-size:48px;font-weight:300;line-height:1}.weather-temp .temp-unit{font-size:20px;color:var(--ion-color-medium)}.weather-details{flex:1}.weather-location{font-size:16px;font-weight:500;color:var(--ion-text-color)}.weather-description{font-size:14px;color:var(--ion-color-medium);text-transform:capitalize}.weather-meta{display:flex;gap:12px;font-size:12px;color:var(--ion-color-medium);margin-top:4px}.weather-forecast{display:flex;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.forecast-day{display:flex;flex-direction:column;align-items:center;gap:4px}.forecast-name{font-size:12px;color:var(--ion-color-medium)}.forecast-icon{font-size:20px}.forecast-temps{display:flex;gap:4px;font-size:12px}.temp-high{color:var(--ion-text-color)}.temp-low{color:var(--ion-color-medium)}.weather-skeleton{width:100%;height:100%;background:linear-gradient(90deg,var(--ion-color-step-100) 25%,var(--ion-color-step-150) 50%,var(--ion-color-step-100) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}.weather-cache-indicator{position:absolute;top:8px;right:8px;font-size:12px;opacity:.5;cursor:help}.calendar-widget{height:100%;overflow-y:auto}.calendar-widget-with-picker{display:flex;flex-direction:column;height:100%}.calendar-view-picker{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid var(--ion-color-step-100);flex-shrink:0;background:var(--ion-card-background)}.view-picker-btn{flex:1;padding:6px 12px;border:1px solid var(--ion-color-step-200);border-radius:6px;background:transparent;color:var(--ion-color-medium);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.view-picker-btn:hover{background:#6366f11a;border-color:var(--ion-color-primary);color:var(--ion-color-primary)}.view-picker-btn.active{background:var(--ion-color-primary);border-color:var(--ion-color-primary);color:#fff}.calendar-view-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.calendar-view-content>.calendar-widget{flex:1}.calendar-widget.agenda-view{padding:12px}.agenda-day{margin-bottom:16px}.agenda-day:last-child{margin-bottom:0}.agenda-date{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--ion-color-primary);margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid rgba(99,102,241,.3)}.agenda-events{display:flex;flex-direction:column;gap:6px}.agenda-event{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffff0d;border-radius:6px;border-left:3px solid}.calendar-widget .event-time{font-size:12px;color:var(--ion-color-medium);min-width:60px;flex-shrink:0}.calendar-widget .event-title{flex:1;font-size:14px;color:var(--ion-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-member{font-size:16px}.calendar-widget.day-view{display:flex;flex-direction:column}.day-view-header{padding:12px 16px;border-bottom:1px solid var(--ion-color-step-100);flex-shrink:0}.day-view-date{display:flex;flex-direction:column}.day-view-date .day-name{font-size:14px;font-weight:600;color:var(--ion-text-color)}.day-view-date .day-number{font-size:12px;color:var(--ion-color-medium)}.all-day-section{display:flex;align-items:center;gap:12px;padding:8px 16px;border-bottom:1px solid var(--ion-color-step-100);flex-shrink:0}.all-day-label{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--ion-color-medium);min-width:50px}.all-day-events{display:flex;flex-wrap:wrap;gap:4px;flex:1}.all-day-event{padding:4px 8px;border-radius:4px;font-size:12px;color:#fff;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.day-view-grid{position:relative;flex:1;overflow-y:auto}.hour-lines{position:absolute;left:0;right:0;top:0;pointer-events:none}.hour-line{position:absolute;left:0;right:0;border-top:1px solid var(--ion-color-step-100);padding-left:8px}.hour-line .hour-label{position:absolute;left:8px;top:4px;font-size:10px;color:var(--ion-color-medium);text-transform:uppercase}.events-container{position:relative;margin-left:60px;margin-right:8px}.day-event{position:absolute;left:0;right:0;border-radius:4px;padding:4px 8px;color:#fff;font-size:12px;overflow:hidden;display:flex;flex-direction:column;gap:2px}.day-event .event-time{color:#fffc;min-width:unset}.day-event .event-title{color:#fff;font-weight:500}.current-time-indicator{position:absolute;left:0;right:0;height:2px;background:#ef4444;z-index:10}.current-time-indicator:before{content:"";position:absolute;left:-4px;top:-4px;width:10px;height:10px;background:#ef4444;border-radius:50%}.calendar-widget.week-view{display:flex;flex-direction:column}.week-view-header{display:flex;border-bottom:1px solid var(--ion-color-step-100);flex-shrink:0}.time-gutter-header{width:50px;flex-shrink:0}.week-day-header{flex:1;display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-left:1px solid var(--ion-color-step-100)}.week-day-header.today{background:#6366f11a}.week-day-header .day-name{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--ion-color-medium)}.week-day-header .day-number{font-size:18px;font-weight:600;color:var(--ion-text-color)}.week-day-header.today .day-number{color:var(--ion-color-primary)}.week-all-day-row{display:flex;border-bottom:1px solid var(--ion-color-step-100);min-height:32px;flex-shrink:0}.week-all-day-row .time-gutter{width:50px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.week-day-all-day{flex:1;display:flex;flex-direction:column;gap:2px;padding:4px;border-left:1px solid var(--ion-color-step-100)}.week-day-all-day .all-day-event{font-size:10px;padding:2px 4px}.week-view-grid{display:flex;flex:1;overflow-y:auto}.week-view-grid .time-gutter{width:50px;flex-shrink:0;position:relative}.week-view-grid .hour-label{position:absolute;right:4px;font-size:10px;color:var(--ion-color-medium);text-transform:uppercase;transform:translateY(-50%)}.week-day-column{flex:1;position:relative;border-left:1px solid var(--ion-color-step-100)}.week-day-column.today{background:#6366f108}.hour-cell{border-bottom:1px solid var(--ion-color-step-50)}.hour-cell:nth-child(2n){border-bottom-color:var(--ion-color-step-100)}.week-event{position:absolute;left:2px;right:2px;border-radius:3px;padding:2px 4px;color:#fff;font-size:10px;overflow:hidden;z-index:5}.week-event .event-title{color:#fff;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-widget.month-view{display:flex;flex-direction:column;height:100%}.month-view-header{padding:12px 16px;border-bottom:1px solid var(--ion-color-step-100);flex-shrink:0}.month-title{font-size:18px;font-weight:600;color:var(--ion-text-color)}.month-day-headers{display:grid;border-bottom:1px solid var(--ion-color-step-100);flex-shrink:0}.month-day-header{padding:8px 4px;text-align:center;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--ion-color-medium)}.month-grid{display:grid;flex:1;overflow-y:auto}.month-day{min-height:60px;padding:4px;border-right:1px solid var(--ion-color-step-50);border-bottom:1px solid var(--ion-color-step-50);display:flex;flex-direction:column;background:var(--ion-card-background)}.month-day:nth-child(7n){border-right:none}.month-day.other-month{background:#0000001a}.month-day.other-month .month-day-number{color:var(--ion-color-step-400)}.month-day.today{background:#6366f11a}.month-day.today .month-day-number{color:var(--ion-color-primary);font-weight:700}.month-day-number{font-size:12px;font-weight:500;color:var(--ion-text-color);margin-bottom:2px}.month-day-events{display:flex;flex-direction:column;gap:2px;flex:1;overflow:hidden}.month-event{padding:2px 4px;border-radius:3px;font-size:10px;color:#fff;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default}.month-more-events{font-size:10px;color:var(--ion-color-medium);padding:2px 4px;cursor:default}.agenda-widget,.chores-widget{padding:12px;height:100%;overflow-y:auto}.chore-group{margin-bottom:16px}.chore-group-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.member-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px}.member-avatar.small{width:24px;height:24px;font-size:12px}.member-name{flex:1;font-weight:500;color:var(--ion-text-color)}.chore-count{font-size:12px;color:var(--ion-color-medium)}.chore-list{display:flex;flex-direction:column;gap:4px}.chore-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffff0d;border-radius:6px;cursor:pointer;transition:all .2s}.chore-item:hover{background:#ffffff1a}.chore-item.completed{opacity:.5}.chore-item.completed .chore-name{text-decoration:line-through}.chore-icon{font-size:16px}.chore-name{flex:1;font-size:14px}.chore-points{font-size:12px;color:#fbbf24}.chores-widget-enhanced{display:flex;flex-direction:column;height:100%;padding:12px;overflow:hidden;contain:paint}.chores-widget-enhanced .chores-widget-content{flex:1;overflow-y:auto;overflow-x:hidden}.chores-widget-view-picker{display:flex;gap:4px;margin-bottom:12px;padding:4px;background:#ffffff0d;border-radius:8px;width:fit-content}.chores-widget-view-picker .view-picker-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--ion-color-medium);cursor:pointer;transition:all .15s ease}.chores-widget-view-picker .view-picker-btn:hover{background:#ffffff1a;color:var(--ion-text-color)}.chores-widget-view-picker .view-picker-btn.active{background:var(--kff-foundry-blue);color:#fff}.chores-widget-view-picker .view-picker-btn ion-icon{font-size:18px}.chores-progress-bar{display:flex;align-items:center;gap:10px}.chores-progress-bar .progress-track{flex:1;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.chores-progress-bar.size-sm .progress-track{height:6px}.chores-progress-bar.size-lg .progress-track{height:10px}.chores-progress-bar .progress-fill{height:100%;background:var(--kff-foundry-blue);border-radius:4px;transition:width .3s ease}.chores-progress-bar .progress-fill.complete{background:var(--ion-color-success)}.chores-progress-bar .progress-label{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);white-space:nowrap}.chores-summary-view{display:flex;flex-direction:column;gap:16px}.chores-summary-view.compact{gap:12px}.chores-summary-view .summary-header{display:flex;align-items:center;justify-content:space-between}.chores-summary-view .summary-stats{display:flex;flex-direction:column}.chores-summary-view .stat-value{font-family:var(--kff-heading-font);font-size:28px;font-weight:700;color:var(--ion-text-color);line-height:1}.chores-summary-view.compact .stat-value{font-size:22px}.chores-summary-view .stat-label{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.03em}.chores-summary-view .summary-points{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--kff-forge-gold-10);border-radius:20px}.chores-summary-view .summary-points ion-icon{font-size:18px;color:var(--kff-forge-gold)}.chores-summary-view .summary-points span{font-family:var(--kff-data-font);font-size:18px;font-weight:700;color:var(--kff-forge-gold)}.member-progress-list{display:flex;flex-direction:column;gap:10px}.member-progress-row{display:flex;align-items:center;gap:12px}.member-progress-row .member-info{display:flex;align-items:center;gap:8px;min-width:100px}.member-progress-row .member-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;color:#fff;object-fit:cover;flex-shrink:0}.member-progress-row .member-name{font-family:var(--kff-data-font);font-size:13px;font-weight:500;color:var(--ion-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-progress-row .member-progress{flex:1;min-width:0}.quick-actions{display:flex;flex-direction:column;gap:6px;margin-top:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.quick-chore-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#ffffff0a;border-radius:10px;cursor:pointer;transition:all .15s ease}.quick-chore-item:hover{background:#ffffff14}.quick-chore-item:active{transform:scale(.98)}.quick-chore-item .chore-icon{font-size:18px}.quick-chore-item .chore-name{flex:1;font-family:var(--kff-data-font);font-size:14px;font-weight:500;color:var(--ion-text-color)}.quick-chore-item .check-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:2px solid var(--ion-color-medium);border-radius:50%;background:transparent;color:var(--ion-color-medium);cursor:pointer;transition:all .15s ease}.quick-chore-item .check-btn:hover{border-color:var(--ion-color-success);color:var(--ion-color-success)}.quick-chore-item .check-btn ion-icon{font-size:18px}.quick-chore-item.celebrating{animation:celebratePulse .3s ease-out}.chores-list-view{display:flex;flex-direction:column;gap:16px}.chores-list-view .member-section{background:#ffffff08;border-radius:12px;overflow:hidden}.chores-list-view .member-header{display:flex;align-items:center;gap:10px;padding:12px;background:#ffffff0a;border-left:3px solid var(--member-color, var(--ion-color-medium))}.chores-list-view .member-header .member-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;color:#fff;object-fit:cover;flex-shrink:0}.chores-list-view .member-header .member-avatar.unassigned{background:var(--ion-color-medium);font-weight:700}.chores-list-view .member-header .member-name{flex:1;font-family:var(--kff-heading-font);font-size:14px;font-weight:600;color:var(--ion-text-color)}.chores-list-view .member-header .member-count{font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium)}.chores-list-view .member-header .member-points{display:flex;align-items:center;gap:4px;padding:4px 10px;background:var(--kff-forge-gold-10);border-radius:12px}.chores-list-view .member-header .member-points ion-icon{font-size:12px;color:var(--kff-forge-gold)}.chores-list-view .member-header .member-points span{font-family:var(--kff-data-font);font-size:12px;font-weight:600;color:var(--kff-forge-gold)}.chores-list-view .chore-items{display:flex;flex-direction:column;gap:4px;padding:8px}.chores-list-view .chore-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#ffffff05;border-radius:8px;cursor:pointer;transition:all .15s ease}.chores-list-view .chore-item:hover{background:#ffffff0f}.chores-list-view .chore-item.completed{opacity:.5}.chores-list-view .chore-item.completed .chore-name{text-decoration:line-through}.chores-list-view .chore-item.celebrating{animation:celebratePulse .3s ease-out}.chores-list-view .chore-item .chore-icon{font-size:20px;flex-shrink:0}.chores-list-view .chore-item .chore-content{flex:1;min-width:0}.chores-list-view .chore-item .chore-name{font-family:var(--kff-data-font);font-size:14px;font-weight:500;color:var(--ion-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chores-list-view .chore-item .chore-points{display:flex;align-items:center;gap:3px;font-family:var(--kff-data-font);font-size:12px;color:var(--kff-forge-gold);flex-shrink:0}.chores-list-view .chore-item .chore-points ion-icon{font-size:12px}.chores-list-view .chore-item .check-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:2px solid var(--ion-color-medium);border-radius:50%;background:transparent;color:var(--ion-color-medium);cursor:pointer;transition:all .15s ease;flex-shrink:0}.chores-list-view .chore-item .check-btn:hover{border-color:var(--ion-color-success);color:var(--ion-color-success);transform:scale(1.05)}.chores-list-view .chore-item .check-btn.completed{border-color:var(--ion-color-success);background:var(--ion-color-success);color:#fff}.chores-list-view .chore-item .check-btn ion-icon{font-size:20px}.chores-grid-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.grid-chore-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 10px;background:#ffffff0a;border-radius:12px;cursor:pointer;transition:all .15s ease;position:relative}.grid-chore-card:hover{background:#ffffff14;transform:translateY(-2px)}.grid-chore-card:active{transform:scale(.98)}.grid-chore-card.completed{opacity:.5}.grid-chore-card.celebrating{animation:celebratePulse .3s ease-out}.grid-chore-card .card-icon{font-size:32px}.grid-chore-card .card-name{font-family:var(--kff-data-font);font-size:12px;font-weight:500;color:var(--ion-text-color);text-align:center;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.grid-chore-card.completed .card-name{text-decoration:line-through}.grid-chore-card .card-assignee{position:absolute;top:6px;right:6px}.grid-chore-card .mini-avatar{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;object-fit:cover}.grid-chore-card .check-btn{position:absolute;bottom:6px;right:6px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:2px solid var(--ion-color-medium);border-radius:50%;background:transparent;color:var(--ion-color-medium);cursor:pointer;transition:all .15s ease}.grid-chore-card .check-btn:hover{border-color:var(--ion-color-success);color:var(--ion-color-success)}.grid-chore-card .check-btn.completed{border-color:var(--ion-color-success);background:var(--ion-color-success);color:#fff}.grid-chore-card .check-btn ion-icon{font-size:14px}.chores-tabbed-view{display:flex;flex-direction:column;height:100%;gap:12px}.tabbed-view-tabs{display:flex;gap:6px;padding:4px;background:#ffffff08;border-radius:12px;overflow-x:auto;flex-shrink:0;scrollbar-width:thin}.tabbed-view-tabs::-webkit-scrollbar{height:4px}.tabbed-view-tabs::-webkit-scrollbar-track{background:transparent}.tabbed-view-tabs::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.tabbed-view-tabs .tab-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:none;border-radius:8px;background:transparent;color:var(--ion-color-medium);cursor:pointer;transition:all .15s ease;white-space:nowrap;flex-shrink:0}.tabbed-view-tabs .tab-btn:hover{background:#ffffff0d;color:var(--ion-text-color)}.tabbed-view-tabs .tab-btn.active{background:#ffffff1a;color:var(--ion-text-color);box-shadow:0 2px 8px #0003}.tabbed-view-tabs .tab-btn.active:not(:first-child){background:var(--member-color, rgba(255, 255, 255, .1));color:#fff}.tabbed-view-tabs .tab-avatar{width:20px;height:20px;border-radius:50%;object-fit:cover}.tabbed-view-tabs .tab-emoji{font-size:16px}.tabbed-view-tabs .tab-label{font-family:var(--kff-data-font);font-size:12px;font-weight:600}.tabbed-view-tabs .tab-badge{font-family:var(--kff-data-font);font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;background:#ffffff1a;color:inherit}.tabbed-view-tabs .tab-badge.complete{background:var(--ion-color-success);color:#fff}.tabbed-view-content{flex:1;overflow-y:auto;min-height:0}.tabbed-chore-list{display:flex;flex-direction:column;gap:6px}.tabbed-chore-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#ffffff0a;border-radius:10px;cursor:pointer;transition:all .15s ease}.tabbed-chore-item:hover{background:#ffffff14}.tabbed-chore-item:active{transform:scale(.99)}.tabbed-chore-item.completed{opacity:.5}.tabbed-chore-item.celebrating{animation:celebratePulse .3s ease-out}.tabbed-chore-item .chore-icon{font-size:22px;flex-shrink:0}.tabbed-chore-item .chore-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.tabbed-chore-item .chore-name{font-family:var(--kff-data-font);font-size:14px;font-weight:500;color:var(--ion-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tabbed-chore-item.completed .chore-name{text-decoration:line-through}.tabbed-chore-item .chore-assignee{font-family:var(--kff-data-font);font-size:11px;font-weight:500;opacity:.8}.tabbed-chore-item .chore-points{display:flex;align-items:center;gap:3px;font-family:var(--kff-data-font);font-size:12px;font-weight:600;color:var(--kff-forge-gold);flex-shrink:0}.tabbed-chore-item .chore-points ion-icon{font-size:14px}.tabbed-chore-item .check-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:2px solid var(--ion-color-medium);border-radius:50%;background:transparent;color:var(--ion-color-medium);cursor:pointer;transition:all .15s ease;flex-shrink:0}.tabbed-chore-item .check-btn:hover{border-color:var(--ion-color-success);color:var(--ion-color-success)}.tabbed-chore-item .check-btn.completed{border-color:var(--ion-color-success);background:var(--ion-color-success);color:#fff}.tabbed-chore-item .check-btn ion-icon{font-size:16px}.tabbed-progress-section{flex-shrink:0;padding-bottom:4px}.tabbed-view-tabs .tab-btn.all-complete{background:linear-gradient(135deg,var(--ion-color-success),var(--ion-color-success-shade));color:#fff}.full-celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;pointer-events:none;overflow:hidden}.full-celebration-overlay .celebration-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,rgba(var(--ion-color-success-rgb),.3) 0%,transparent 70%);animation:backdropPulse 1s ease-out}@keyframes backdropPulse{0%{opacity:0;transform:scale(.5)}50%{opacity:1}to{opacity:.3;transform:scale(1)}}.full-celebration-overlay .celebration-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;animation:messagePopIn .5s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes messagePopIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.full-celebration-overlay .celebration-trophy{display:block;font-size:80px;margin-bottom:16px;animation:trophyBounce .6s ease-in-out infinite alternate}@keyframes trophyBounce{0%{transform:translateY(0) rotate(-5deg)}to{transform:translateY(-10px) rotate(5deg)}}.full-celebration-overlay .celebration-message h2{font-family:var(--kff-data-font);font-size:36px;font-weight:700;color:#fff;margin:0 0 8px;text-shadow:0 2px 20px rgba(0,0,0,.5)}.full-celebration-overlay .celebration-message p{font-family:var(--kff-data-font);font-size:18px;color:#ffffffe6;margin:0;text-shadow:0 2px 10px rgba(0,0,0,.3)}.full-celebration-emoji{position:absolute;animation:fullCelebrationFloat 3s ease-out forwards;transform:translate(-50%,-50%);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}@keyframes fullCelebrationFloat{0%{opacity:0;transform:translate(-50%,-50%) scale(0) rotate(0)}10%{opacity:1;transform:translate(-50%,-50%) scale(1.2) rotate(20deg)}30%{transform:translate(-50%,calc(-50% - 30px)) scale(1) rotate(-10deg)}to{opacity:0;transform:translate(-50%,calc(-50% - 100px)) scale(.5) rotate(360deg)}}.chores-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:120px;gap:8px;text-align:center}.chores-empty .empty-icon{font-size:40px}.chores-empty p{font-family:var(--kff-data-font);font-size:14px;color:var(--ion-color-medium);margin:0}.chores-widget-enhanced .celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;overflow:hidden}.chores-widget-enhanced .celebration-emoji{position:absolute;font-size:24px;animation:celebrationFloat 1s ease-out forwards;transform:translate(-50%,-50%)}@keyframes celebratePulse{0%{background-color:rgba(var(--ion-color-success-rgb),.2)}to{background-color:transparent}}@keyframes celebrationFloat{0%{opacity:1;transform:translate(-50%,-50%) scale(.5)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}to{opacity:0;transform:translate(calc(-50% + var(--drift-x, 0px)),calc(-50% - 60px)) scale(.8)}}.chores-widget-enhanced .celebration-emoji:nth-child(odd){--drift-x: 15px}.chores-widget-enhanced .celebration-emoji:nth-child(2n){--drift-x: -15px}.chores-widget-enhanced .celebration-emoji:nth-child(3n){--drift-x: 25px}.photo-frame-widget{position:relative;height:100%;overflow:hidden;border-radius:inherit}.photo-frame-widget .photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s ease-in-out}.photo-frame-widget .photo.active{opacity:1}.photo-frame-widget.transition-slide .photo{transition:transform .5s ease-in-out,opacity .5s ease-in-out;transform:translate(100%)}.photo-frame-widget.transition-slide .photo.active{transform:translate(0)}.photo-indicators{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:6px}.photo-indicators .indicator{width:8px;height:8px;border-radius:50%;background:#fff6;transition:background .3s}.photo-indicators .indicator.active{background:#fff}.family-widget.members{display:flex;flex-wrap:wrap;gap:12px;padding:16px;align-items:center;justify-content:center}.member-item{display:flex;flex-direction:column;align-items:center;gap:4px}.member-item .member-name{font-size:12px;color:var(--ion-color-medium)}.family-widget.birthdays{padding:12px}.birthday-item{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#ffffff0d;border-radius:8px;margin-bottom:8px}.birthday-info{flex:1;display:flex;flex-direction:column}.birthday-date{font-size:12px;color:var(--ion-color-medium)}.birthday-icon{font-size:24px}.countdown-widget{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:16px}.countdown-title{font-size:14px;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:1px;margin-bottom:16px}.countdown-numbers{display:flex;gap:24px}.countdown-unit{display:flex;flex-direction:column;align-items:center}.countdown-unit .number{font-size:48px;font-weight:300;color:var(--ion-text-color);line-height:1}.countdown-unit .label{font-size:12px;color:var(--ion-color-medium);text-transform:uppercase}.grocery-widget{padding:12px;height:100%;overflow-y:auto}.grocery-category{margin-bottom:16px}.category-header{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--ion-color-primary);margin-bottom:8px}.grocery-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffff0d;border-radius:6px;margin-bottom:4px;cursor:pointer}.grocery-item.purchased{opacity:.5}.grocery-item.purchased .item-name{text-decoration:line-through}.item-name{flex:1;font-size:14px}.item-qty{font-size:12px;color:var(--ion-color-medium)}.announcements-widget{padding:16px;height:100%;display:flex;flex-direction:column;position:relative;border-radius:inherit;transition:background-color .3s ease,border-color .3s ease}.announcements-widget.loading{display:flex;align-items:center;justify-content:center}.announcements-widget.empty{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;color:var(--ion-color-medium);padding:8px 16px;height:auto;min-height:40px;max-height:40px;background:rgba(var(--ion-color-medium-rgb),.03);border-left:2px solid var(--ion-color-medium-tint)}.announcements-widget.empty .empty-icon{font-size:18px;opacity:.4;flex-shrink:0}.announcements-widget.empty p{margin:0;font-size:13px;opacity:.6}.announcements-widget.priority-low{background:rgba(var(--ion-color-medium-rgb),.05);border-left:3px solid var(--ion-color-medium)}.announcements-widget.priority-normal{background:rgba(var(--ion-color-primary-rgb),.05);border-left:3px solid var(--ion-color-primary)}.announcements-widget.priority-high{background:#f59e0b1a;border-left:4px solid #f59e0b}.announcements-widget.priority-urgent{background:#ef444426;border-left:4px solid #ef4444;animation:urgentPulse 2s ease-in-out infinite}@keyframes urgentPulse{0%,to{background:#ef44441a}50%{background:#ef444433}}.announcements-widget[style*=--announcement-color]{border-left-color:var(--announcement-color)}.announcements-widget .sticky-badge{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:rgba(var(--ion-color-primary-rgb),.15);border-radius:50%;color:var(--ion-color-primary);font-size:14px}.announcements-widget .dismiss-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:var(--ion-color-medium);font-size:20px;cursor:pointer;opacity:0;transition:opacity .2s,background-color .2s,color .2s}.announcements-widget:hover .dismiss-btn{opacity:1}.announcements-widget .dismiss-btn:hover{background:rgba(var(--ion-color-danger-rgb),.1);color:var(--ion-color-danger)}.announcement-content{flex:1;display:flex;align-items:flex-start;gap:12px;padding-right:32px}.announcement-icon{font-size:28px;flex-shrink:0}.announcement-text{flex:1;min-width:0}.announcement-title{font-family:var(--kff-heading-font);font-size:16px;font-weight:600;margin:0 0 4px;color:var(--ion-text-color)}.announcement-message{font-family:var(--kff-data-font);font-size:14px;color:var(--ion-text-color);opacity:.85;margin:0;line-height:1.4}.announcement-meta{display:flex;justify-content:space-between;align-items:center;font-family:var(--kff-data-font);font-size:12px;color:var(--ion-color-medium);margin-top:12px;padding-top:8px;border-top:1px solid rgba(var(--ion-color-medium-rgb),.15)}.announcement-author{display:flex;align-items:center;gap:4px}.announcement-time{opacity:.8}.announcement-dots{display:flex;justify-content:center;gap:6px;margin-top:10px}.announcement-dots .dot{width:8px;height:8px;padding:0;border:none;border-radius:50%;background:rgba(var(--ion-color-medium-rgb),.3);cursor:pointer;transition:background-color .2s,transform .2s}.announcement-dots .dot:hover{transform:scale(1.2)}.announcement-dots .dot.active{background:var(--ion-color-primary)}.announcement-dots .dot.sticky{border:1px solid var(--ion-color-primary)}.announcement-dots .dot.sticky.active{background:var(--ion-color-primary)}.notes-widget{padding:16px;height:100%;font-family:Comic Sans MS,Marker Felt,cursive;border-radius:inherit}.note-content p{margin:0 0 8px;font-size:16px;line-height:1.5}.iframe-widget{height:100%;overflow:hidden}.iframe-widget iframe{width:100%;height:100%;border:none}.section-widget{display:flex;flex-direction:column;width:100%;height:100%;background:transparent;box-sizing:border-box;border-radius:12px;overflow:hidden}.section-widget.shadow-sm{box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014}.section-widget.shadow-md{box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.section-widget.shadow-lg{box-shadow:0 10px 20px #00000026,0 6px 6px #0000001a}.section-widget .section-header{display:flex;align-items:center;padding:12px 16px;background:var(--ion-color-step-50);border-bottom:1px solid var(--ion-color-step-100);cursor:pointer;-webkit-user-select:none;user-select:none}.section-widget .section-header:hover{background:var(--ion-color-step-100)}.section-widget .section-header.drop-target-active{background:#6366f126;outline:2px dashed var(--kff-foundry-blue, #6366f1);outline-offset:-2px}.section-widget .section-drop-indicator{margin-left:auto;padding:4px 12px;background:var(--kff-foundry-blue, #6366f1);color:#fff;font-size:12px;font-weight:600;border-radius:4px;animation:pulse-drop 1s ease-in-out infinite}@keyframes pulse-drop{0%,to{opacity:1}50%{opacity:.7}}.section-widget .section-drop-zone{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;background:#6366f10d;border:2px dashed var(--ion-color-step-200);border-radius:8px;margin:8px;transition:all .15s ease}.section-widget .section-drop-zone.drop-target-active{background:#6366f126;border-color:var(--kff-foundry-blue, #6366f1)}.section-widget .section-drop-zone span{color:var(--kff-foundry-blue, #6366f1);font-size:14px;font-weight:500}.section-widget .section-drag-handle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin-right:8px;border-radius:6px;cursor:grab;color:var(--ion-color-medium);transition:background .15s ease,color .15s ease}.section-widget .section-drag-handle:hover{background:var(--ion-color-step-150);color:var(--ion-text-color)}.section-widget .section-drag-handle:active{cursor:grabbing}.section-widget .section-menu-btn{--padding-start: 8px;--padding-end: 8px;margin:0 0 0 8px;height:28px;color:var(--ion-color-medium)}.section-widget .section-menu-btn:hover{color:var(--ion-text-color)}.section-options-popover{--width: 260px}.section-options-popover .section-menu-list{padding:8px 0}.section-options-popover .section-menu-item{--min-height: 44px;--padding-start: 16px;--padding-end: 12px;--inner-padding-end: 0;font-size:14px}.section-options-popover .section-menu-item ion-icon[slot=start]{font-size:18px;margin-right:12px;color:var(--ion-color-medium)}.section-options-popover .section-menu-item ion-toggle{--handle-width: 20px;--handle-height: 20px;padding-right:0}.section-options-popover .section-column-select{--padding-start: 0;--padding-end: 0;min-width:48px;font-size:14px;font-weight:500}.section-options-popover .section-align-select{--padding-start: 0;--padding-end: 0;min-width:70px;font-size:14px;font-weight:500}.section-options-popover .column-widths-row{--padding-end: 8px}.section-options-popover .column-width-selects{display:flex;align-items:center;gap:2px}.section-options-popover .section-width-select{--padding-start: 4px;--padding-end: 4px;min-width:36px;max-width:44px;font-size:13px;font-weight:500;background:var(--ion-color-step-50);border-radius:4px}.section-options-popover .column-width-total{font-size:11px;color:var(--ion-color-medium);margin-left:4px;white-space:nowrap}.section-options-popover .section-menu-divider{--background: var(--ion-color-step-100);min-height:1px;margin:4px 0}.section-options-popover .danger-item{--color: var(--ion-color-danger)}.section-options-popover .danger-item ion-icon[slot=start]{color:var(--ion-color-danger)!important}.section-widget .section-label{font-family:var(--kff-heading-font, inherit);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--ion-text-color);white-space:nowrap;flex-shrink:0}.section-widget .section-label-input{font-family:var(--kff-heading-font, inherit);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--ion-text-color);background:var(--ion-card-background);border:1px solid var(--kff-foundry-blue);border-radius:4px;padding:4px 8px;outline:none;flex-shrink:0}.section-widget .section-line{flex:1;height:1px;background:var(--ion-color-step-200);margin-left:16px}.section-widget .section-spacer{flex:1}.section-widget .collapse-icon{font-size:18px;color:var(--ion-color-medium);margin-right:8px;transition:transform .2s ease}.section-widget .section-count-badge{margin-left:8px;font-size:11px}.section-widget .section-children{display:flex;flex-wrap:wrap;gap:16px;padding:16px;min-height:80px;background:var(--ion-color-step-50);flex:1;align-content:flex-start}.section-widget .section-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:60px;color:var(--ion-color-medium);font-size:14px;font-style:italic;border:2px dashed var(--ion-color-step-200);border-radius:8px;background:#80808008}.section-widget.collapsed .section-children{display:none}.section-widget.collapsed .section-header{border-bottom:none;border-radius:12px}.section-widget.drag-over .section-children{border:2px dashed var(--kff-foundry-blue);background:#6366f11a}.section-widget.drag-over .section-empty{border-color:var(--kff-foundry-blue);color:var(--kff-foundry-blue)}.section-widget.editing{outline:2px dashed var(--kff-forge-gold);outline-offset:-2px}.section-widget.editing .section-label{cursor:text}.section-widget.editing .section-label:hover{color:var(--kff-foundry-blue)}.section-widget .section-children .child-widget{background:var(--ion-card-background);border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:visible;position:relative;min-height:120px;height:auto;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease}.section-widget .section-children .child-widget .widget{height:100%}.section-widget .section-children .child-widget.is-dragging{opacity:.5;z-index:1000;box-shadow:0 8px 24px #00000040}.section-widget.potential-drop-target{outline:2px dashed var(--kff-foundry-blue);outline-offset:-2px}.section-widget.potential-drop-target .section-header{background:#6366f11a}.section-widget.potential-drop-target .section-children{background:#6366f10d}.spacer-widget{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:transparent;box-sizing:border-box}.spacer-widget.editing{border:2px dashed var(--ion-color-step-300);border-radius:8px;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(128,128,128,.03) 10px,rgba(128,128,128,.03) 20px)}.spacer-widget.editing:before{content:"SPACER";font-family:var(--kff-data-font, monospace);font-size:11px;font-weight:600;letter-spacing:2px;color:var(--ion-color-step-400);text-transform:uppercase}.section-columns{display:grid;padding:16px;align-items:start;min-height:80px}.section-column{display:flex;flex-direction:column;gap:12px;min-height:80px;border-radius:8px;background:#ffffff05;transition:background .15s ease,outline .15s ease}.section-column.edit-mode{background:#ffffff08;border:1px dashed var(--ion-color-step-200)}.section-column.drag-over{background:#6366f11a;outline:2px dashed var(--kff-foundry-blue);outline-offset:-2px}.column-drop-zone{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px;color:var(--ion-color-medium);font-size:13px;border:2px dashed var(--ion-color-step-200);border-radius:8px;background:#80808008;transition:all .15s ease;margin-top:auto}.column-drop-zone.empty{min-height:80px;flex:1}.column-drop-zone .drop-zone-text{opacity:.6;transition:opacity .15s ease}.section-column.drag-over .column-drop-zone{border-color:var(--kff-foundry-blue, #6366f1);background:#6366f11a;color:var(--kff-foundry-blue, #6366f1)}.section-column.drag-over .column-drop-zone .drop-zone-text{opacity:1}.column-empty-view{min-height:40px}.section-column .sortable-widget{width:100%}.section-column .widget{width:100%;height:auto;min-height:100px}.visual-schedule-widget{display:flex;flex-direction:column;height:100%;overflow:hidden}.visual-schedule-widget.loading,.visual-schedule-widget.error,.visual-schedule-widget.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px;color:var(--ion-color-medium)}.visual-schedule-widget.empty .empty-icon{font-size:48px}.visual-schedule-widget.empty p,.visual-schedule-widget.error p{font-size:14px;margin:0}.visual-schedule-widget .member-selector{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;background:#ffffff08;border-bottom:1px solid var(--ion-color-step-100);flex-shrink:0}.visual-schedule-widget .member-selector-avatars{display:flex;gap:8px}.visual-schedule-widget .member-avatar-btn{width:40px;height:40px;border-radius:50%;border:2px solid transparent;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;transition:all .2s ease;padding:0;background:var(--ion-color-medium);color:#fff}.visual-schedule-widget .member-avatar-btn img{width:100%;height:100%;border-radius:50%;object-fit:cover}.visual-schedule-widget .member-avatar-btn:hover{transform:scale(1.1)}.visual-schedule-widget .member-avatar-btn.active{border-color:var(--kff-foundry-blue, #6366f1);box-shadow:0 0 0 3px #6366f14d;transform:scale(1.1)}.visual-schedule-widget .visual-schedule{flex:1;min-height:0;overflow-y:auto}.visual-schedule-widget.transparent{background:transparent}.visual-schedule-widget.transparent .member-selector{background:transparent;border-bottom-color:#ffffff14}.visual-schedule-widget.transparent .member-avatar-btn{border:2px solid rgba(255,255,255,.2);transition:all .2s ease,border-color .2s ease}.visual-schedule-widget.transparent .member-avatar-btn:not(.active){opacity:.7}.visual-schedule-widget.transparent .member-avatar-btn.active{border-color:#fff9;box-shadow:0 0 0 3px #ffffff26}.widget-fullscreen-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;animation:fullscreen-fade-in .2s ease-out}@keyframes fullscreen-fade-in{0%{opacity:0}to{opacity:1}}.widget-fullscreen-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.widget-fullscreen-container{position:relative;width:90vw;max-width:1200px;height:85vh;max-height:900px;background:var(--ion-card-background, #1e293b);border-radius:16px;box-shadow:0 24px 80px #00000080;display:flex;flex-direction:column;overflow:hidden;animation:fullscreen-scale-in .25s ease-out}@keyframes fullscreen-scale-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.widget-fullscreen-close{position:absolute;top:16px;right:16px;z-index:10;width:40px;height:40px;border:none;border-radius:50%;background:#0000004d;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease,transform .1s ease}.widget-fullscreen-close ion-icon{font-size:24px}.widget-fullscreen-close:hover{background:#00000080}.widget-fullscreen-close:active{transform:scale(.95)}.widget-fullscreen-close:focus-visible{outline:2px solid var(--kff-foundry-blue, #6366f1);outline-offset:2px}.widget-fullscreen-title{padding:20px 60px 16px 24px;font-size:20px;font-weight:600;color:var(--ion-text-color);border-bottom:1px solid var(--ion-color-step-100, rgba(255, 255, 255, .1));flex-shrink:0}.widget-fullscreen-content{flex:1;padding:24px;overflow:auto;-webkit-overflow-scrolling:touch}.widget-fullscreen-content .widget{height:100%;min-height:100%;background:transparent;box-shadow:none}@media (max-width: 768px){.widget-fullscreen-container{width:95vw;height:90vh;max-height:none;border-radius:12px}.widget-fullscreen-title{padding:16px 52px 12px 16px;font-size:18px}.widget-fullscreen-content{padding:16px}.widget-fullscreen-close{top:12px;right:12px;width:36px;height:36px}.widget-fullscreen-close ion-icon{font-size:22px}}@media (min-width: 769px) and (max-width: 1024px){.widget-fullscreen-container{width:85vw;height:80vh}}.dashboard-header-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:8px;color:var(--ion-text-color);cursor:pointer;transition:background-color .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.dashboard-header-icon-btn ion-icon{font-size:22px}.dashboard-header-icon-btn:hover{background:var(--ion-color-step-100, rgba(0, 0, 0, .08))}.dashboard-header-icon-btn:active{background:var(--ion-color-step-150, rgba(0, 0, 0, .12));transform:scale(.95)}.dashboard-header-icon-btn:focus-visible{outline:2px solid var(--kff-foundry-blue);outline-offset:2px}.dashboard-container{position:absolute;top:0;left:0;right:0;bottom:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;background-color:var(--ion-background-color);color:var(--ion-text-color)}.dashboard-container::-webkit-scrollbar{display:none}.dashboard-grid-wrapper{max-width:1280px;margin:0 auto;padding:16px;width:100%;box-sizing:border-box}.dashboard-root{max-width:1280px;margin:0 auto;padding:16px 16px 24px;width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;min-height:100%}.dashboard-container.edit-mode .dashboard-root{padding-bottom:140px}.dashboard-root.drop-zone-active{background:#6366f10d;outline:2px dashed var(--kff-foundry-blue, #6366f1);outline-offset:-2px;border-radius:12px}.dashboard-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:8px;color:var(--ion-color-medium);font-size:16px}.dashboard-empty p{margin:0}.dashboard-loading,.dashboard-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:50vh;gap:16px;color:var(--ion-color-medium)}.layout{min-height:calc(100vh - 200px)}.widget-wrapper{border-radius:12px;overflow:hidden;background:var(--ion-card-background);box-shadow:0 2px 8px #0000001a}.edit-mode .widget-wrapper{outline:2px dashed var(--kff-forge-gold);outline-offset:-2px;cursor:grab}.edit-mode .widget-wrapper:active{cursor:grabbing}.edit-mode-indicator{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:var(--kff-foundry-blue);color:#fff;padding:12px 24px;border-radius:12px;text-align:center;z-index:1000;box-shadow:0 4px 20px #0000004d;font-family:var(--kff-data-font)}.edit-mode-indicator span{font-weight:600;font-size:16px;font-family:var(--kff-heading-font)}.edit-mode-indicator p{font-size:12px;margin:4px 0 0;opacity:.8}.dashboard-container.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;z-index:9999;color:var(--fullscreen-text, #000000)}.dashboard-container.fullscreen .dashboard-grid-wrapper,.dashboard-container.fullscreen .dashboard-root{max-width:1600px;margin:0 auto;padding:24px;height:100%;box-sizing:border-box}@media (max-width: 768px){.dashboard-grid-wrapper,.dashboard-root{padding:8px 8px 24px;gap:12px}.dashboard-container.edit-mode .dashboard-root{padding-bottom:160px}.edit-mode-indicator{bottom:90px;padding:8px 16px;font-size:14px}}.edit-mode-fab{bottom:140px;right:16px}.edit-mode-fab ion-fab-button{--background: var(--kff-foundry-blue);--color: white;--box-shadow: 0 4px 16px rgba(0, 0, 0, .2)}.edit-mode-fab ion-fab-list ion-fab-button{--background: var(--ion-card-background);--color: var(--ion-text-color);--box-shadow: 0 2px 8px rgba(0, 0, 0, .15)}.edit-mode-fab ion-fab-list ion-fab-button:hover{--background: var(--ion-color-step-100)}.fab-button-with-label{display:flex;align-items:center;gap:8px}.fab-button-label{position:absolute;right:56px;top:50%;transform:translateY(-50%);background:var(--ion-card-background);color:var(--ion-text-color);padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 2px 8px #00000026;pointer-events:none}.widget-picker-hint{margin:0;padding:0 16px 12px;font-size:13px;color:var(--ion-color-medium);text-align:center}.widget-picker-grid{display:flex;flex-direction:column;gap:8px;padding:0 16px 16px;max-height:400px;overflow-y:auto}.widget-picker-option{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--ion-color-step-50);border:1px solid transparent;border-radius:10px;cursor:pointer;transition:all .15s ease}.widget-picker-option:hover{background:#6366f114;border-color:var(--kff-foundry-blue)}.widget-picker-option:active{transform:scale(.98)}.widget-picker-option.is-dragging{opacity:.5;background:#6366f126;border-color:var(--kff-foundry-blue)}.widget-picker-option{cursor:grab}.widget-picker-option:active{cursor:grabbing}.widget-picker-icon{font-size:28px;width:40px;text-align:center;flex-shrink:0}.widget-picker-info{flex:1;min-width:0}.widget-picker-info h4{margin:0 0 2px;font-size:15px;font-weight:600;color:var(--ion-text-color)}.widget-picker-info p{margin:0;font-size:13px;color:var(--ion-color-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.react-grid-layout{transition:height .2s ease}.react-grid-item{transition:all .2s ease}.react-grid-item.cssTransforms{transition:transform .2s ease,width .2s ease,height .2s ease}.react-grid-item.react-grid-placeholder{background:var(--kff-foundry-blue)!important;opacity:.25!important;border:2px dashed var(--kff-forge-gold)!important;border-radius:12px!important;transition:all .15s ease!important}.edit-mode .react-grid-item.react-draggable-dragging{z-index:1000!important;box-shadow:0 12px 40px #00000040!important;opacity:.95!important;transition:box-shadow .15s ease,opacity .15s ease!important}.edit-mode .react-grid-item.resizing{z-index:1000!important;box-shadow:0 8px 24px #0003!important}.edit-mode .react-grid-item>.react-resizable-handle{width:24px;height:24px;background:transparent}.edit-mode .react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:4px;bottom:4px;width:10px;height:10px;border-right:3px solid var(--kff-forge-gold);border-bottom:3px solid var(--kff-forge-gold);border-radius:2px;opacity:.6;transition:opacity .15s ease}.edit-mode .react-grid-item:hover>.react-resizable-handle:after{opacity:1}.edit-mode .widget-wrapper:has(.section-widget),.edit-mode .widget-wrapper:has(.spacer-widget){outline-style:dotted;outline-width:1px}.drag-overlay-widget{padding:12px 16px;background:var(--kff-foundry-blue, #6366f1);color:#fff;border-radius:8px;box-shadow:0 8px 24px #00000040;font-size:14px;font-weight:500;pointer-events:none;opacity:.9}.drag-overlay-content{display:flex;align-items:center;gap:8px}.dashboard-grid-wrapper.drop-zone-active{background:#6366f10d;outline:2px dashed var(--kff-foundry-blue, #6366f1);outline-offset:-2px}.dashboard-container.snap-enabled{scroll-snap-type:y proximity}.dashboard-container.snap-enabled .dashboard-root>.sortable-widget{scroll-snap-align:start;scroll-margin-top:16px}.view-mode-fab{position:fixed;bottom:100px;right:16px;z-index:1000}.view-mode-fab ion-fab-button{--background: var(--ion-color-step-150, rgba(255, 255, 255, .1));--color: var(--ion-text-color);--box-shadow: 0 4px 16px rgba(0, 0, 0, .2);width:48px;height:48px}.view-mode-fab ion-fab-button:hover{--background: var(--ion-color-step-200)}.view-mode-fab ion-fab-list ion-fab-button{--background: var(--ion-card-background);--color: var(--ion-text-color);--box-shadow: 0 2px 8px rgba(0, 0, 0, .15);width:44px;height:44px}.view-mode-fab ion-fab-list ion-fab-button:hover{--background: var(--ion-color-step-100)}.fab-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:999;opacity:0;transition:opacity .2s ease;pointer-events:none}.fab-backdrop.visible{opacity:1;pointer-events:auto}.dashboard-container.fullscreen .view-mode-fab{bottom:24px;right:24px}.dashboard-container.edit-mode .view-mode-fab{display:none}@media (max-width: 768px){.view-mode-fab{bottom:90px;right:12px}.view-mode-fab ion-fab-button{width:52px;height:52px}}.kiosk-dashboard-page,.kiosk-loading{--background: var(--ion-background-color)}.kiosk-loading-content{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;color:var(--ion-color-medium)}.kiosk-loading-content ion-spinner{width:48px;height:48px}.kiosk-corner-tap-zone{position:fixed;top:0;right:0;width:80px;height:80px;z-index:1000;cursor:pointer}.kiosk-controls-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:flex-start;justify-content:flex-end;padding:16px}.kiosk-controls-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:0}.kiosk-controls-panel{position:relative;z-index:1;background:var(--ion-card-background, #1e293b);border-radius:16px;padding:20px;min-width:280px;box-shadow:0 8px 32px #0000004d;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.kiosk-controls-header{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--ion-color-step-100, rgba(255, 255, 255, .1));margin-bottom:16px}.kiosk-controls-header ion-icon{font-size:32px;color:var(--ion-color-primary)}.kiosk-controls-info h3{margin:0;font-size:16px;font-weight:600;color:var(--ion-text-color)}.kiosk-controls-info p{margin:4px 0 0;font-size:13px;color:var(--ion-color-medium)}.kiosk-controls-actions{display:flex;flex-direction:column;gap:8px}.kiosk-control-button{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border:none;border-radius:12px;background:var(--ion-color-step-50, rgba(255, 255, 255, .05));color:var(--ion-text-color);font-size:15px;font-weight:500;cursor:pointer;transition:all .15s ease}.kiosk-control-button ion-icon{font-size:20px}.kiosk-control-button:hover{background:var(--ion-color-step-100, rgba(255, 255, 255, .1))}.kiosk-control-button:active{transform:scale(.98)}.kiosk-control-button.danger{color:var(--ion-color-danger)}.kiosk-control-button.danger:hover{background:rgba(var(--ion-color-danger-rgb),.15)}.kiosk-dashboard-page ion-header{display:none}.kiosk-dashboard-page ion-content{--padding-top: 0;--padding-bottom: 0}:root{--ion-color-primary: #0054e9;--ion-color-primary-rgb: 0, 84, 233;--ion-color-primary-contrast: #fff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #004acd;--ion-color-primary-tint: #1a65eb;--ion-color-secondary: #0163aa;--ion-color-secondary-rgb: 1, 99, 170;--ion-color-secondary-contrast: #fff;--ion-color-secondary-contrast-rgb: 255, 255, 255;--ion-color-secondary-shade: #015796;--ion-color-secondary-tint: #1a73b3;--ion-color-tertiary: #6030ff;--ion-color-tertiary-rgb: 96, 48, 255;--ion-color-tertiary-contrast: #fff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #542ae0;--ion-color-tertiary-tint: #7045ff;--ion-color-success: #2dd55b;--ion-color-success-rgb: 45, 213, 91;--ion-color-success-contrast: #000;--ion-color-success-contrast-rgb: 0, 0, 0;--ion-color-success-shade: #28bb50;--ion-color-success-tint: #42d96b;--ion-color-warning: #ffc409;--ion-color-warning-rgb: 255, 196, 9;--ion-color-warning-contrast: #000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0ac08;--ion-color-warning-tint: #ffca22;--ion-color-danger: #c5000f;--ion-color-danger-rgb: 197, 0, 15;--ion-color-danger-contrast: #fff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #ad000d;--ion-color-danger-tint: #cb1a27;--ion-color-light: #f4f5f8;--ion-color-light-rgb: 244, 245, 248;--ion-color-light-contrast: #000;--ion-color-light-contrast-rgb: 0, 0, 0;--ion-color-light-shade: #d7d8da;--ion-color-light-tint: #f5f6f9;--ion-color-medium: #636469;--ion-color-medium-rgb: 99, 100, 105;--ion-color-medium-contrast: #fff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #57585c;--ion-color-medium-tint: #737478;--ion-color-dark: #222428;--ion-color-dark-rgb: 34, 36, 40;--ion-color-dark-contrast: #fff;--ion-color-dark-contrast-rgb: 255, 255, 255;--ion-color-dark-shade: #1e2023;--ion-color-dark-tint: #383a3e}html.ios{--ion-default-font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font: "Roboto", "Helvetica Neue", sans-serif}html{--ion-dynamic-font: -apple-system-body;--ion-font-family: var(--ion-default-font)}body{background:var(--ion-background-color);color:var(--ion-text-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type,html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar,html.ios .modal-footer-moving ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (min-width: 768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity: .18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity: 0;--box-shadow: none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base: var(--ion-color-primary, #0054e9) !important;--ion-color-base-rgb: var(--ion-color-primary-rgb, 0, 84, 233) !important;--ion-color-contrast: var(--ion-color-primary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-primary-shade, #004acd) !important;--ion-color-tint: var(--ion-color-primary-tint, #1a65eb) !important}.ion-color-secondary{--ion-color-base: var(--ion-color-secondary, #0163aa) !important;--ion-color-base-rgb: var(--ion-color-secondary-rgb, 1, 99, 170) !important;--ion-color-contrast: var(--ion-color-secondary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-secondary-shade, #015796) !important;--ion-color-tint: var(--ion-color-secondary-tint, #1a73b3) !important}.ion-color-tertiary{--ion-color-base: var(--ion-color-tertiary, #6030ff) !important;--ion-color-base-rgb: var(--ion-color-tertiary-rgb, 96, 48, 255) !important;--ion-color-contrast: var(--ion-color-tertiary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-tertiary-shade, #542ae0) !important;--ion-color-tint: var(--ion-color-tertiary-tint, #7045ff) !important}.ion-color-success{--ion-color-base: var(--ion-color-success, #2dd55b) !important;--ion-color-base-rgb: var(--ion-color-success-rgb, 45, 213, 91) !important;--ion-color-contrast: var(--ion-color-success-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-success-shade, #28bb50) !important;--ion-color-tint: var(--ion-color-success-tint, #42d96b) !important}.ion-color-warning{--ion-color-base: var(--ion-color-warning, #ffc409) !important;--ion-color-base-rgb: var(--ion-color-warning-rgb, 255, 196, 9) !important;--ion-color-contrast: var(--ion-color-warning-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-warning-shade, #e0ac08) !important;--ion-color-tint: var(--ion-color-warning-tint, #ffca22) !important}.ion-color-danger{--ion-color-base: var(--ion-color-danger, #c5000f) !important;--ion-color-base-rgb: var(--ion-color-danger-rgb, 197, 0, 15) !important;--ion-color-contrast: var(--ion-color-danger-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-danger-shade, #ad000d) !important;--ion-color-tint: var(--ion-color-danger-tint, #cb1a27) !important}.ion-color-light{--ion-color-base: var(--ion-color-light, #f4f5f8) !important;--ion-color-base-rgb: var(--ion-color-light-rgb, 244, 245, 248) !important;--ion-color-contrast: var(--ion-color-light-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-light-shade, #d7d8da) !important;--ion-color-tint: var(--ion-color-light-tint, #f5f6f9) !important}.ion-color-medium{--ion-color-base: var(--ion-color-medium, #636469) !important;--ion-color-base-rgb: var(--ion-color-medium-rgb, 99, 100, 105) !important;--ion-color-contrast: var(--ion-color-medium-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-medium-shade, #57585c) !important;--ion-color-tint: var(--ion-color-medium-tint, #737478) !important}.ion-color-dark{--ion-color-base: var(--ion-color-dark, #222428) !important;--ion-color-base-rgb: var(--ion-color-dark-rgb, 34, 36, 40) !important;--ion-color-contrast: var(--ion-color-dark-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-dark-shade, #1e2023) !important;--ion-color-tint: var(--ion-color-dark-tint, #383a3e) !important}.ion-page{left:0;right:0;top:0;bottom:0;display:flex;position:absolute;flex-direction:column;justify-content:space-between;contain:layout size style;z-index:0}.ion-page.ion-page-overlay-passthrough{pointer-events:none}ion-modal>.ion-page{position:relative;contain:layout style;height:100%}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding: 20px}@supports (padding-top: 20px){html{--ion-safe-area-top: var(--ion-statusbar-padding)}}@supports (padding-top: env(safe-area-inset-top)){html{--ion-safe-area-top: env(safe-area-inset-top);--ion-safe-area-bottom: env(safe-area-inset-bottom);--ion-safe-area-left: env(safe-area-inset-left);--ion-safe-area-right: env(safe-area-inset-right)}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translateZ(0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow: hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-left-radius:8px;border-bottom-right-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width: 0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:.3s transform cubic-bezier(.25,.8,.5,1)}@media (prefers-reduced-motion: reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width: 0px;--inner-border-width: 0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width: fit-content;--height: fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;height:0}b,strong{font-weight:700}img{max-width:100%}hr{height:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;height:auto;font:inherit;color:inherit}textarea::placeholder{padding-left:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{padding:0;border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{width:100%;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;transform:translateZ(0);text-rendering:optimizeLegibility;overflow:hidden;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;text-size-adjust:none}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout: none){html{font:var(--ion-dynamic-font, 16px var(--ion-font-family))}}a{background-color:transparent;color:var(--ion-color-primary, #0054e9)}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}.ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-top{--padding-top: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px)}.ion-padding-start{--padding-start: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--padding-end: var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-padding-bottom{--padding-bottom: var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-vertical{--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-horizontal{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-top{--margin-top: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px)}.ion-margin-start{--margin-start: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--margin-end: var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-margin-bottom{--margin-bottom: var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-vertical{--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-horizontal{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-float-left{float:left!important}.ion-float-right{float:right!important}.ion-float-start{float:left!important}:host-context([dir=rtl]) .ion-float-start{float:right!important}[dir=rtl] .ion-float-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-start:dir(rtl){float:right!important}}.ion-float-end{float:right!important}:host-context([dir=rtl]) .ion-float-end{float:left!important}[dir=rtl] .ion-float-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-end:dir(rtl){float:left!important}}@media (min-width: 576px){.ion-float-sm-left{float:left!important}.ion-float-sm-right{float:right!important}.ion-float-sm-start{float:left!important}:host-context([dir=rtl]) .ion-float-sm-start{float:right!important}[dir=rtl] .ion-float-sm-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-sm-start:dir(rtl){float:right!important}}.ion-float-sm-end{float:right!important}:host-context([dir=rtl]) .ion-float-sm-end{float:left!important}[dir=rtl] .ion-float-sm-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-sm-end:dir(rtl){float:left!important}}}@media (min-width: 768px){.ion-float-md-left{float:left!important}.ion-float-md-right{float:right!important}.ion-float-md-start{float:left!important}:host-context([dir=rtl]) .ion-float-md-start{float:right!important}[dir=rtl] .ion-float-md-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-md-start:dir(rtl){float:right!important}}.ion-float-md-end{float:right!important}:host-context([dir=rtl]) .ion-float-md-end{float:left!important}[dir=rtl] .ion-float-md-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-md-end:dir(rtl){float:left!important}}}@media (min-width: 992px){.ion-float-lg-left{float:left!important}.ion-float-lg-right{float:right!important}.ion-float-lg-start{float:left!important}:host-context([dir=rtl]) .ion-float-lg-start{float:right!important}[dir=rtl] .ion-float-lg-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-lg-start:dir(rtl){float:right!important}}.ion-float-lg-end{float:right!important}:host-context([dir=rtl]) .ion-float-lg-end{float:left!important}[dir=rtl] .ion-float-lg-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-lg-end:dir(rtl){float:left!important}}}@media (min-width: 1200px){.ion-float-xl-left{float:left!important}.ion-float-xl-right{float:right!important}.ion-float-xl-start{float:left!important}:host-context([dir=rtl]) .ion-float-xl-start{float:right!important}[dir=rtl] .ion-float-xl-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-xl-start:dir(rtl){float:right!important}}.ion-float-xl-end{float:right!important}:host-context([dir=rtl]) .ion-float-xl-end{float:left!important}[dir=rtl] .ion-float-xl-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-xl-end:dir(rtl){float:left!important}}}.ion-text-center{text-align:center!important}.ion-text-justify{text-align:justify!important}.ion-text-start{text-align:start!important}.ion-text-end{text-align:end!important}.ion-text-left{text-align:left!important}.ion-text-right{text-align:right!important}.ion-text-nowrap{white-space:nowrap!important}.ion-text-wrap{white-space:normal!important}@media (min-width: 576px){.ion-text-sm-center{text-align:center!important}.ion-text-sm-justify{text-align:justify!important}.ion-text-sm-start{text-align:start!important}.ion-text-sm-end{text-align:end!important}.ion-text-sm-left{text-align:left!important}.ion-text-sm-right{text-align:right!important}.ion-text-sm-nowrap{white-space:nowrap!important}.ion-text-sm-wrap{white-space:normal!important}}@media (min-width: 768px){.ion-text-md-center{text-align:center!important}.ion-text-md-justify{text-align:justify!important}.ion-text-md-start{text-align:start!important}.ion-text-md-end{text-align:end!important}.ion-text-md-left{text-align:left!important}.ion-text-md-right{text-align:right!important}.ion-text-md-nowrap{white-space:nowrap!important}.ion-text-md-wrap{white-space:normal!important}}@media (min-width: 992px){.ion-text-lg-center{text-align:center!important}.ion-text-lg-justify{text-align:justify!important}.ion-text-lg-start{text-align:start!important}.ion-text-lg-end{text-align:end!important}.ion-text-lg-left{text-align:left!important}.ion-text-lg-right{text-align:right!important}.ion-text-lg-nowrap{white-space:nowrap!important}.ion-text-lg-wrap{white-space:normal!important}}@media (min-width: 1200px){.ion-text-xl-center{text-align:center!important}.ion-text-xl-justify{text-align:justify!important}.ion-text-xl-start{text-align:start!important}.ion-text-xl-end{text-align:end!important}.ion-text-xl-left{text-align:left!important}.ion-text-xl-right{text-align:right!important}.ion-text-xl-nowrap{white-space:nowrap!important}.ion-text-xl-wrap{white-space:normal!important}}.ion-text-uppercase{text-transform:uppercase!important}.ion-text-lowercase{text-transform:lowercase!important}.ion-text-capitalize{text-transform:capitalize!important}@media (min-width: 576px){.ion-text-sm-uppercase{text-transform:uppercase!important}.ion-text-sm-lowercase{text-transform:lowercase!important}.ion-text-sm-capitalize{text-transform:capitalize!important}}@media (min-width: 768px){.ion-text-md-uppercase{text-transform:uppercase!important}.ion-text-md-lowercase{text-transform:lowercase!important}.ion-text-md-capitalize{text-transform:capitalize!important}}@media (min-width: 992px){.ion-text-lg-uppercase{text-transform:uppercase!important}.ion-text-lg-lowercase{text-transform:lowercase!important}.ion-text-lg-capitalize{text-transform:capitalize!important}}@media (min-width: 1200px){.ion-text-xl-uppercase{text-transform:uppercase!important}.ion-text-xl-lowercase{text-transform:lowercase!important}.ion-text-xl-capitalize{text-transform:capitalize!important}}.ion-align-content-start{align-content:flex-start!important}.ion-align-content-end{align-content:flex-end!important}.ion-align-content-center{align-content:center!important}.ion-align-content-between{align-content:space-between!important}.ion-align-content-around{align-content:space-around!important}.ion-align-content-stretch{align-content:stretch!important}@media (min-width: 576px){.ion-align-content-sm-start{align-content:flex-start!important}.ion-align-content-sm-end{align-content:flex-end!important}.ion-align-content-sm-center{align-content:center!important}.ion-align-content-sm-between{align-content:space-between!important}.ion-align-content-sm-around{align-content:space-around!important}.ion-align-content-sm-stretch{align-content:stretch!important}}@media (min-width: 768px){.ion-align-content-md-start{align-content:flex-start!important}.ion-align-content-md-end{align-content:flex-end!important}.ion-align-content-md-center{align-content:center!important}.ion-align-content-md-between{align-content:space-between!important}.ion-align-content-md-around{align-content:space-around!important}.ion-align-content-md-stretch{align-content:stretch!important}}@media (min-width: 992px){.ion-align-content-lg-start{align-content:flex-start!important}.ion-align-content-lg-end{align-content:flex-end!important}.ion-align-content-lg-center{align-content:center!important}.ion-align-content-lg-between{align-content:space-between!important}.ion-align-content-lg-around{align-content:space-around!important}.ion-align-content-lg-stretch{align-content:stretch!important}}@media (min-width: 1200px){.ion-align-content-xl-start{align-content:flex-start!important}.ion-align-content-xl-end{align-content:flex-end!important}.ion-align-content-xl-center{align-content:center!important}.ion-align-content-xl-between{align-content:space-between!important}.ion-align-content-xl-around{align-content:space-around!important}.ion-align-content-xl-stretch{align-content:stretch!important}}.ion-align-items-start{align-items:start!important}.ion-align-items-end{align-items:end!important}.ion-align-items-center{align-items:center!important}.ion-align-items-stretch{align-items:stretch!important}.ion-align-items-baseline{align-items:baseline!important}@media (min-width: 576px){.ion-align-items-sm-start{align-items:start!important}.ion-align-items-sm-end{align-items:end!important}.ion-align-items-sm-center{align-items:center!important}.ion-align-items-sm-stretch{align-items:stretch!important}.ion-align-items-sm-baseline{align-items:baseline!important}}@media (min-width: 768px){.ion-align-items-md-start{align-items:start!important}.ion-align-items-md-end{align-items:end!important}.ion-align-items-md-center{align-items:center!important}.ion-align-items-md-stretch{align-items:stretch!important}.ion-align-items-md-baseline{align-items:baseline!important}}@media (min-width: 992px){.ion-align-items-lg-start{align-items:start!important}.ion-align-items-lg-end{align-items:end!important}.ion-align-items-lg-center{align-items:center!important}.ion-align-items-lg-stretch{align-items:stretch!important}.ion-align-items-lg-baseline{align-items:baseline!important}}@media (min-width: 1200px){.ion-align-items-xl-start{align-items:start!important}.ion-align-items-xl-end{align-items:end!important}.ion-align-items-xl-center{align-items:center!important}.ion-align-items-xl-stretch{align-items:stretch!important}.ion-align-items-xl-baseline{align-items:baseline!important}}.ion-align-self-start{align-self:start!important}.ion-align-self-end{align-self:end!important}.ion-align-self-center{align-self:center!important}.ion-align-self-stretch{align-self:stretch!important}.ion-align-self-baseline{align-self:baseline!important}.ion-align-self-auto{align-self:auto!important}@media (min-width: 576px){.ion-align-self-sm-start{align-self:start!important}.ion-align-self-sm-end{align-self:end!important}.ion-align-self-sm-center{align-self:center!important}.ion-align-self-sm-stretch{align-self:stretch!important}.ion-align-self-sm-baseline{align-self:baseline!important}.ion-align-self-sm-auto{align-self:auto!important}}@media (min-width: 768px){.ion-align-self-md-start{align-self:start!important}.ion-align-self-md-end{align-self:end!important}.ion-align-self-md-center{align-self:center!important}.ion-align-self-md-stretch{align-self:stretch!important}.ion-align-self-md-baseline{align-self:baseline!important}.ion-align-self-md-auto{align-self:auto!important}}@media (min-width: 992px){.ion-align-self-lg-start{align-self:start!important}.ion-align-self-lg-end{align-self:end!important}.ion-align-self-lg-center{align-self:center!important}.ion-align-self-lg-stretch{align-self:stretch!important}.ion-align-self-lg-baseline{align-self:baseline!important}.ion-align-self-lg-auto{align-self:auto!important}}@media (min-width: 1200px){.ion-align-self-xl-start{align-self:start!important}.ion-align-self-xl-end{align-self:end!important}.ion-align-self-xl-center{align-self:center!important}.ion-align-self-xl-stretch{align-self:stretch!important}.ion-align-self-xl-baseline{align-self:baseline!important}.ion-align-self-xl-auto{align-self:auto!important}}.ion-justify-content-start{justify-content:flex-start!important}.ion-justify-content-end{justify-content:flex-end!important}.ion-justify-content-center{justify-content:center!important}.ion-justify-content-between{justify-content:space-between!important}.ion-justify-content-around{justify-content:space-around!important}.ion-justify-content-evenly{justify-content:space-evenly!important}@media (min-width: 576px){.ion-justify-content-sm-start{justify-content:flex-start!important}.ion-justify-content-sm-end{justify-content:flex-end!important}.ion-justify-content-sm-center{justify-content:center!important}.ion-justify-content-sm-between{justify-content:space-between!important}.ion-justify-content-sm-around{justify-content:space-around!important}.ion-justify-content-sm-evenly{justify-content:space-evenly!important}}@media (min-width: 768px){.ion-justify-content-md-start{justify-content:flex-start!important}.ion-justify-content-md-end{justify-content:flex-end!important}.ion-justify-content-md-center{justify-content:center!important}.ion-justify-content-md-between{justify-content:space-between!important}.ion-justify-content-md-around{justify-content:space-around!important}.ion-justify-content-md-evenly{justify-content:space-evenly!important}}@media (min-width: 992px){.ion-justify-content-lg-start{justify-content:flex-start!important}.ion-justify-content-lg-end{justify-content:flex-end!important}.ion-justify-content-lg-center{justify-content:center!important}.ion-justify-content-lg-between{justify-content:space-between!important}.ion-justify-content-lg-around{justify-content:space-around!important}.ion-justify-content-lg-evenly{justify-content:space-evenly!important}}@media (min-width: 1200px){.ion-justify-content-xl-start{justify-content:flex-start!important}.ion-justify-content-xl-end{justify-content:flex-end!important}.ion-justify-content-xl-center{justify-content:center!important}.ion-justify-content-xl-between{justify-content:space-between!important}.ion-justify-content-xl-around{justify-content:space-around!important}.ion-justify-content-xl-evenly{justify-content:space-evenly!important}}.ion-flex-row{flex-direction:row!important}.ion-flex-row-reverse{flex-direction:row-reverse!important}.ion-flex-column{flex-direction:column!important}.ion-flex-column-reverse{flex-direction:column-reverse!important}@media (min-width: 576px){.ion-flex-sm-row{flex-direction:row!important}.ion-flex-sm-row-reverse{flex-direction:row-reverse!important}.ion-flex-sm-column{flex-direction:column!important}.ion-flex-sm-column-reverse{flex-direction:column-reverse!important}}@media (min-width: 768px){.ion-flex-md-row{flex-direction:row!important}.ion-flex-md-row-reverse{flex-direction:row-reverse!important}.ion-flex-md-column{flex-direction:column!important}.ion-flex-md-column-reverse{flex-direction:column-reverse!important}}@media (min-width: 992px){.ion-flex-lg-row{flex-direction:row!important}.ion-flex-lg-row-reverse{flex-direction:row-reverse!important}.ion-flex-lg-column{flex-direction:column!important}.ion-flex-lg-column-reverse{flex-direction:column-reverse!important}}@media (min-width: 1200px){.ion-flex-xl-row{flex-direction:row!important}.ion-flex-xl-row-reverse{flex-direction:row-reverse!important}.ion-flex-xl-column{flex-direction:column!important}.ion-flex-xl-column-reverse{flex-direction:column-reverse!important}}.ion-wrap{flex-wrap:wrap!important}.ion-nowrap{flex-wrap:nowrap!important}.ion-wrap-reverse{flex-wrap:wrap-reverse!important}.ion-flex-wrap{flex-wrap:wrap!important}.ion-flex-nowrap{flex-wrap:nowrap!important}.ion-flex-wrap-reverse{flex-wrap:wrap-reverse!important}@media (min-width: 576px){.ion-flex-sm-wrap{flex-wrap:wrap!important}.ion-flex-sm-nowrap{flex-wrap:nowrap!important}.ion-flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}}@media (min-width: 768px){.ion-flex-md-wrap{flex-wrap:wrap!important}.ion-flex-md-nowrap{flex-wrap:nowrap!important}.ion-flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}}@media (min-width: 992px){.ion-flex-lg-wrap{flex-wrap:wrap!important}.ion-flex-lg-nowrap{flex-wrap:nowrap!important}.ion-flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}}@media (min-width: 1200px){.ion-flex-xl-wrap{flex-wrap:wrap!important}.ion-flex-xl-nowrap{flex-wrap:nowrap!important}.ion-flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}}.ion-flex-1{flex:1!important}.ion-flex-auto{flex:auto!important}.ion-flex-initial{flex:initial!important}.ion-flex-none{flex:none!important}@media (min-width: 576px){.ion-flex-sm-1{flex:1!important}.ion-flex-sm-auto{flex:auto!important}.ion-flex-sm-initial{flex:initial!important}.ion-flex-sm-none{flex:none!important}}@media (min-width: 768px){.ion-flex-md-1{flex:1!important}.ion-flex-md-auto{flex:auto!important}.ion-flex-md-initial{flex:initial!important}.ion-flex-md-none{flex:none!important}}@media (min-width: 992px){.ion-flex-lg-1{flex:1!important}.ion-flex-lg-auto{flex:auto!important}.ion-flex-lg-initial{flex:initial!important}.ion-flex-lg-none{flex:none!important}}@media (min-width: 1200px){.ion-flex-xl-1{flex:1!important}.ion-flex-xl-auto{flex:auto!important}.ion-flex-xl-initial{flex:initial!important}.ion-flex-xl-none{flex:none!important}}.ion-flex-grow-0{flex-grow:0!important}.ion-flex-grow-1{flex-grow:1!important}.ion-flex-shrink-0{flex-shrink:0!important}.ion-flex-shrink-1{flex-shrink:1!important}@media (min-width: 576px){.ion-flex-sm-grow-0{flex-grow:0!important}.ion-flex-sm-grow-1{flex-grow:1!important}.ion-flex-sm-shrink-0{flex-shrink:0!important}.ion-flex-sm-shrink-1{flex-shrink:1!important}}@media (min-width: 768px){.ion-flex-md-grow-0{flex-grow:0!important}.ion-flex-md-grow-1{flex-grow:1!important}.ion-flex-md-shrink-0{flex-shrink:0!important}.ion-flex-md-shrink-1{flex-shrink:1!important}}@media (min-width: 992px){.ion-flex-lg-grow-0{flex-grow:0!important}.ion-flex-lg-grow-1{flex-grow:1!important}.ion-flex-lg-shrink-0{flex-shrink:0!important}.ion-flex-lg-shrink-1{flex-shrink:1!important}}@media (min-width: 1200px){.ion-flex-xl-grow-0{flex-grow:0!important}.ion-flex-xl-grow-1{flex-grow:1!important}.ion-flex-xl-shrink-0{flex-shrink:0!important}.ion-flex-xl-shrink-1{flex-shrink:1!important}}.ion-order-first{order:-1!important}.ion-order-0{order:0!important}.ion-order-1{order:1!important}.ion-order-2{order:2!important}.ion-order-3{order:3!important}.ion-order-4{order:4!important}.ion-order-5{order:5!important}.ion-order-6{order:6!important}.ion-order-7{order:7!important}.ion-order-8{order:8!important}.ion-order-9{order:9!important}.ion-order-10{order:10!important}.ion-order-11{order:11!important}.ion-order-12{order:12!important}.ion-order-last{order:13!important}@media (min-width: 576px){.ion-order-sm-first{order:-1!important}.ion-order-sm-0{order:0!important}.ion-order-sm-1{order:1!important}.ion-order-sm-2{order:2!important}.ion-order-sm-3{order:3!important}.ion-order-sm-4{order:4!important}.ion-order-sm-5{order:5!important}.ion-order-sm-6{order:6!important}.ion-order-sm-7{order:7!important}.ion-order-sm-8{order:8!important}.ion-order-sm-9{order:9!important}.ion-order-sm-10{order:10!important}.ion-order-sm-11{order:11!important}.ion-order-sm-12{order:12!important}.ion-order-sm-last{order:13!important}}@media (min-width: 768px){.ion-order-md-first{order:-1!important}.ion-order-md-0{order:0!important}.ion-order-md-1{order:1!important}.ion-order-md-2{order:2!important}.ion-order-md-3{order:3!important}.ion-order-md-4{order:4!important}.ion-order-md-5{order:5!important}.ion-order-md-6{order:6!important}.ion-order-md-7{order:7!important}.ion-order-md-8{order:8!important}.ion-order-md-9{order:9!important}.ion-order-md-10{order:10!important}.ion-order-md-11{order:11!important}.ion-order-md-12{order:12!important}.ion-order-md-last{order:13!important}}@media (min-width: 992px){.ion-order-lg-first{order:-1!important}.ion-order-lg-0{order:0!important}.ion-order-lg-1{order:1!important}.ion-order-lg-2{order:2!important}.ion-order-lg-3{order:3!important}.ion-order-lg-4{order:4!important}.ion-order-lg-5{order:5!important}.ion-order-lg-6{order:6!important}.ion-order-lg-7{order:7!important}.ion-order-lg-8{order:8!important}.ion-order-lg-9{order:9!important}.ion-order-lg-10{order:10!important}.ion-order-lg-11{order:11!important}.ion-order-lg-12{order:12!important}.ion-order-lg-last{order:13!important}}@media (min-width: 1200px){.ion-order-xl-first{order:-1!important}.ion-order-xl-0{order:0!important}.ion-order-xl-1{order:1!important}.ion-order-xl-2{order:2!important}.ion-order-xl-3{order:3!important}.ion-order-xl-4{order:4!important}.ion-order-xl-5{order:5!important}.ion-order-xl-6{order:6!important}.ion-order-xl-7{order:7!important}.ion-order-xl-8{order:8!important}.ion-order-xl-9{order:9!important}.ion-order-xl-10{order:10!important}.ion-order-xl-11{order:11!important}.ion-order-xl-12{order:12!important}.ion-order-xl-last{order:13!important}}.ion-hide,.ion-hide-up,.ion-hide-down{display:none!important}@media (min-width: 576px){.ion-hide-sm-up{display:none!important}}@media (max-width: 575.98px){.ion-hide-sm-down{display:none!important}}@media (min-width: 768px){.ion-hide-md-up{display:none!important}}@media (max-width: 767.98px){.ion-hide-md-down{display:none!important}}@media (min-width: 992px){.ion-hide-lg-up{display:none!important}}@media (max-width: 991.98px){.ion-hide-lg-down{display:none!important}}@media (min-width: 1200px){.ion-hide-xl-up{display:none!important}}@media (max-width: 1199.98px){.ion-hide-xl-down{display:none!important}}.ion-display-none{display:none!important}@media (min-width: 576px){.ion-display-sm-none{display:none!important}}@media (min-width: 768px){.ion-display-md-none{display:none!important}}@media (min-width: 992px){.ion-display-lg-none{display:none!important}}@media (min-width: 1200px){.ion-display-xl-none{display:none!important}}.ion-display-inline{display:inline!important}@media (min-width: 576px){.ion-display-sm-inline{display:inline!important}}@media (min-width: 768px){.ion-display-md-inline{display:inline!important}}@media (min-width: 992px){.ion-display-lg-inline{display:inline!important}}@media (min-width: 1200px){.ion-display-xl-inline{display:inline!important}}.ion-display-inline-block{display:inline-block!important}@media (min-width: 576px){.ion-display-sm-inline-block{display:inline-block!important}}@media (min-width: 768px){.ion-display-md-inline-block{display:inline-block!important}}@media (min-width: 992px){.ion-display-lg-inline-block{display:inline-block!important}}@media (min-width: 1200px){.ion-display-xl-inline-block{display:inline-block!important}}.ion-display-block{display:block!important}@media (min-width: 576px){.ion-display-sm-block{display:block!important}}@media (min-width: 768px){.ion-display-md-block{display:block!important}}@media (min-width: 992px){.ion-display-lg-block{display:block!important}}@media (min-width: 1200px){.ion-display-xl-block{display:block!important}}.ion-display-flex{display:flex!important}@media (min-width: 576px){.ion-display-sm-flex{display:flex!important}}@media (min-width: 768px){.ion-display-md-flex{display:flex!important}}@media (min-width: 992px){.ion-display-lg-flex{display:flex!important}}@media (min-width: 1200px){.ion-display-xl-flex{display:flex!important}}.ion-display-inline-flex{display:inline-flex!important}@media (min-width: 576px){.ion-display-sm-inline-flex{display:inline-flex!important}}@media (min-width: 768px){.ion-display-md-inline-flex{display:inline-flex!important}}@media (min-width: 992px){.ion-display-lg-inline-flex{display:inline-flex!important}}@media (min-width: 1200px){.ion-display-xl-inline-flex{display:inline-flex!important}}.ion-display-grid{display:grid!important}@media (min-width: 576px){.ion-display-sm-grid{display:grid!important}}@media (min-width: 768px){.ion-display-md-grid{display:grid!important}}@media (min-width: 992px){.ion-display-lg-grid{display:grid!important}}@media (min-width: 1200px){.ion-display-xl-grid{display:grid!important}}.ion-display-inline-grid{display:inline-grid!important}@media (min-width: 576px){.ion-display-sm-inline-grid{display:inline-grid!important}}@media (min-width: 768px){.ion-display-md-inline-grid{display:inline-grid!important}}@media (min-width: 992px){.ion-display-lg-inline-grid{display:inline-grid!important}}@media (min-width: 1200px){.ion-display-xl-inline-grid{display:inline-grid!important}}.ion-display-table{display:table!important}@media (min-width: 576px){.ion-display-sm-table{display:table!important}}@media (min-width: 768px){.ion-display-md-table{display:table!important}}@media (min-width: 992px){.ion-display-lg-table{display:table!important}}@media (min-width: 1200px){.ion-display-xl-table{display:table!important}}.ion-display-table-cell{display:table-cell!important}@media (min-width: 576px){.ion-display-sm-table-cell{display:table-cell!important}}@media (min-width: 768px){.ion-display-md-table-cell{display:table-cell!important}}@media (min-width: 992px){.ion-display-lg-table-cell{display:table-cell!important}}@media (min-width: 1200px){.ion-display-xl-table-cell{display:table-cell!important}}.ion-display-table-row{display:table-row!important}@media (min-width: 576px){.ion-display-sm-table-row{display:table-row!important}}@media (min-width: 768px){.ion-display-md-table-row{display:table-row!important}}@media (min-width: 992px){.ion-display-lg-table-row{display:table-row!important}}@media (min-width: 1200px){.ion-display-xl-table-row{display:table-row!important}}html,body{overflow:hidden;width:100%;height:100%;margin:0;padding:0}ion-app{overflow:hidden}ion-content{--overflow: hidden auto}:root{--kff-foundry-blue: #1B3B5A;--kff-foundry-blue-rgb: 27, 59, 90;--kff-timberline-green: #2E5A36;--kff-timberline-green-light: #6EE7A0;--kff-timberline-green-rgb: 46, 90, 54;--kff-forge-gold: #CBA052;--kff-forge-gold-rgb: 203, 160, 82;--kff-alert-red: #DC2626;--kff-heading-font: "Montserrat", sans-serif;--kff-data-font: "Inter", sans-serif;--ion-color-primary: #1B3B5A;--ion-color-primary-rgb: 27, 59, 90;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #17334f;--ion-color-primary-tint: #324f6b;--ion-color-secondary: #CBA052;--ion-color-secondary-rgb: 203, 160, 82;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #b38d48;--ion-color-secondary-tint: #d0a963;--ion-color-success: #2E5A36;--ion-color-success-rgb: 46, 90, 54;--ion-color-success-contrast: #ffffff;--ion-color-success-contrast-rgb: 255, 255, 255;--ion-color-success-shade: #284f30;--ion-color-success-tint: #436b4a;--ion-color-danger: #DC2626;--ion-color-danger-rgb: 220, 38, 38;--ion-color-danger-contrast: #ffffff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #c22121;--ion-color-danger-tint: #e03c3c;--ion-color-warning: #f59e0b;--ion-color-warning-rgb: 245, 158, 11;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #d88b0a;--ion-color-warning-tint: #f6a823;--ion-color-medium: #64748b;--ion-color-medium-rgb: 100, 116, 139;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #58667a;--ion-color-medium-tint: #748297;--ion-color-light: #f1f5f9;--ion-color-light-rgb: 241, 245, 249;--ion-color-light-contrast: #0f172a;--ion-color-light-contrast-rgb: 15, 23, 42;--ion-color-light-shade: #d4d8db;--ion-color-light-tint: #f2f6fa;--ion-color-step-50: #f8fafc;--ion-color-step-100: #f1f5f9;--ion-color-step-150: #e9eef4;--ion-color-step-200: #e2e8f0;--ion-color-step-250: #d5dce6;--ion-color-step-300: #cbd5e1;--ion-color-step-350: #b8c4d1;--ion-color-step-400: #94a3b8;--ion-color-step-450: #7c8da2;--ion-color-step-500: #64748b;--ion-color-step-550: #586478;--ion-color-step-600: #475569;--ion-color-step-650: #3d4a5c;--ion-color-step-700: #334155;--ion-color-step-750: #2a3649;--ion-color-step-800: #1e293b;--ion-color-step-850: #172033;--ion-color-step-900: #0f172a;--ion-color-step-950: #0a0f1a;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--container-sm: 600px;--container-md: 960px;--container-lg: 1280px}body{--ion-background-color: #f8fafc;--ion-background-color-rgb: 248, 250, 252;--ion-text-color: #0f172a;--ion-text-color-rgb: 15, 23, 42;--ion-card-background: #ffffff;--ion-border-color: #e2e8f0;--ion-toolbar-background: #ffffff;--ion-toolbar-color: #0f172a;--ion-item-background: transparent;--ion-tab-bar-background: #ffffff;--ion-tab-bar-border-color: #e2e8f0;--ion-color-step-50: #f8fafc;--ion-color-step-100: #f1f5f9;--ion-color-step-150: #e9eef4;--ion-color-step-200: #e2e8f0;--ion-color-step-250: #d5dce6;--ion-color-step-300: #cbd5e1;--ion-color-step-350: #b8c4d1;--ion-color-step-400: #94a3b8;--ion-color-step-450: #7c8da2;--ion-color-step-500: #64748b;--ion-color-step-550: #586478;--ion-color-step-600: #475569;--ion-color-step-650: #3d4a5c;--ion-color-step-700: #334155;--ion-color-step-750: #2a3649;--ion-color-step-800: #1e293b;--ion-color-step-850: #172033;--ion-color-step-900: #0f172a;--ion-color-step-950: #0a0f1a}body.dark-mode{--ion-background-color: #0d1f2d;--ion-background-color-rgb: 13, 31, 45;--ion-text-color: #f1f5f9;--ion-text-color-rgb: 241, 245, 249;--ion-card-background: #152736;--ion-border-color: #2a4158;--ion-toolbar-background: #0d1f2d;--ion-toolbar-color: #f1f5f9;--ion-item-background: transparent;--ion-tab-bar-background: #0d1f2d;--ion-tab-bar-border-color: #2a4158;--ion-color-step-50: #132432;--ion-color-step-100: #1a2f40;--ion-color-step-150: #213a4e;--ion-color-step-200: #2a4158;--ion-color-step-250: #334d66;--ion-color-step-300: #3d5974;--ion-color-step-350: #476582;--ion-color-step-400: #517190;--ion-color-step-450: #5b7d9e;--ion-color-step-500: #6689ac;--ion-color-step-550: #7a99b7;--ion-color-step-600: #8ea9c2;--ion-color-step-650: #a2b9cd;--ion-color-step-700: #b6c9d8;--ion-color-step-750: #cad9e3;--ion-color-step-800: #dee9ee;--ion-color-step-850: #ebf1f5;--ion-color-step-900: #f1f5f9;--ion-color-step-950: #f8fafc}ion-content{--background: var(--ion-background-color)}ion-card{--background: var(--ion-card-background);border-radius:12px;box-shadow:0 4px 24px #00000026}ion-item{--background: transparent;--border-color: var(--ion-border-color)}ion-title,ion-card-title,h1,h2,h3,h4,h5,h6{font-family:var(--kff-heading-font)}ion-label,ion-input,ion-textarea,ion-select,p,span,div{font-family:var(--kff-data-font)}*:focus-visible{outline:2px solid var(--kff-forge-gold);outline-offset:2px}.button-hover-preview{--color: var(--kff-forge-gold) !important}*{scrollbar-width:thin;scrollbar-color:var(--ion-color-step-300) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--ion-color-step-300);border-radius:3px;transition:background-color .2s ease}::-webkit-scrollbar-thumb:hover{background-color:var(--ion-color-step-400)}ion-content::part(scroll){scrollbar-width:thin;scrollbar-color:transparent transparent}ion-content:hover::part(scroll){scrollbar-color:var(--ion-color-step-300) transparent}ion-content::part(scroll)::-webkit-scrollbar-thumb{background-color:transparent;transition:background-color .3s ease}ion-content:hover::part(scroll)::-webkit-scrollbar-thumb{background-color:var(--ion-color-step-300)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
