:root{--action-gradient: linear-gradient(45deg, #7c3aed, #4338ca);--accent-color: #7c3aed;--accent-color-light: rgba(124, 58, 237, .1);--completed-background: #ddd6fe;--completed-icon-color: #5b21b6;--accent-color-soft: #a78bfa;--board-usage-global-accent: #312e81;--board-usage-global-bg: #e0e7ff;--board-usage-global-text: #312e81;--board-usage-global-border: #a5b4fc;--board-usage-global-gradient: linear-gradient(90deg, #312e81 0%, #4338ca 100%);--board-usage-challenge-accent: #7c3aed;--board-usage-challenge-bg: #f3e8ff;--board-usage-challenge-text: #6d28d9;--board-usage-challenge-border: #c4b5fd;--board-usage-challenge-gradient: linear-gradient(90deg, #7c3aed 0%, #a21caf 100%);--board-usage-personal-accent: #c4b5fd;--board-usage-personal-bg: #faf5ff;--board-usage-personal-text: #6d28d9;--board-usage-personal-border: #ddd6fe;--board-usage-personal-gradient: linear-gradient(90deg, #8b5cf6 0%, #c4b5fd 100%);--board-usage-draft-accent: #6b7280;--board-usage-draft-bg: #f3f4f6;--board-usage-draft-text: #4b5563;--board-usage-draft-border: #d1d5db;--board-usage-draft-gradient: linear-gradient(90deg, #6b7280 0%, #9ca3af 100%);--background-color: #f4f5f7;--card-background: #ffffff;--font-color: #333;--white: #fff;--gray: #ccc;--light-gray: #f0f2f5;--red: #e74c3c;--red-light: #fdeded;--green: #059669;--green-dark: #047857;--star-background: linear-gradient(45deg, #7c3aed, #4338ca);--border-radius-lg: 16px;--border-radius-md: 12px;--border-radius-sm: 8px;--box-shadow: 0 4px 12px rgba(0, 0, 0, .08);--box-shadow-light: 0 2px 8px rgba(0, 0, 0, .05);--box-shadow-heavy: 0 8px 25px rgba(0, 0, 0, .12)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Poppins,sans-serif;background-color:var(--background-color);color:var(--font-color);overscroll-behavior:none;margin:0}#root{min-height:100vh}.app-container{width:100%;padding:1rem}.screen-header{text-align:center;margin-bottom:2rem;font-weight:600;color:var(--font-color)}.screen-header.no-margin{margin-bottom:0}.btn{display:flex;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:44px;padding:.9rem 1rem;border:none;border-radius:var(--border-radius-lg);font-size:1rem;font-weight:500;font-family:Poppins,sans-serif;cursor:pointer;transition:all .2s ease;text-align:center;text-decoration:none}.btn:active{transform:scale(.98)}.btn:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary{background:var(--action-gradient);color:var(--white);box-shadow:0 4px 10px #4f46e54d}.btn-primary:hover{opacity:.9}.btn-secondary{background-color:var(--white);color:var(--font-color);border:1px solid #d6d9dc}.btn-secondary:hover{background-color:#f8f9fa}.icon-btn{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--gray);transition:color .2s ease;padding:.5rem;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--border-radius-lg)}.icon-btn:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px;border-radius:var(--border-radius-lg)}.link-btn{background:none;border:none;color:var(--accent-color);font-weight:600;cursor:pointer;font-family:Poppins,sans-serif;font-size:inherit;min-width:44px;min-height:44px;padding:.35rem .5rem;display:inline-flex;align-items:center;justify-content:center;line-height:1.2;border-radius:var(--border-radius-lg)}.link-btn:hover{text-decoration:underline}p .link-btn{min-width:0;min-height:0;padding:0;display:inline}.card{background:var(--card-background);padding:1.5rem;border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow-light)}.card-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.card-header h2{font-size:1.2rem;font-weight:600;margin:0}.list-pagination{display:flex;justify-content:center;margin-top:1rem}.list-pagination-btn{width:auto;min-width:190px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.9rem;font-weight:600;margin-bottom:.5rem;color:var(--font-color)}.form-input{width:100%;min-height:44px;padding:1rem;border:1px solid transparent;background-color:var(--light-gray);border-radius:var(--border-radius-md);font-size:1rem;font-family:Poppins,sans-serif;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;color:var(--font-color)}.form-input:-webkit-autofill,.form-input:-webkit-autofill:hover,.form-input:-webkit-autofill:focus,.form-input:-webkit-autofill:active{-webkit-text-fill-color:var(--font-color)!important;box-shadow:0 0 0 1000px var(--light-gray) inset!important;transition:background-color 5000s ease-in-out 0s}.form-input::placeholder{color:#a0aec0}.form-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-color-light);background-color:var(--white)}.form-input:focus-visible{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-color-light);background-color:var(--white)}.form-input.is-invalid{border-color:var(--red)}.form-input.is-invalid:focus{box-shadow:0 0 0 3px var(--red-light)}.form-input.is-invalid:focus-visible{box-shadow:0 0 0 3px var(--red-light)}.edit-form{display:flex;flex-direction:column;gap:1.5rem;width:100%}.form-actions{display:flex;gap:1rem;margin-top:1rem}.progress-bar-container{width:100%;height:8px;background-color:var(--light-gray);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--action-gradient);border-radius:4px;transition:width .3s ease-in-out}.loading-container{display:flex;justify-content:center;align-items:center;height:100vh;font-size:1.5rem;color:var(--accent-color)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:16px;height:16px;border:2px solid var(--light-gray);border-top-color:var(--accent-color);border-radius:50%;animation:spin .6s linear infinite;display:inline-block;flex-shrink:0}.spinner--sm{width:14px;height:14px;border-width:2px}.spinner--white{border-color:#ffffff4d;border-top-color:var(--white)}.processing-hint{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--accent-color);margin-top:.35rem}.loading-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem;color:var(--gray);font-size:.9rem}.loading-placeholder .spinner{width:24px;height:24px;border-width:3px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;width:100%}.loading-state--page{min-height:100vh;padding:2rem 1.25rem}.loading-state--section{min-height:160px;padding:1rem .5rem}.loading-state-spinner{width:24px;height:24px;border-width:3px}.loading-state-label{font-size:.9rem;color:var(--gray)}.loading-skeleton-list{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:.6rem}.loading-skeleton-item{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:.7rem;row-gap:.35rem;align-items:center;padding:.75rem;border-radius:var(--border-radius-md);background:#f5f6fa}.loading-skeleton-icon{width:32px;height:32px;border-radius:50%;grid-row:1 / span 2}.loading-skeleton-line{display:block;width:100%;height:10px;border-radius:999px}.loading-skeleton-line--title{max-width:65%}.loading-skeleton-line--meta{max-width:45%}.loading-skeleton-icon,.loading-skeleton-line{background:linear-gradient(90deg,#e7e9f2 25%,#f4f5fa 37%,#e7e9f2 63%);background-size:400% 100%;animation:shimmer 1.25s ease-in-out infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}.inline-error{display:flex;align-items:center;gap:.5rem;padding:.6rem .9rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:var(--border-radius-sm);color:#991b1b;font-size:.85rem;line-height:1.4}.inline-error i{flex-shrink:0;color:var(--red)}.app-shell{position:relative;min-height:100vh}.main-content{padding-bottom:80px}@media (min-width: 768px){.app-shell{display:flex;height:100vh;overflow:hidden}.main-content{margin-left:240px;padding-bottom:0;width:calc(100% - 240px);min-width:0;height:100vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.app-container{max-width:900px;margin-left:auto;margin-right:auto}}.auth-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:1rem}.auth-card{width:100%;max-width:400px;background:var(--card-background);padding:2.5rem 2rem;border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow-heavy)}.auth-header{text-align:center;margin-bottom:2rem}.auth-header .auth-logo{font-size:1.6rem;font-weight:700;color:var(--accent-color);letter-spacing:.03em;margin-bottom:1rem}.auth-header h1{font-size:1.6rem;font-weight:700;margin-bottom:.5rem}.auth-header p{color:#666;font-size:.95rem}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.auth-btn{margin-top:.5rem;padding:1rem;font-size:1.1rem}.auth-loading-state.loading-state--section{min-height:0;padding:0;align-items:flex-start}.auth-loading-state .loading-state-label{font-size:.85rem}.auth-loading-state .loading-state-spinner{width:18px;height:18px;border-width:2px}.auth-switch{text-align:center;margin-top:2rem;font-size:.9rem;color:#555}@media (min-width: 768px){.auth-container{max-width:100%}}.home-hero{padding:1.1rem 1.2rem;margin-bottom:1.2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.home-hero-copy{min-width:0}.home-hero-copy h1{margin:0;font-size:clamp(1.4rem,3vw,2rem);line-height:1.1;color:#1f2430}.home-hero-copy p{margin:.35rem 0 0;color:#687082;font-size:.92rem;font-weight:500}.home-hero-actions{display:inline-flex;align-items:center;gap:.6rem;flex-shrink:0}.home-hero-notification-btn{position:relative;width:44px;height:44px;border-radius:50%;border:1px solid #d6dbe7;background:#fff;color:#4e5567;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.home-hero-notification-btn:hover{border-color:#bfc7d8;color:#343b4b;background:#f7f9fc}.home-hero-notification-btn:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.home-hero-notification-count{position:absolute;top:-6px;right:-12px;background:var(--accent-color);color:var(--white);border-radius:999px;font-size:.64rem;font-weight:700;padding:1px 5px;line-height:1;border:2px solid #fff}.home-hero-create-btn{width:auto;min-width:140px;border-radius:var(--border-radius-lg);padding:.7rem 1rem;font-weight:700}.home-notice{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;width:100%}.home-notice-banner,.home-notice-secondary{width:100%;border:none;cursor:pointer;text-align:left;padding:.95rem 1.25rem;border-radius:var(--border-radius-lg);color:var(--font-color);display:flex;align-items:center;gap:1rem;transition:transform .2s ease,box-shadow .2s ease}.home-notice-banner{position:relative;overflow:hidden;box-shadow:var(--box-shadow)}.home-notice-banner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 15% 20%,rgba(255,255,255,.7),transparent 45%),radial-gradient(circle at 85% 80%,rgba(255,255,255,.5),transparent 40%),repeating-linear-gradient(120deg,rgba(255,255,255,.2),rgba(255,255,255,.2) 6px,transparent 6px,transparent 14px);pointer-events:none}.home-notice-banner-left,.home-notice-banner-right{position:relative;z-index:1}.home-notice-icon{position:relative;z-index:1;width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent-color);flex-shrink:0}.home-notice-banner-left{display:flex;flex-direction:column;gap:.2rem}.home-notice-banner-right{margin-left:auto;display:inline-flex;align-items:center;gap:.5rem;font-weight:600;color:var(--accent-color)}.home-notice-banner i{color:var(--accent-color)}.home-notice-secondary{background:#f8fafc;border:1px solid var(--light-gray);box-shadow:var(--box-shadow)}.home-notice-secondary i:first-child{color:var(--accent-color)}.home-notice-secondary i:last-child{margin-left:auto;color:#9ca3af}.home-notice-banner:hover,.home-notice-secondary:hover{transform:translateY(-1px);box-shadow:0 12px 24px #0f172a14}.home-notice-banner:focus-visible,.home-notice-secondary:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.home-notice-text{display:flex;flex-direction:column;line-height:1.2}.home-notice-kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#9a7b2f}.home-notice-title{font-size:1rem;font-weight:700}.home-notice-subtitle{font-size:.8rem;color:#6b7280}.home-notice-cta{font-size:.85rem;letter-spacing:.08em}.home-create-action .btn{width:100%;max-width:300px}.board-list-new{display:grid;gap:1.5rem}.board-list-controls{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:.9rem;flex-wrap:wrap}.board-filter-chips{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.board-filter-chip{border:1px solid #d9deea;background:#fff;color:#495267;border-radius:var(--border-radius-lg);height:34px;padding:0 .8rem;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.board-filter-chip--all{min-width:68px}.board-filter-chip:hover{border-color:#b9c2d8;background:#f7f9ff}.board-filter-chip.is-active{background:#efe9ff;color:#5b31cc;border-color:#c7b3ff}.board-sort-field{display:inline-flex;align-items:center;gap:.55rem;font-size:.82rem;font-weight:600;color:#4e5567}.board-sort-field select{height:34px;border:1px solid #d9deea;border-radius:var(--border-radius-lg);background:#fff;color:#1f2430;font-size:.82rem;font-weight:600;padding:0 .7rem}.board-card-new{background:var(--card-background);border-radius:var(--border-radius-lg);padding:1.25rem;box-shadow:var(--box-shadow);display:flex;flex-direction:column;gap:1rem;cursor:default;transition:all .2s ease-out;box-shadow:inset 0 3px 0 var(--board-usage-challenge-accent),var(--box-shadow)}.board-card-new--global{box-shadow:inset 0 3px 0 var(--board-usage-global-accent),var(--box-shadow)}.board-card-new--challenge{box-shadow:inset 0 3px 0 var(--board-usage-challenge-accent),var(--box-shadow)}.board-card-new--personal{box-shadow:inset 0 3px 0 var(--board-usage-personal-accent),var(--box-shadow)}.board-card-new--draft{box-shadow:inset 0 3px 0 var(--board-usage-draft-accent),var(--box-shadow)}.board-card-new:hover{transform:none;box-shadow:inherit}.board-card-new:focus-visible{outline:none;border-color:transparent;transform:none;box-shadow:inherit}.board-card-content{display:flex;flex-direction:column;gap:1rem}.board-card-new--typed{position:relative;overflow:hidden;padding-top:3.15rem}.board-card-type-banner{position:absolute;top:0;left:0;right:0;height:2.35rem;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.12rem;font-weight:800;letter-spacing:.01em;text-transform:capitalize;background:var(--board-usage-challenge-gradient);border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;border-bottom:1px solid rgba(255,255,255,.25)}.board-card-type-banner span{position:relative;z-index:1}.board-card-type-banner--global{background:var(--board-usage-global-gradient)}.board-card-type-banner--challenge{background:var(--board-usage-challenge-gradient)}.board-card-type-banner--personal{background:var(--board-usage-personal-gradient)}.board-card-type-banner--draft{background:var(--board-usage-draft-gradient)}.board-card-skeleton{cursor:default}.board-skeleton-line,.board-skeleton-chip,.board-skeleton-progress-fill,.mini-cell--skeleton,.board-skeleton-action,.board-skeleton-delete{background:linear-gradient(90deg,#e7e9f2 25%,#f4f5fa 37%,#e7e9f2 63%);background-size:400% 100%;animation:shimmer 1.25s ease-in-out infinite}.board-skeleton-line{display:block;height:12px;border-radius:999px}.board-skeleton-line--title{width:min(68%,220px)}.board-skeleton-line--subtitle{width:min(44%,150px);height:10px;margin-top:.42rem}.board-card-stats--skeleton{gap:.5rem}.board-skeleton-chip{width:52px;height:24px;border-radius:999px}.board-skeleton-progress{position:relative;overflow:hidden}.board-skeleton-progress-fill{display:block;height:100%;width:46%;border-radius:inherit}.mini-grid--skeleton{pointer-events:none}.mini-cell--skeleton{cursor:default}.mini-cell--skeleton:hover,.mini-cell--skeleton:active{transform:none}.board-card-actions--skeleton{pointer-events:none}.board-skeleton-action{flex:1;height:42px;border-radius:var(--border-radius-sm)}.board-skeleton-delete{width:44px;height:44px;border-radius:50%;flex-shrink:0}.board-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.board-card-title-group{flex-grow:1;min-width:0}.board-card-title-row{display:flex;align-items:flex-start;gap:.5rem;min-width:0}.board-card-header h3{font-weight:600;font-size:1.2rem;word-break:break-word}.board-status-pill{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:999px;padding:.12rem .42rem;font-size:.56rem;letter-spacing:.04em;text-transform:uppercase;font-weight:700;background:#6c4cf2;color:#fff;border:none}.board-card-subtitle{font-size:.8rem;color:#666;margin-top:.1rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-card-stats{display:flex;gap:1rem;font-size:1rem;font-weight:600;color:#333}.stat-item-mini{display:flex;align-items:center;gap:.4rem}.stat-item-mini.progress-stat{color:var(--accent-color)}.stat-item-mini .fa-trophy{color:var(--green)}.mini-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;padding:.75rem;border-radius:var(--border-radius-md)}.mini-cell{aspect-ratio:1 / 1;background-color:#e5e7eb;border-radius:var(--border-radius-sm);display:flex;justify-content:center;align-items:center;transition:transform .15s ease-out;position:relative;cursor:pointer}.mini-cell:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.mini-cell:hover{transform:scale(1.1);z-index:1}.mini-cell:active{transform:scale(1.05);transition:transform .1s ease}.mini-cell.completed.has-background:not(.is-transparent-image) .mini-cell-icon,.mini-cell.completed.has-background:not(.is-transparent-image) i{position:relative;z-index:1}.mini-cell.completed{background-color:var(--completed-background)}.mini-cell.completed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a61;border-radius:inherit;pointer-events:none}.mini-cell.completed .mini-cell-icon,.mini-cell.completed i{position:relative;z-index:1}.mini-cell.completed .mini-cell-icon{opacity:.9}.mini-cell.free-space{background:var(--star-background);color:var(--white);font-size:1rem}.mini-cell.free-space i{font-size:1.6rem}.mini-cell-icon{font-size:1.5rem;line-height:1}.mini-cell-text{position:relative;z-index:1;padding:.3rem;font-size:.52rem;line-height:1.2;font-weight:600;color:#334155;text-align:center;word-break:break-word;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.board-card-actions{display:flex;justify-content:flex-start;align-items:center;gap:.75rem;margin-top:.5rem;border-top:1px solid var(--light-gray);padding-top:1rem}.btn-active-card{background-color:var(--green);color:var(--white);flex-grow:1;padding:.75rem 1rem;font-size:1rem;border:none}.btn-active-card:hover{background-color:var(--green-dark)}.btn-activate-card-action{background-color:#dcfce7;color:#166534;border:1px solid #86efac;padding:.75rem 1rem;font-size:1rem;flex-grow:1}.btn-activate-card-action:hover{background-color:#bbf7d0}.btn-activate-card-action:disabled{background-color:#f1f5f9;color:#94a3b8;border-color:#e2e8f0;cursor:not-allowed}.btn-edit-card-action{background-color:var(--white);color:var(--font-color);border:1px solid #d6d9dc;padding:.75rem 1rem;font-size:1rem;flex-grow:1}.btn-edit-card-action:hover{background-color:#f8f9fa}.btn-delete-card-action{background-color:var(--red-light);color:var(--red);border:none;border-radius:var(--border-radius-lg);width:44px;height:44px;font-size:.9rem;cursor:pointer;transition:background-color .2s;flex-shrink:0;display:flex;justify-content:center;align-items:center}.btn-delete-card-action:hover{background-color:#fbd7d7}.empty-state{text-align:center;padding:3rem 1rem;color:#666}.board-list-new .empty-state{grid-column:1 / -1;justify-self:center}.home-infinite-scroll-status{font-size:.9rem;font-weight:600;color:#5b6475}.home-infinite-scroll-sentinel{width:100%;height:1px}.empty-state i.fa-clipboard-list{font-size:4rem;margin-bottom:1.5rem;color:#e2e8f0}.empty-state h3{font-size:1.3rem;font-weight:600;color:var(--font-color);margin-bottom:.5rem}.empty-state p{font-size:1rem;margin-bottom:2rem}@media (min-width: 768px){.board-card-type-banner{height:2.6rem}.board-card-new--typed{padding-top:3.4rem}.mini-grid{gap:.75rem}.board-list-new{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 767px){.home-hero{flex-direction:row;align-items:center;justify-content:space-between;padding:1rem}.home-hero-copy{flex:1}.home-hero-copy h1{font-size:1.65rem}.home-hero-actions{width:auto;justify-content:flex-end}.home-hero-create-btn{display:none}.board-card-type-banner{font-size:1.05rem}.board-list-controls{align-items:stretch;min-width:0}.board-filter-chips{width:100%;min-width:0;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.35rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}.board-filter-chips::-webkit-scrollbar{display:none}.board-filter-chip{flex-shrink:0}.board-sort-field{width:100%;justify-content:space-between}.board-sort-field select{flex:1}}.content-wrapper{display:flex;flex-direction:column;gap:1rem;padding-top:1.5rem;transition:padding-bottom .2s ease-in-out}.recurring-dropdown-open .content-wrapper{padding-bottom:40px}.advanced-settings-header{cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:0!important;width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:.75rem;background:transparent;border:none;text-align:left;padding:.35rem 0}.advanced-settings-title{font-size:1.2rem;font-weight:600}.advanced-settings-header:focus-visible{outline:none;border-radius:var(--border-radius-sm)}.advanced-settings-header .fa-chevron-down{transition:transform .2s ease-in-out}.advanced-settings-header .fa-chevron-down.open{transform:rotate(180deg)}.advanced-settings-content{padding-top:1.5rem;display:flex;flex-direction:column;gap:1.25rem;border-top:1px solid var(--light-gray);margin-top:1rem}.advanced-settings-description{font-size:.9rem;color:#666;margin-bottom:0;padding-top:.5rem}.form-group-row{display:flex;gap:1rem}.form-group-row .form-group{flex:1}.checkbox-group{display:flex;align-items:center;gap:.75rem}.checkbox-group input[type=checkbox]{width:24px;height:24px;cursor:pointer}.checkbox-group label{margin-bottom:0;font-weight:500;cursor:pointer;min-height:44px;display:inline-flex;align-items:center}.global-tags-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.65rem .75rem}.global-tags-content{padding-top:1.25rem}.global-summary-input{min-height:120px;resize:vertical;line-height:1.5}.global-image-preview{margin-top:.75rem;border-radius:18px;overflow:hidden;border:1px solid rgba(148,163,184,.24);background:#f8fafc;box-shadow:0 10px 24px #0f172a14}.global-image-preview img{display:block;width:100%;max-height:220px;object-fit:cover}.global-tag-option{min-height:52px;padding:.55rem .85rem;border:1px solid transparent;border-radius:var(--border-radius-md);background:var(--white);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.global-tag-option:hover{border-color:var(--accent-color)}.global-tag-option.is-selected{border-color:var(--accent-color);background:color-mix(in srgb,var(--accent-color) 5%,var(--white))}.global-tag-option input[type=checkbox]{width:20px;height:20px}.global-tag-option label{min-height:0;font-size:.98rem;font-weight:600;line-height:1.2}.edit-all-btn{width:100%;background-color:var(--light-gray);color:var(--font-color);border:1px solid transparent}.edit-all-btn:hover{background-color:#e2e6ea}.preview-board{background-color:var(--light-gray);padding:1rem;border-radius:var(--border-radius-lg)}.preview-board .bingo-cell.has-background:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#00000073,#000000a6);z-index:0}.preview-board .bingo-cell.has-background .bingo-cell-text{color:var(--white);background:#000000b3;padding:.2rem .55rem;border-radius:999px;text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:1}.preview-board .bingo-cell.has-background .bingo-cell-icon{color:var(--white);text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:1}.preview-helper-text{text-align:center;font-size:.8rem;color:#888;margin-top:1rem}.save-board-btn{font-size:1.1rem;padding:1rem;border-radius:var(--border-radius-lg);margin-top:1.5rem}.save-board-actions{display:flex;gap:.75rem;margin-top:1.5rem}.save-board-actions .save-board-btn{margin-top:0;flex:1}.save-board-btn-secondary{border:1px solid #d1d5db}.randomize-note{text-align:center;font-size:.8rem;color:#666;margin-top:1rem}.randomize-btn{width:auto;min-height:44px;min-width:44px;padding:.65rem 1rem;font-size:.9rem;flex-shrink:0}.custom-select-container{position:relative;-webkit-user-select:none;user-select:none}.custom-select-trigger{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:1rem;border:1px solid transparent;background-color:var(--light-gray);border-radius:var(--border-radius-md);font-size:1rem;font-family:Poppins,sans-serif;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease,border-radius .2s ease;color:var(--font-color);cursor:pointer}.custom-select-trigger.is-disabled{cursor:not-allowed;opacity:.75}.custom-select-trigger:focus,.custom-select-trigger.open{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-color-light);background-color:var(--white)}.custom-select-trigger.open{border-bottom-left-radius:0;border-bottom-right-radius:0}.custom-select-trigger .fa-chevron-down{transition:transform .2s ease-in-out}.custom-select-trigger.open .fa-chevron-down{transform:rotate(180deg)}.custom-select-options{position:absolute;top:100%;left:0;right:0;background-color:var(--card-background);border-radius:var(--border-radius-md);border-top-left-radius:0;border-top-right-radius:0;box-shadow:var(--box-shadow-heavy);z-index:10;list-style:none;padding:0;margin:-1px 0 0;border:1px solid #e2e8f0;max-height:200px;overflow-y:auto}.custom-select-trigger.open+.custom-select-options{border-color:var(--accent-color)}.custom-select-option{display:flex;align-items:center;gap:.75rem;min-height:44px;padding:.75rem 1rem;border-radius:0;cursor:pointer;font-weight:500;transition:background-color .2s}.custom-select-option:hover,.custom-select-option:focus{background-color:var(--light-gray);outline:none}.custom-select-option .fa-check{color:var(--accent-color);visibility:hidden}.custom-select-option.selected .fa-check{visibility:visible}.custom-select-option.selected{font-weight:600;color:var(--accent-color)}@keyframes celebration-glow{0%{box-shadow:0 0 5px var(--accent-color-light),0 0 10px var(--accent-color-light)}50%{box-shadow:0 0 20px var(--accent-color),0 0 30px var(--accent-color)}to{box-shadow:0 0 5px var(--accent-color-light),0 0 10px var(--accent-color-light)}}.view-header{display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:1rem}.view-header-new{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.view-header-title{display:flex;align-items:center;gap:.75rem}.view-header-title h2{font-weight:600;font-size:1.2rem}.board-icon{width:32px;height:32px;border-radius:50%;background:var(--action-gradient);color:var(--white);display:flex;justify-content:center;align-items:center;font-size:.9rem}.icon-btn-header{background:none;border:none;font-size:1.25rem;color:#333;cursor:pointer;padding:.5rem;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.stats-card{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}.stats-items-wrapper{display:flex;justify-content:space-around;align-items:center;width:100%}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-value{font-size:1.8rem;font-weight:700}.stat-value.accent{color:var(--accent-color)}.stat-value.green{color:var(--green)}.stat-value .fas.fa-trophy{font-size:1.5rem;margin-right:.25rem}.stat-label{font-size:.8rem;color:#666;font-weight:500}.stats-card .progress-bar-fill{background:var(--accent-color)}.bingo-board-card{background-color:var(--card-background)}.view-board-readonly-note{margin:0 0 1rem;padding:.75rem .9rem;border-radius:10px;border:1px solid #dbeafe;background:#eff6ff;color:#1e3a8a;font-size:.9rem;font-weight:500}.view-header h2,.view-header h1{font-weight:600;text-align:center;margin:0 3rem;word-break:break-word}.back-btn{position:absolute;left:-.5rem;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--accent-color)}.bingo-board{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;aspect-ratio:1 / 1;background-color:transparent;padding:1rem;border-radius:var(--border-radius-lg)}.bingo-board.celebrate{animation:celebration-glow 1.5s ease-in-out}.bingo-board.is-perfected .bingo-cell:not(.free-space){cursor:not-allowed;opacity:.8}.bingo-cell{background-color:var(--card-background);border-radius:var(--border-radius-md);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:.25rem;font-size:clamp(.6rem,2.5vw,.75rem);font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;border:2px solid #e5e7eb;aspect-ratio:1 / 1}.bingo-cell.has-background{background-size:cover;background-position:center;background-repeat:no-repeat}.bingo-cell.has-background:not(.is-transparent-image):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#00000073,#000000a6);z-index:0}.bingo-cell.has-background:not(.is-transparent-image) .bingo-cell-text{color:var(--white);background:#000000b3;padding:.2rem .55rem;border-radius:999px;text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:1}.bingo-cell.has-background:not(.is-transparent-image) .bingo-cell-icon,.bingo-cell.has-background:not(.is-transparent-image) .fa-check{color:var(--white);text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:1}.bingo-cell:not(.free-space):hover,.bingo-cell:not(.free-space):focus{transform:translateY(-2px);border-color:var(--accent-color);outline:none}.bingo-cell:not(.free-space):active{transform:scale(.97) translateY(0);transition:transform .1s ease}.bingo-cell.completed-game{background-color:var(--completed-background);border-color:var(--accent-color);color:var(--completed-icon-color);transform:scale(1.05);box-shadow:inset 0 0 0 999px #0f172a38}.bingo-cell.completed-game.has-background:not(.is-transparent-image){box-shadow:inset 0 0 0 999px #0f172a61}.bingo-cell.completed-game .fa-check{font-size:1.5rem;font-weight:900;margin-bottom:.25rem}.bingo-cell.completed-game .bingo-cell-text{font-weight:600}.bingo-cell-icon{font-size:1.8rem;line-height:1.2}.bingo-cell .bingo-cell-icon{margin-bottom:.25rem}.bingo-cell-text{z-index:1;word-break:break-word;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.bingo-cell.free-space{background:var(--star-background);color:var(--white);cursor:default;border-color:transparent}.bingo-cell.free-space:hover{transform:none;border-color:transparent}.bingo-cell.free-space.completed-game{background:var(--star-background)}.bingo-cell.free-space i{font-size:2.2rem;color:var(--white);text-shadow:none}@media (max-width: 375px){.bingo-board{gap:.5rem;padding:.5rem}.bingo-cell{border-radius:var(--border-radius-sm)}}@media (max-width: 767px){.view-header,.view-header-new{background-color:var(--card-background);padding:1rem;margin:-1rem -1rem 1.5rem;border-bottom:1px solid var(--light-gray)}.view-header{margin-bottom:1rem}.view-header-new{margin-bottom:1.5rem}.back-btn{position:absolute;left:.5rem}.bingo-cell.completed-game .bingo-cell-text{display:none}.bingo-cell.completed-game .fa-check{font-size:2rem;margin-bottom:0}}.profile-content-wrapper{display:flex;flex-direction:column;gap:1.5rem;padding-top:1.5rem}.profile-hero{margin-bottom:.5rem}.profile-hero-heading{display:flex;align-items:flex-start;gap:.8rem}.profile-hero-copy{min-width:0}.profile-hero .screen-header{text-align:left;font-size:clamp(1.9rem,4vw,2.45rem);line-height:1.05;font-weight:700}.profile-hero-back{position:static;transform:none;color:#7b8190;margin-left:-.35rem;margin-top:.05rem}.profile-hero-subtitle{margin:.4rem 0 0;color:#778198;font-size:.98rem;line-height:1.45;max-width:40rem}.profile-card{padding:2rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.profile-avatar-wrapper{position:relative}.profile-avatar{width:120px;height:120px;border-radius:50%;background:var(--light-gray);display:flex;justify-content:center;align-items:center;border:4px solid var(--white);box-shadow:0 0 15px #0000001a;overflow:hidden}.profile-avatar .fas{font-size:4rem;color:#a0aec0}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-username{font-size:1.5rem;font-weight:600;color:var(--font-color);margin-bottom:1rem;text-align:center}.profile-actions{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:350px;align-items:center}.profile-button-group{display:flex;justify-content:center;gap:1rem;width:100%}.profile-button-group .btn{flex-grow:1;min-height:44px;padding:.75rem .5rem;font-size:.9rem}.remove-photo-btn{margin-top:-.5rem;font-size:.9rem;color:var(--red);font-weight:500;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--border-radius-lg)}.remove-photo-btn:hover{color:#c0392b}.archived-boards-card,.archived-challenges-card{padding:1.5rem}.select-btn{font-size:.9rem;font-weight:500;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--border-radius-lg)}.empty-archive-text{text-align:center;color:#666;padding:1rem 0}.archived-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.archived-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border:1px solid #e7eaf0;padding:1rem 1.05rem;border-radius:22px;box-shadow:0 2px #0f172a05;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease;position:relative;overflow:hidden}.archived-item:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--action-gradient)}.archived-item:hover,.archived-item:focus-within{border-color:#d7ddea;box-shadow:0 12px 28px #0f172a14;transform:translateY(-1px)}.is-selecting .archived-item{cursor:pointer}.is-selecting .archived-item:hover{background-color:#fafbff}.archived-item.is-selected{border-color:#7c3aed59;background:#f7f4ff;box-shadow:0 12px 28px #7c3aed1f}.archived-item-content{display:flex;align-items:center;gap:1rem;flex-grow:1;min-width:0}.archived-item-badge{width:3rem;height:3rem;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #eceff5;background:linear-gradient(180deg,#7c3aed14,#4338ca1f),#fff}.archived-icon{font-size:1.1rem;color:#5b34d6}.archived-item-details{display:flex;flex-direction:column;min-width:0;gap:.2rem}.archived-item-name{font-weight:700;color:#18212f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.archived-item-date{font-size:.85rem;color:#778198;line-height:1.35}.btn-replay{background:#efe8ff;border:1px solid rgba(124,58,237,.08);color:#6d35db;min-height:44px;padding:.5rem 1rem;border-radius:var(--border-radius-lg);cursor:pointer;font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;flex-shrink:0;box-shadow:0 8px 20px #7c3aed14}.btn-replay:hover,.btn-replay:focus{background-color:#e2d3ff;border-color:#7c3aed2e;color:#5d28c9;outline:none}.btn-replay .fa-redo{font-size:.8rem}.checkbox-wrapper{position:relative;width:20px;height:20px;flex-shrink:0}.checkbox-wrapper input[type=checkbox]{opacity:0;width:100%;height:100%;position:absolute;cursor:pointer}.custom-checkbox{position:absolute;top:0;left:0;width:20px;height:20px;background-color:var(--white);border:2px solid #c8cfdb;border-radius:50%;transition:all .2s ease;pointer-events:none}.checkbox-wrapper input[type=checkbox]:checked~.custom-checkbox{background-color:var(--accent-color);border-color:var(--accent-color)}.custom-checkbox:after{content:"";position:absolute;display:none;left:5px;top:1px;width:5px;height:10px;border:solid var(--white);border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox-wrapper input[type=checkbox]:checked~.custom-checkbox:after{display:block}.archive-actions{margin-top:1.5rem;border-top:1px solid var(--light-gray);padding-top:1.5rem}.btn-delete-selected{width:100%;background-color:var(--red);color:var(--white);padding:.9rem 1rem;border:none;font-size:1rem;font-weight:600;border-radius:var(--border-radius-lg);cursor:pointer;transition:background-color .2s}.btn-delete-selected:hover{background-color:#c0392b}.btn-delete-selected:disabled{background-color:#f8d7da;color:#d9a0a5;cursor:not-allowed}.friends-card{padding:1.5rem}.friend-counter{font-size:.9rem;font-weight:500;color:#666;flex-shrink:0}.add-friend-form{display:flex;gap:.75rem;margin-top:.5rem;margin-bottom:1.5rem}.add-friend-form .form-input{flex-grow:1;padding:.75rem 1rem}.btn-add-friend{background:var(--accent-color);color:var(--white);border:none;border-radius:var(--border-radius-lg);width:48px;height:48px;font-size:1.1rem;cursor:pointer;transition:all .2s;flex-shrink:0;display:flex;justify-content:center;align-items:center}.btn-add-friend:hover{opacity:.9}.btn-add-friend:active{transform:scale(.95)}.friends-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:1.5rem;justify-content:center}.friend-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;background-color:transparent;padding:.5rem;border-radius:var(--border-radius-lg);position:relative;border:2px solid transparent;transition:border-color .2s ease}.friend-item:hover{border-color:var(--completed-background)}.friend-avatar{order:2;width:64px;height:64px;border-radius:50%;background-color:#e2e8f0;color:#a0aec0;display:flex;justify-content:center;align-items:center;font-size:2rem;flex-shrink:0;overflow:hidden}.friend-avatar img{width:100%;height:100%;object-fit:cover;display:block}.friend-name{order:1;font-weight:500;font-size:.8rem;color:#555;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.btn-remove-friend{background-color:var(--card-background);color:var(--red);border:none;border-radius:var(--border-radius-lg);width:44px;height:44px;font-size:1.1rem;cursor:pointer;transition:all .2s;flex-shrink:0;display:flex;justify-content:center;align-items:center;position:absolute;top:-8px;right:-8px;opacity:0;transform:scale(.8);pointer-events:none;box-shadow:0 2px 4px #00000014;z-index:10}.friend-item:hover .btn-remove-friend{opacity:1;transform:scale(1);pointer-events:auto}.btn-remove-friend:hover{transform:scale(1.1)}.empty-friends-text{text-align:center;color:#666;padding:1rem 0}.pending-friends{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--light-gray)}.pending-friends .card-header{margin-bottom:.75rem}.pending-friends .friend-item{border-style:dashed}.friend-status{order:3;font-size:.75rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.04em}.friend-actions{order:4;display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}.friend-action-btn{border-radius:var(--border-radius-lg);border:1px solid transparent;min-height:44px;padding:.5rem .9rem;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s ease}.friend-action-btn.accept{background-color:var(--accent-color);color:var(--white)}.friend-action-btn.accept:hover{opacity:.9}.friend-action-btn.reject{background-color:transparent;color:#666;border-color:#d7dce0}.friend-action-btn.reject:hover{background-color:#eef2f6}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--light-gray)}.pagination-btn{background-color:var(--card-background);color:var(--font-color);border:1px solid #d6d9dc;border-radius:var(--border-radius-lg);width:44px;height:44px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;justify-content:center;align-items:center}.pagination-btn:hover{background-color:var(--light-gray);border-color:#bdc3c7}.pagination-btn.active{background-color:var(--accent-color);color:var(--white);border-color:var(--accent-color)}.profile-danger-zone{text-align:center;margin-top:1rem}.destructive-link{color:var(--red);font-weight:500;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.destructive-link:hover{color:#c0392b;text-decoration:underline}@media (max-width: 640px){.profile-hero-heading{gap:.6rem}.archived-item{align-items:flex-start;flex-direction:column}.archived-item-content{width:100%}.btn-replay{width:100%;justify-content:center}}.admin-content-wrapper{padding-top:1.5rem}.admin-card{display:flex;flex-direction:column;gap:1rem}.admin-card-header h2{margin-bottom:.25rem}.admin-card-header p{margin:0;color:#6b7280}.admin-controls{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--light-gray);border-radius:var(--border-radius-md)}.admin-controls .fa-search{color:#7b7b7b}.admin-search-input{flex:1;min-height:44px;border:none;background:transparent;font-size:.95rem;font-family:Poppins,sans-serif;color:var(--font-color);outline:none}.admin-error{background:var(--red-light);color:var(--red);padding:.75rem 1rem;border-radius:var(--border-radius-md);font-weight:600}.admin-loading{padding:1rem 0;font-weight:600}.admin-user-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.admin-user-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.15rem 1rem;background:var(--white)}.admin-user-info{display:flex;flex-direction:column;gap:.25rem}.admin-user-name{font-weight:600}.admin-user-email{font-size:.9rem;color:#6b7280}.admin-user-actions{display:flex;align-items:center;gap:.5rem}.admin-role-label{font-weight:600;font-size:.85rem;color:#6b7280}.admin-role-select{border:1px solid var(--light-gray);border-radius:var(--border-radius-sm);min-height:44px;padding:.4rem .6rem;font-family:Poppins,sans-serif;background:var(--white);color:var(--font-color)}.admin-saving{font-size:.85rem;color:#6b7280}.admin-empty{padding:1rem 0;color:#6b7280;font-weight:600}.admin-pagination{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1rem}.admin-page-btn{border:1px solid var(--light-gray);border-radius:var(--border-radius-lg);background:var(--white);color:var(--font-color);min-width:44px;min-height:44px;padding:.35rem .65rem;font-weight:600;cursor:pointer}.admin-page-btn.is-active{background:var(--light-gray)}@media (max-width: 720px){.admin-user-row{flex-direction:column;align-items:flex-start}.admin-user-actions{width:100%;justify-content:space-between}}.contributor-dashboard{display:flex;flex-direction:column;gap:1.5rem}.contributor-create-row{display:flex;justify-content:center}.contributor-create-btn{width:100%;max-width:320px}.contributor-hero{display:flex;flex-direction:column;gap:1rem;position:relative;overflow:hidden}.contributor-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 10% 15%,rgba(79,70,229,.12),transparent 45%);pointer-events:none}.contributor-kicker{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#8b949e;font-weight:700;margin-bottom:.35rem}.contributor-hero h2{font-size:1.4rem;margin:0 0 .4rem;font-weight:700}.contributor-hero p{margin:0;color:#6b7280;font-weight:500}.contributor-hero-tag{align-self:flex-start;background:#eef2ff;color:#4338ca;border-radius:999px;padding:.4rem .8rem;font-weight:600;font-size:.85rem}.contributor-metrics{display:grid;gap:1rem}.contributor-metric-card{display:flex;flex-direction:column;gap:.35rem}.contributor-metric-label{font-size:.85rem;color:#6b7280;font-weight:600}.contributor-metric-value{font-size:1.6rem;font-weight:700;color:var(--font-color)}.contributor-metric-detail{font-size:.8rem;color:#94a3b8;font-weight:600}.contributor-panels{display:grid;gap:1rem}.contributor-panel-header h3{margin:0;font-size:1.1rem;font-weight:700}.contributor-panel-sub{font-size:.85rem;color:#6b7280;font-weight:500}.contributor-window-toggle{margin-top:1rem;display:inline-flex;gap:.5rem;flex-wrap:wrap}.contributor-window-pill{border:1px solid #dbe3f0;background:#fff;color:#64748b;padding:.45rem .8rem;border-radius:var(--border-radius-lg);font:inherit;font-weight:600;cursor:pointer}.contributor-window-pill.is-active{background:#eef2ff;color:#4338ca;border-color:#c7d2fe}.contributor-search{margin-top:1rem;display:flex;align-items:center;gap:.65rem;padding:.8rem .95rem;border:1px solid #dbe3f0;border-radius:999px;background:#fff}.contributor-search i{color:#64748b}.contributor-search input{width:100%;border:0;background:transparent;font:inherit;color:var(--font-color)}.contributor-search input:focus{outline:none}.contributor-list{list-style:none;padding:0;margin:1rem 0 0;display:flex;flex-direction:column;gap:.75rem}.contributor-list li{border-radius:var(--border-radius-md);background:#f8fafc}.contributor-list-row{display:flex;align-items:center;gap:.75rem}.contributor-list-button{width:100%;border:0;background:transparent;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;border-radius:var(--border-radius-lg);font:inherit;color:inherit;text-align:left;cursor:pointer}.contributor-list-button:hover,.contributor-list-button:focus-visible{background:#eef2ff;outline:none}.contributor-featured-preview{margin-top:1rem}.contributor-featured-status{background:#ffffff1f;color:#fff;border-color:#fff3}.contributor-featured-meta{display:flex;flex-direction:column;gap:.85rem}.contributor-featured-head{width:fit-content}.contributor-featured-name,.contributor-featured-plays{color:#ffffffe6}.contributor-featured-tags .global-card-tag{background:#ffffff1f;color:#fff;border-color:#ffffff2e}.contributor-featured-actions{flex-wrap:wrap;justify-content:flex-start}.contributor-featured-toggle{min-height:44px;width:auto;padding:.7rem 1.15rem;background:#ffffff1f;color:#fff;border-color:#ffffff2e}.contributor-featured-toggle:hover{background:#ffffff2e}.contributor-featured-list{margin-top:1rem}.contributor-radio-action{flex-shrink:0;width:24px;height:24px;border:0;padding:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.contributor-radio-action:disabled{cursor:wait}.contributor-radio-indicator{width:18px;height:18px;border-radius:999px;border:2px solid #4338ca;background:transparent;transition:opacity .2s ease}.contributor-radio-indicator.is-checked{background:radial-gradient(circle,#4338ca 0 4px,transparent 5px)}.contributor-radio-indicator.is-updating{opacity:.45}.contributor-empty-state{text-align:center}.contributor-panel-empty-state{margin-top:1rem}.contributor-empty-state h3{margin:0 0 .5rem}.contributor-empty-state p{margin:0;color:#64748b}.contributor-list-title{display:block;font-weight:600}.contributor-list-sub{font-size:.8rem;color:#64748b;font-weight:500}.contributor-panel-note{padding:.9rem 1rem;color:#64748b;font-weight:500}.contributor-tag-cloud{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.75rem}.contributor-tag-pill{display:inline-flex;align-items:center;gap:.55rem;padding:.7rem .95rem;border-radius:var(--border-radius-lg);background:#f8fafc;border:1px solid #e5e7eb}.contributor-tag-pill span{font-weight:600}.contributor-tag-pill strong{color:#4338ca;font-size:.85rem}@media (min-width: 768px){.contributor-hero{flex-direction:row;justify-content:space-between;align-items:center}.contributor-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.contributor-featured-actions .global-cta{width:auto}}@media (max-width: 560px){.contributor-list-row{align-items:flex-start}}.challenges-empty-state{padding-top:4rem}.challenges-empty-state .fa-trophy{font-size:4rem;margin-bottom:1.5rem;color:#e2e8f0}.challenges-empty-state .btn{margin-top:2rem;width:auto;padding:.9rem 1.5rem}.save-challenge-btn{font-size:1.1rem;min-width:160px;height:56px;padding:0 1.25rem;border-radius:var(--border-radius-lg)}.challenge-form-actions{display:flex;justify-content:flex-end;align-items:stretch;gap:1rem;padding:0;margin-top:1.5rem}.challenge-form-actions .btn{width:auto;min-width:160px;height:56px;padding:0 1.25rem}.challenge-form-cancel-btn{font-size:1.1rem}.challenge-schedule-row{gap:1.25rem}.challenge-schedule-row .form-input{min-width:0}.challenges-inline-empty{padding:1.5rem 1rem;margin-top:.5rem;border:1px dashed #e1e4ee;border-radius:var(--border-radius-md);background:#fafbff}.challenges-inline-empty i{font-size:1.8rem;color:#cdd6ea;margin-bottom:.6rem}.challenges-inline-empty h3{margin-bottom:.3rem;font-size:1rem}.challenges-inline-empty p{margin-bottom:0;font-size:.9rem}.friend-invite-list{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.75rem;max-height:250px;overflow-y:auto;border:1px solid var(--light-gray);border-radius:var(--border-radius-md);padding:.5rem}.friend-invite-item{display:flex;align-items:center;gap:1rem;min-height:44px;padding:.75rem;border-radius:var(--border-radius-sm);cursor:pointer;transition:background-color .2s;position:relative;-webkit-user-select:none;user-select:none}.friend-invite-item:hover{background-color:var(--light-gray)}.friend-invite-item:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.friend-invite-item.selected{background-color:var(--accent-color-light)}.friend-invite-item .friend-avatar{width:40px;height:40px;border-radius:50%;background-color:#e2e8f0;color:#a0aec0;display:flex;justify-content:center;align-items:center;font-size:1.2rem;flex-shrink:0;overflow:hidden}.friend-invite-item .friend-avatar img{width:100%;height:100%;object-fit:cover;display:block}.friend-invite-item .friend-name{font-weight:500;flex-grow:1}.checkbox-indicator{width:22px;height:22px;border:2px solid #bdc3c7;border-radius:50%;display:flex;justify-content:center;align-items:center;transition:all .2s ease;flex-shrink:0}.friend-invite-item.selected .checkbox-indicator{background-color:var(--accent-color);border-color:var(--accent-color)}.checkbox-indicator .fa-check{color:var(--white);font-size:.8rem;opacity:0;transform:scale(.5);transition:all .2s ease}.friend-invite-item.selected .checkbox-indicator .fa-check{opacity:1;transform:scale(1)}.challenge-view-wrapper{display:flex;flex-direction:column;gap:1.5rem;padding-top:1.5rem}.banner-helper{display:flex;align-items:center;gap:.75rem;margin-top:.5rem;font-size:.85rem;color:#666}.banner-helper-thumb{width:48px;height:48px;object-fit:cover;border-radius:8px;border:1px solid rgba(148,163,184,.4)}.banner-preview{margin-top:.75rem;border-radius:18px;overflow:hidden;border:1px solid rgba(148,163,184,.24);background:#f8fafc;box-shadow:0 10px 24px #0f172a14}.banner-preview img{display:block;width:100%;max-height:220px;object-fit:cover}.image-focus-controls{display:grid;gap:.75rem;margin-top:.85rem}.image-focus-controls label{display:grid;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--font-color)}.image-focus-controls input[type=range]{width:100%}.banner-type-select{display:flex;flex-direction:column;gap:.75rem}.banner-type-option{display:flex;align-items:center;gap:.75rem;min-height:44px;padding:.85rem 1rem;border-radius:var(--border-radius-md);border:1px solid var(--light-gray);background:var(--card-background);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;font-weight:600;color:var(--font-color)}.banner-type-option i{color:var(--accent-color);font-size:1.1rem}.banner-type-indicator{margin-left:auto;width:20px;height:20px;border-radius:50%;border:2px solid #cbd5f0;display:inline-flex;align-items:center;justify-content:center;background:var(--card-background)}.banner-type-option.is-active{border-color:var(--accent-color);box-shadow:0 0 0 2px #6c4cf226}.banner-type-option.is-active .banner-type-indicator{border-color:var(--accent-color)}.banner-type-option.is-active .banner-type-indicator:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--accent-color)}.banner-upload-card{display:block;padding:1rem;margin-top:.625rem;border-radius:var(--border-radius-md);border:1px dashed #cbd5f0;background:#f8f9ff;cursor:pointer}.banner-upload-input{display:none}.banner-upload-content{display:flex;flex-direction:column;gap:.4rem;color:#555}.banner-upload-content p{margin:0;font-weight:600}.banner-upload-content span{font-size:.85rem;color:#777}.banner-color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.banner-color-swatch{display:flex;align-items:center;gap:.65rem;min-height:44px;border:1px solid var(--light-gray);border-radius:var(--border-radius-md);background:var(--card-background);padding:.55rem .75rem;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;font-weight:600;color:var(--font-color)}.banner-color-swatch .swatch-fill{width:20px;height:20px;border-radius:50%;border:2px solid rgba(0,0,0,.05)}.banner-color-swatch .swatch-label{font-size:.85rem}.challenge-form .form-group+.form-group,.challenge-form-card .form-group+.form-group{margin-top:1.25rem}.challenge-schedule-row.form-group-row .form-group+.form-group{margin-top:0;padding-top:0}.content-wrapper .card .form-group:nth-of-type(2){padding-top:.625rem}.content-wrapper .card .challenge-schedule-row.form-group-row .form-group+.form-group{padding-top:0}.pattern-type-select{display:flex;flex-direction:column;gap:.75rem}.pattern-type-option{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:.85rem 1rem;border-radius:var(--border-radius-md);border:1px solid var(--light-gray);background:var(--card-background);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;font-weight:600;color:var(--font-color)}.pattern-type-indicator{width:20px;height:20px;border-radius:50%;border:2px solid #cbd5f0;display:inline-flex;align-items:center;justify-content:center;background:var(--card-background)}.pattern-type-option.is-active{border-color:var(--accent-color);box-shadow:0 0 0 2px #6c4cf226}.pattern-type-option.is-active .pattern-type-indicator{border-color:var(--accent-color)}.pattern-type-option.is-active .pattern-type-indicator:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--accent-color)}.pattern-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.4rem;max-width:260px}.pattern-cell{width:100%;aspect-ratio:1 / 1;border-radius:.5rem;border:1px solid #d6d9dc;background:#f3f4f6;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:border-color .2s ease,background-color .2s ease}.pattern-cell.is-selected{background:var(--accent-color);border-color:var(--accent-color)}.pattern-cell.is-locked{cursor:not-allowed;box-shadow:inset 0 0 0 2px #4c3ac72e}.pattern-cell-icon{color:var(--white);font-size:.95rem}.pattern-helper{display:flex;align-items:center;gap:.75rem;margin-top:.5rem;font-size:.85rem;color:#666}.advanced-options-card{padding-top:.5rem}.advanced-options-toggle{width:100%;min-height:44px;border:none;background:transparent;display:flex;align-items:center;justify-content:space-between;font-size:1rem;font-weight:600;color:var(--font-color);padding:.5rem 0;cursor:pointer}.advanced-options-toggle i{color:#7c8db5}.advanced-options-body{margin-top:1rem;display:flex;flex-direction:column;gap:1rem}.challenge-pattern-card{display:flex;flex-direction:column;gap:1rem}.challenge-pattern-card.is-collapsed{gap:0}.challenge-pattern-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.challenge-pattern-header h2{margin:0;font-size:1.1rem;font-weight:600;text-align:left}.challenge-detail-section-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-shrink:0}.challenge-card-toggle-btn{width:auto;min-width:44px;padding:.45rem .8rem;color:var(--accent-color);border-color:#6c4cf259;font-size:1.15rem;font-weight:700;line-height:1}.challenge-card-toggle-btn:hover{background:#6c4cf214;border-color:var(--accent-color)}.challenge-participants-toggle-btn{display:none}.challenge-pattern-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem;width:240px;max-width:240px;margin:0 auto}.challenge-pattern-cell{width:100%;aspect-ratio:1 / 1;border-radius:.4rem;background:#eef0f6;border:1px solid #e1e6f0}.challenge-pattern-cell.is-selected{background:var(--accent-color);border-color:var(--accent-color)}.banner-color-swatch.is-active{border-color:var(--accent-color);box-shadow:0 0 0 2px #6c4cf226}.participant-mini-board{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;aspect-ratio:1 / 1;width:100%;padding:3px;overflow:visible}.participant-mini-board .mini-cell{aspect-ratio:1 / 1;background-color:#e5e7eb;border-radius:4px;position:relative}.participant-mini-board .mini-cell:hover{transform:scale(1.06)}.participant-mini-board .mini-cell:active{transform:scale(1.03)}.participant-mini-board .mini-cell.completed{background-color:var(--completed-background)}.participant-mini-board .mini-cell.completed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a61;border-radius:inherit;pointer-events:none}.participant-mini-board .mini-cell.completed .mini-cell-check{position:relative;z-index:1;color:#fff;font-size:.9rem;text-shadow:0 1px 2px rgba(0,0,0,.45)}.participant-mini-board .mini-cell.free-space{background:var(--star-background)}.participant-board-placeholder{display:flex;justify-content:center;align-items:center;aspect-ratio:1 / 1;width:100%;background-color:#e9ecef;border-radius:var(--border-radius-sm);color:#adb5bd;font-size:.8rem;text-align:center}.participant-board-loading{display:inline-flex;align-items:center;gap:.4rem}.challenge-view-wrapper{gap:1.25rem}.challenge-detail-hero{position:relative;min-height:250px;border-radius:var(--border-radius-lg);overflow:hidden;background-size:cover;background-position:center;box-shadow:var(--box-shadow-light)}.challenge-hero-back-btn,.challenge-hero-edit-btn{position:absolute;top:1.1rem;z-index:3;width:44px;height:44px;border-radius:50%;border:2px solid rgba(255,255,255,.35);background:#4b3e3273;color:#fff;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:inline-flex;align-items:center;justify-content:center;font-size:1rem}.challenge-hero-back-btn{left:1.1rem}.challenge-hero-edit-btn{right:1.1rem;font-size:1.4rem}.challenge-hero-back-btn:hover,.challenge-hero-edit-btn:hover{background:#4b3e3294}.challenge-detail-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0a0a102e,#0a0a10b8)}.challenge-detail-hero-inner{position:relative;z-index:1;min-height:250px;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding:1.4rem}.challenge-detail-hero-copy{max-width:640px;color:var(--white)}.challenge-detail-pills{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.65rem}.challenge-detail-pill{display:inline-flex;align-items:center;border-radius:var(--border-radius-lg);padding:.3rem .6rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;background:#6c4cf2;color:var(--white)}.challenge-detail-pill.is-muted{background:#ffffff29}.challenge-detail-hero-copy h2{margin:0;font-size:clamp(1.8rem,4vw,2.85rem);line-height:1.1}.challenge-detail-hero-copy p{margin:.75rem 0 0;max-width:680px;font-size:1rem;line-height:1.45;color:#ffffffeb}.challenge-detail-progress-card{min-width:250px;border-radius:14px;border:1px solid rgba(255,255,255,.2);background:#161422ad;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:.9rem;color:var(--white);display:flex;align-items:center;gap:.8rem}.challenge-detail-progress-ring{width:70px;height:70px;position:relative;flex-shrink:0}.challenge-detail-progress-ring svg{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(-90deg)}.challenge-detail-progress-ring .ring-track{fill:#0e0b198c;stroke:#fff3;stroke-width:3}.challenge-detail-progress-ring .ring-progress{fill:none;stroke:#7c5af2;stroke-width:3;stroke-linecap:round}.challenge-detail-progress-ring span{position:absolute;top:0;right:0;bottom:0;left:0;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.challenge-detail-progress-copy{display:flex;flex-direction:column;gap:.2rem}.challenge-detail-progress-copy .label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#ffffffb3;font-weight:600}.challenge-detail-progress-copy strong{font-size:1.5rem;line-height:1}.challenge-detail-progress-copy small{color:#bba9ff;font-weight:600}.challenge-detail-main-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:1rem}.challenge-detail-primary{display:flex;flex-direction:column;gap:1rem;grid-column:1;grid-row:1 / span 2}.challenge-detail-participants-card{grid-column:2;grid-row:1}.challenge-detail-sidebar{display:flex;flex-direction:column;gap:1rem;grid-column:2;grid-row:2}.challenge-detail-card{background:#f5f5f8;border:1px solid #ececf2;box-shadow:none}.challenge-detail-card h3{margin:0 0 .65rem;font-size:1.45rem;line-height:1.15;color:#242231}.challenge-detail-card p{margin:0;color:#585866;line-height:1.5}.challenge-detail-section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.7rem}.challenge-detail-section-head h3{margin:0;font-size:1.2rem}.challenge-detail-minimize-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-size:.95rem}.challenge-detail-active-count{border-radius:var(--border-radius-lg);padding:.2rem .45rem;background:#7c5af226;color:#6c4cf2;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.challenge-detail-timer-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.challenge-detail-time-card{border-radius:14px;background:#f5f5f8;border:1px solid #ececf2;padding:.9rem .6rem;text-align:center}.challenge-detail-time-card .value{display:block;font-size:2rem;line-height:1;color:#6c4cf2;font-weight:700}.challenge-detail-time-card .label{display:block;margin-top:.25rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#89889a;font-weight:700}.challenge-detail-progress-list{display:flex;flex-direction:column;gap:.65rem}.challenge-detail-play-card{min-height:0}.challenge-detail-selected-meta{margin:.2rem 0 0;color:#737286;font-size:.86rem;font-weight:600}.challenge-detail-active-board{border:none;background:#fbfbfe;border-radius:14px;padding:.4rem}.challenge-detail-active-board .mini-grid{width:min(100%,620px);margin:0 auto;gap:.55rem;padding:.35rem}.challenge-detail-active-board .mini-cell{border-radius:10px;min-width:0}.challenge-detail-active-board .mini-cell-text{font-size:clamp(.5rem,1.2vw,.72rem)}.challenge-detail-board-actions{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap}.challenge-detail-board-actions .btn{width:auto;min-width:170px}.challenge-detail-progress-row{border:1px solid #e3e3eb;background:#fff;border-radius:13px;padding:.65rem .7rem;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:.7rem}.challenge-detail-progress-row .item-icon{width:30px;height:30px;border-radius:8px;background:#f0eefb;display:inline-flex;align-items:center;justify-content:center;color:#6c4cf2;font-weight:700}.challenge-detail-progress-row .item-copy{min-width:0}.challenge-detail-progress-row .item-copy strong{display:block;font-size:.92rem;line-height:1.2;color:#252432;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.challenge-detail-progress-row .item-copy small{color:#7f7f90;font-size:.76rem;font-weight:600}.challenge-detail-progress-row .done{color:#22c55e;font-size:1rem}.challenge-detail-overall-progress{border:none;background:#fff;border-radius:13px;padding:.7rem .75rem}.challenge-detail-overall-progress-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.45rem}.challenge-detail-overall-progress-head span{font-size:.78rem;color:#7f7f90;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.challenge-detail-overall-progress-head strong{font-size:.95rem;color:#3b3851}.challenge-detail-overall-progress-track{height:8px;border-radius:999px;background:#e6e6f2;overflow:hidden}.challenge-detail-overall-progress-track span{display:block;height:100%;background:#6c4cf2;border-radius:inherit}.challenge-detail-empty{border:1px dashed #d8d8e6;border-radius:12px;padding:.9rem;background:#fff;color:#66667a;text-align:center;font-weight:500}.challenge-detail-leaderboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.8rem}.challenge-detail-participant-list{display:flex;flex-direction:column;gap:.45rem;max-height:520px;overflow-y:auto;padding-right:.15rem}.challenge-detail-participant-row{width:100%;border:1px solid #ebeaf4;border-radius:11px;background:#fff;color:#2f2d3a;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:.6rem;min-height:54px;padding:.55rem .65rem;font-family:inherit;text-align:left;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.challenge-detail-participant-row:hover{border-color:#6c4cf259;background:#faf9ff}.challenge-detail-participant-row:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.challenge-detail-participant-row.is-selected{border-color:#6c4cf2a6;background:#f4f0ff;box-shadow:0 0 0 2px #6c4cf21a}.challenge-detail-participant-row .leader-avatar-wrap{position:relative;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center}.challenge-detail-participant-row .leader-crown{position:absolute;top:auto;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);color:#d4a017;font-size:.72rem;line-height:1;text-shadow:0 1px 1px rgba(0,0,0,.25);z-index:2;pointer-events:none}.challenge-detail-participant-row .avatar{width:30px;height:30px;border-radius:50%;overflow:hidden;background:#d7d6e5;color:#35324b;font-size:.72rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.challenge-detail-participant-row .avatar img{width:100%;height:100%;object-fit:cover;display:block}.participant-row-copy{min-width:0;display:flex;flex-direction:column;gap:.12rem}.participant-row-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.participant-row-copy small{color:#77768a;font-size:.73rem;font-weight:600}.participant-row-progress{color:#6c4cf2;font-size:.82rem;font-weight:800}.challenge-detail-leaderboard .leader-row{border:none;background:transparent;border-radius:12px;padding:.35rem .1rem}.challenge-detail-leaderboard .leader-row.is-you{background:transparent}.challenge-detail-leaderboard .leader-head{display:grid;grid-template-columns:26px 1fr;align-items:center;gap:.5rem}.challenge-detail-leaderboard .leader-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem}.challenge-detail-leaderboard .leader-avatar-wrap{position:relative;width:26px;height:26px}.challenge-detail-leaderboard .leader-crown{position:absolute;top:-13px;left:60%;transform:translate(-50%);color:#d4a017;font-size:.62rem;line-height:1;text-shadow:0 1px 1px rgba(0,0,0,.25);z-index:2}.challenge-detail-leaderboard .leader-head .avatar,.challenge-detail-board-title .avatar{width:26px;height:26px;border-radius:50%;overflow:hidden;background:#e8e8ef;color:#47465c;font-size:.7rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.challenge-detail-leaderboard .leader-head .avatar img,.challenge-detail-board-title .avatar img{width:100%;height:100%;object-fit:cover;display:block}.challenge-detail-boards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.challenge-detail-board-card{border:1px solid #e5e4ef;border-radius:14px;background:#fff;padding:.7rem;display:flex;flex-direction:column;gap:.65rem}.challenge-detail-board-title{display:flex;align-items:center;gap:.5rem}.challenge-detail-board-title strong{font-size:.9rem;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.challenge-detail-board-card .participant-mini-board{gap:3px}.challenge-detail-board-card .btn:not(.btn-view-action){min-height:44px;padding:.5rem .7rem;font-size:.8rem}.challenge-detail-board-card .participant-board-placeholder{aspect-ratio:5 / 3;border:1px dashed #ddddee;background:#f7f7fb;color:#85859a}.challenge-detail-cta{border-radius:var(--border-radius-lg);background:linear-gradient(145deg,#6c4cf2,#4c2ac4);color:var(--white);padding:1.15rem;box-shadow:0 14px 24px #6c4cf24d}.challenge-detail-cta h4{margin:0;font-size:1.35rem;line-height:1.15}.challenge-detail-cta p{margin:.7rem 0 1rem;color:#ffffffe6;font-size:.9rem;line-height:1.4}.challenge-detail-cta .btn{background:var(--white);color:#5637c9;border:none;box-shadow:none}.challenge-detail-cta .btn:disabled{opacity:.6}@media (max-width: 1023px){.challenge-detail-main-grid{grid-template-columns:1fr}.challenge-detail-primary,.challenge-detail-participants-card,.challenge-detail-sidebar{grid-column:1;grid-row:auto}.challenge-detail-sidebar{order:-1}}@media (max-width: 767px){.challenge-detail-hero{min-height:300px}.challenge-detail-hero-inner{min-height:300px;flex-direction:column;align-items:stretch;justify-content:flex-end}.challenge-detail-progress-card{width:100%;min-width:0}.challenge-detail-boards-grid{grid-template-columns:1fr}.challenge-detail-timer-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}.challenge-detail-time-card{min-width:0;padding:.65rem .25rem}.challenge-detail-time-card .value{font-size:clamp(1.35rem,7vw,2.1rem)}.challenge-detail-time-card .label{font-size:.62rem;letter-spacing:.035em}.challenge-detail-board-actions{justify-content:stretch}.challenge-detail-board-actions .btn{width:100%;min-width:0}.challenge-detail-leaderboard{grid-template-columns:1fr}}.challenge-detail-v2{background:transparent;border-radius:14px;padding:0;overflow:hidden;gap:1rem}.challenge-detail-v2 .challenge-detail-hero{border-radius:14px 14px 0 0;min-height:285px;box-shadow:none}.challenge-detail-v2 .challenge-detail-hero-overlay{background:linear-gradient(180deg,#0c0a142e,#0c0a14c7)}.challenge-detail-v2 .challenge-detail-hero-inner{padding:1rem 1.2rem 1.35rem}.challenge-detail-v2 .challenge-detail-hero-copy h2{font-size:clamp(2rem,4.2vw,3.05rem);letter-spacing:-.02em}.challenge-detail-v2 .challenge-detail-hero-copy p{font-size:1.02rem;max-width:720px}.challenge-detail-v2 .challenge-detail-pill{background:#643df0;font-size:.66rem}.challenge-detail-v2 .challenge-detail-pill.is-muted{background:#fff3}.challenge-detail-v2 .challenge-detail-progress-card{min-width:255px;border-radius:12px;background:#2d2a3cb8;border:1px solid rgba(255,255,255,.17);padding:.9rem}.challenge-detail-v2 .challenge-detail-progress-copy strong{font-size:1.95rem}.challenge-detail-v2 .challenge-detail-about-card{margin:0 1rem}.challenge-detail-v2 .challenge-detail-main-grid{grid-template-columns:minmax(0,1fr) 300px;gap:1rem;padding:0 0 1rem}.challenge-detail-v2 .challenge-detail-card{background:#fff;border:1px solid #ececf3;border-radius:12px;padding:1rem}.challenge-detail-v2 .challenge-detail-card h3{font-size:1.9rem;margin-bottom:.55rem}.challenge-detail-v2 .challenge-detail-card p{font-size:.98rem;color:#666678}.challenge-detail-v2 .challenge-detail-section-head h3{font-size:1.95rem}.challenge-detail-v2 .challenge-detail-section-head .link-btn{font-size:.78rem;font-weight:700;text-transform:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 .35rem;gap:.3rem}.challenge-detail-v2 .challenge-detail-section-head .challenge-detail-minimize-btn{font-size:1.95rem;font-weight:700;color:var(--accent-color);min-width:44px;min-height:44px;padding:0;line-height:1;text-decoration:none}.challenge-detail-v2 .challenge-detail-section-head .challenge-detail-minimize-btn:hover,.challenge-detail-v2 .challenge-detail-section-head .challenge-detail-minimize-btn:active{color:#5637c9;text-decoration:none}.challenge-detail-v2 .challenge-detail-section-head .challenge-detail-minimize-btn:focus-visible{color:var(--accent-color);text-decoration:none;outline:2px solid var(--accent-color);outline-offset:2px;border-radius:8px}.challenge-detail-v2 .challenge-detail-timer-row{grid-template-columns:repeat(4,minmax(0,1fr))}.challenge-detail-v2 .challenge-detail-time-card{background:#fff;border:1px solid #ececf3;border-radius:12px;padding:.7rem .5rem}.challenge-detail-v2 .challenge-detail-time-card .value{font-size:2.1rem;color:#6a44ef}.challenge-detail-v2 .challenge-detail-progress-row{border-radius:10px;padding:.55rem .6rem}.challenge-detail-v2 .challenge-detail-progress-row .item-copy strong{font-size:.88rem}.challenge-detail-v2 .challenge-detail-progress-row .item-copy small{font-size:.72rem}.challenge-detail-v2 .challenge-detail-progress-row .item-progress-track{margin-top:.35rem;height:5px}.challenge-detail-v2 .challenge-detail-sidebar .challenge-detail-card h3,.challenge-detail-v2 .challenge-detail-participants-card h3{font-size:1.45rem}.challenge-detail-v2 .challenge-detail-leaderboard .leader-head strong{font-size:.82rem}.challenge-detail-v2 .challenge-detail-leaderboard .leader-head .avatar,.challenge-detail-v2 .challenge-detail-board-title .avatar{width:30px;height:30px;background:#d7d6e5;color:#35324b}.challenge-detail-v2 .challenge-detail-board-card{background:transparent;border-radius:0;border:none}.challenge-detail-v2 .challenge-detail-cta{border-radius:12px;box-shadow:0 12px 20px #623eec42}.challenge-detail-v2 .challenge-detail-cta h4{font-size:1.8rem}.challenge-detail-v2 .challenge-detail-cta .btn{border-radius:var(--border-radius-lg);font-weight:700}.challenge-detail-v2 .view-leaderboard-btn{display:flex;justify-content:center;align-items:center;width:100%;min-height:44px;padding:1rem 0 .35rem;margin-top:.35rem;font-size:.95rem;font-weight:700;color:#643df0}.participants-modal{max-width:560px;padding:0;gap:0}.participants-modal-header{padding:1rem 1.25rem;border-bottom:1px solid #ececf3;display:flex;align-items:center;justify-content:space-between}.participants-modal-header h3{margin:0;text-align:left;font-size:1.2rem}.participants-modal-header .close-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.participants-modal-list{max-height:min(65vh,460px);overflow-y:auto;padding:.8rem 1rem 1rem;display:flex;flex-direction:column;gap:.6rem}.participants-modal-row{border:1px solid #e5e4ef;background:#fff;border-radius:12px;padding:.7rem .8rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.participants-modal-row strong{min-width:0;font-size:.95rem;color:#2f2d3a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.participants-modal-row span{font-size:.85rem;font-weight:700;color:#6f6d86}@media (max-width: 1023px){.challenge-detail-v2 .challenge-detail-main-grid{grid-template-columns:1fr}.challenge-detail-v2 .challenge-detail-sidebar{order:2}}@media (max-width: 767px){.app-container.challenge-page-wide{padding:0}.challenge-view-wrapper{padding-top:0}.challenge-detail-v2{border-radius:0}.challenge-detail-v2 .challenge-detail-hero{border-radius:0;min-height:310px}.challenge-detail-hero-copy{padding-top:3.4rem}.challenge-hero-back-btn,.challenge-hero-edit-btn{width:44px;height:44px;top:.9rem}.challenge-hero-back-btn{left:.9rem}.challenge-hero-edit-btn{right:.9rem}.challenge-detail-v2 .challenge-detail-main-grid,.challenge-detail-v2 .challenge-detail-about-card{margin:0;padding-left:.8rem;padding-right:.8rem}.challenge-detail-v2 .challenge-detail-main-grid{padding-bottom:.8rem}.challenge-detail-v2 .challenge-detail-primary{display:contents}.challenge-detail-v2 .challenge-detail-timer-row{order:1}.challenge-detail-v2 .challenge-detail-participants-card{order:2}.challenge-detail-v2 .challenge-detail-play-card{order:3}.challenge-detail-v2 .challenge-detail-sidebar{order:4}.challenge-detail-v2 .challenge-detail-boards-grid{grid-template-columns:1fr}.challenge-detail-v2 .challenge-detail-timer-row{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 768px){.app-container.challenge-page-wide{max-width:1260px;padding-left:1.25rem;padding-right:1.25rem}}@media (min-width: 768px) and (max-width: 799px){.challenge-page-wide .challenge-detail-v2 .challenge-detail-main-grid{grid-template-columns:1fr;gap:1rem}}@media (min-width: 800px){.challenge-page-wide .challenge-detail-v2 .challenge-detail-hero-inner{padding-left:1.4rem;padding-right:1.4rem}.challenge-page-wide .challenge-detail-v2 .challenge-detail-about-card,.challenge-page-wide .challenge-detail-v2 .challenge-detail-main-grid{margin-left:0;margin-right:0}}@media (min-width: 800px) and (max-width: 1023px){.challenge-page-wide .challenge-detail-v2 .challenge-detail-main-grid{grid-template-columns:minmax(0,1fr) 300px;gap:1rem}}@media (min-width: 1024px){.challenge-page-wide .challenge-detail-v2 .challenge-detail-main-grid{grid-template-columns:minmax(0,1fr) 330px;gap:1.15rem}}@media (max-width: 899px){.app-container.challenge-page-wide{max-width:none;padding-left:0!important;padding-right:0!important}.challenge-page-wide .challenge-view-wrapper{padding-top:0}.challenge-page-wide .challenge-detail-v2 .challenge-detail-hero{border-radius:0}.challenge-page-wide .challenge-detail-v2 .challenge-detail-card h3,.challenge-page-wide .challenge-detail-v2 .challenge-detail-section-head h3,.challenge-page-wide .challenge-pattern-header h2,.challenge-page-wide .challenge-detail-v2 .challenge-detail-cta h4{font-size:1.35rem;line-height:1.15;letter-spacing:-.01em}.challenge-page-wide .challenge-detail-play-card{scroll-margin-top:.8rem}.challenge-participants-toggle-btn{display:inline-flex}.challenge-detail-participants-card.is-collapsed{gap:0}.challenge-detail-participants-card.is-collapsed .challenge-detail-participant-list{display:none}}@media (min-width: 1280px){.app-container.challenge-page-wide{max-width:1360px}.challenge-page-wide .challenge-detail-v2 .challenge-detail-main-grid{grid-template-columns:minmax(0,1fr) 350px}}.challenges-screen-v2{padding-top:.9rem;background:#f4f4f7}.challenges-screen-v2 .challenges-v2-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.challenges-screen-v2 .challenges-v2-header h1{margin:0;font-size:clamp(1.4rem,3vw,2rem);line-height:1.1;color:#1f2430}.challenges-screen-v2 .challenges-v2-header p{margin:.35rem 0 0;color:#7a7f92;font-size:1rem;font-weight:500}.challenges-screen-v2 .challenges-v2-create-btn{width:auto;min-width:230px;padding:.8rem 1.25rem;border-radius:var(--border-radius-lg);font-size:.95rem;font-weight:700;box-shadow:0 10px 18px #643df03d}.challenges-screen-v2 .challenge-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.45rem;padding-top:.2rem}.challenges-screen-v2 .challenge-module-v2{display:block;background:#fff;border-radius:22px;border:1px solid #ececf3;overflow:hidden;box-shadow:0 3px 10px #1412260d}.challenges-screen-v2 .challenge-module-v2 .challenge-module-banner{min-height:205px;background-size:cover;background-position:center;position:relative}.challenges-screen-v2 .challenge-module-v2 .challenge-module-body{padding:1.25rem 1.35rem 1.2rem;display:flex;flex-direction:column;gap:.95rem}.challenges-screen-v2 .challenge-module-head-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.challenges-screen-v2 .challenge-module-head-row h3{margin:0;font-size:2.2rem;line-height:1.1;color:#222033}.challenges-screen-v2 .challenge-module-title-wrap{display:flex;flex-direction:column;gap:.25rem}.challenges-screen-v2 .challenge-module-progress{width:52px;height:52px;position:relative;flex-shrink:0}.challenges-screen-v2 .challenge-module-progress svg{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(-90deg)}.challenges-screen-v2 .challenge-module-progress .ring-track{fill:none;stroke:#e6e4f3;stroke-width:3}.challenges-screen-v2 .challenge-module-progress .ring-progress{fill:none;stroke:#643df0;stroke-width:3;stroke-linecap:round}.challenges-screen-v2 .challenge-module-progress span{position:absolute;top:0;right:0;bottom:0;left:0;display:inline-flex;align-items:center;justify-content:center;font-size:.76rem;font-weight:800;color:#643df0}.challenges-screen-v2 .challenge-module-description{margin:0;min-height:78px;color:#7c8194;font-size:.95rem;line-height:1.45;border-bottom:1px solid #f0f0f5;padding-bottom:.95rem}.challenges-screen-v2 .challenge-module-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.challenges-screen-v2 .challenge-module-party{display:flex;flex-direction:column;gap:.45rem}.challenges-screen-v2 .challenge-module-party .party-label{text-transform:uppercase;letter-spacing:.05em;font-size:.66rem;font-weight:700;color:#a3a6b7}.challenges-screen-v2 .party-avatars{display:flex;align-items:center;padding-left:.1rem}.challenges-screen-v2 .party-avatar{width:30px;height:30px;border-radius:50%;overflow:hidden;margin-right:-7px;border:2px solid #fff;background:#e7ecf4;color:#4b5164;font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.challenges-screen-v2 .party-avatar img{width:100%;height:100%;object-fit:cover;display:block}.challenges-screen-v2 .party-avatar-extra{min-width:30px;background:#5b35e8;color:#fff;box-shadow:0 2px 8px #5b35e859}.challenges-screen-v2 .challenge-module-actions{display:flex;align-items:center;gap:.65rem;align-self:center}.challenges-screen-v2 .challenge-days-left{display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;color:#e23f3f;white-space:nowrap;text-transform:lowercase;line-height:1;letter-spacing:.01em}.challenges-screen-v2 .btn-delete-challenge-action{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:background-color .2s;width:44px;height:44px;border-radius:var(--border-radius-lg);background:transparent;color:#a3a7b7;border:none}.challenges-screen-v2 .btn-delete-challenge-action i{font-size:1rem;font-weight:900;line-height:1}.challenges-screen-v2 .btn-delete-challenge-action:hover{background:#f7f7fb;color:#8f93a5}.btn-view-action{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:44px;min-height:44px;cursor:pointer;transition:all .2s ease;background:#fff;color:#643df0;border:1.5px solid #643df0;border-radius:var(--border-radius-lg);padding:.5rem 1.05rem;font-size:.95rem;font-weight:700;min-width:110px;flex-grow:0;line-height:1;box-shadow:none}.challenge-detail-board-card .btn-view-action{font-size:.95rem;padding:.5rem 1.05rem}.btn-view-action:hover{background:#eee8ff;color:#4f2ed6;border-color:#4f2ed6;box-shadow:0 0 #643df033}.btn-view-action:disabled{background:#fff;color:#643df0;border-color:#643df0;opacity:.8}.btn-view-action:focus-visible{outline:2px solid #643df0;outline-offset:2px}.challenges-screen-v2 .btn-view-challenge{min-width:110px}@media (max-width: 1023px){.challenges-screen-v2 .challenges-v2-header h1{font-size:2.4rem}.challenges-screen-v2 .challenge-list{grid-template-columns:1fr}}@media (min-width: 768px) and (max-width: 1023px){.challenges-screen-v2 .challenge-list{max-width:none;margin-left:0;margin-right:0}}@media (min-width: 768px) and (max-width: 799px){.challenges-screen-v2 .challenge-list{grid-template-columns:1fr;gap:1.1rem}}@media (min-width: 800px) and (max-width: 1023px){.challenges-screen-v2 .challenge-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem}}@media (max-width: 767px){.challenge-schedule-row.form-group-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem}.challenge-form-actions{gap:.75rem}.challenge-form-actions .btn{flex:1 1 0;min-width:0;padding-inline:.75rem}.challenges-screen-v2 .challenge-list{gap:1rem}.challenges-screen-v2 .challenges-v2-header{flex-direction:column;align-items:stretch;padding:1rem}.challenges-screen-v2 .challenges-v2-header h1{font-size:1.65rem}.challenges-screen-v2 .challenges-v2-create-btn{display:none}.challenges-screen-v2 .challenge-module-head-row h3{font-size:1.65rem}}.notifications-hero{margin-bottom:1.15rem}.notifications-hero-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.notifications-hero-title{min-width:0}.notifications-hero-heading{display:flex;align-items:center;gap:.25rem}.notifications-hero-heading .screen-header{text-align:left;font-size:2rem;line-height:1.05;font-weight:700}.notifications-hero-heading .back-btn{margin-left:-.35rem;color:#7b8190}.notifications-hero-subtitle{margin-top:.35rem;color:#778198;font-size:.98rem;line-height:1.35}.notifications-mark-read-btn{margin-top:.15rem;border:1px solid rgba(124,58,237,.06);background:#efe8ff;color:#6d35db;border-radius:var(--border-radius-lg);min-height:2.2rem;padding:.45rem .9rem;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font-family:Poppins,sans-serif;font-weight:600;font-size:.86rem;cursor:pointer;box-shadow:0 8px 20px #7c3aed14;white-space:nowrap}.notifications-mark-read-btn:hover:not(:disabled){background:#e2d3ff;border-color:#7c3aed2e;color:#5d28c9}.notifications-mark-read-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.notifications-mark-read-btn:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.notifications-filter-tabs{margin-top:1.35rem;display:flex;gap:.6rem;flex-wrap:wrap}.notifications-filter-tab{border:1px solid #d6d9dc;background:var(--white);color:var(--font-color);border-radius:var(--border-radius-lg);min-height:44px;padding:.75rem 1.35rem;display:inline-flex;align-items:center;gap:.45rem;font-family:Poppins,sans-serif;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:none}.notifications-filter-tab:hover{background:#eef2f7;border-color:#bcc4d0;color:#374151}.notifications-filter-tab.is-active{background:var(--accent-color);border-color:var(--accent-color);color:var(--white);box-shadow:0 8px 18px #7c3aed33}.notifications-filter-tab:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.notifications-section-head{margin-top:1.6rem;display:flex;align-items:center;gap:.65rem}.notifications-section-head h2{font-size:1.35rem;font-weight:700;letter-spacing:-.01em}.notifications-unread-badge{text-transform:uppercase;border-radius:999px;background:var(--accent-color);color:var(--white);padding:.18rem .55rem;font-size:.62rem;font-weight:700;letter-spacing:.09em}.notifications-card{margin-top:.85rem}.notifications-feed-card{padding:.35rem;background:transparent;box-shadow:none}.notifications-empty{text-align:center;color:#666;padding-top:2.5rem;padding-bottom:1.5rem}.notifications-empty i{font-size:2.5rem;color:#e2e8f0;margin-bottom:1rem}.notifications-filter-empty{padding-top:2rem}.notifications-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.9rem}.notifications-item{display:flex;align-items:flex-start;gap:.9rem;padding:.95rem 1rem 1rem;border-radius:22px;background:#fff;border:1px solid #e7eaf0;box-shadow:0 2px #0f172a05;position:relative;overflow:hidden}.notifications-item:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,#7c3aed,#6d28d9)}.notifications-item-icon{width:3rem;height:3rem;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #eceff5}.notifications-item-icon i{font-size:1.1rem}.notifications-item-icon.is-social{background:#f5f3ff;color:#6d28d9}.notifications-item-icon.is-challenge{background:#f5f3ff;color:var(--accent-color)}.notifications-item-icon.is-system{background:#f5f3ff;color:#6d28d9}.notifications-item-details{display:flex;flex-direction:column;gap:.2rem;min-width:0;flex:1}.notifications-item-meta{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.notifications-item-kind{color:#6d28d9;text-transform:uppercase;font-size:.72rem;font-weight:700;letter-spacing:.03em}.notifications-item-time{color:#94a3b8;font-size:.78rem;font-weight:600;white-space:nowrap}.notifications-item-title{font-weight:700;font-size:1rem;line-height:1.2;color:#1f2937}.notifications-item-subtitle{font-size:.92rem;color:#64748b;line-height:1.35;margin-top:.1rem}.notifications-item-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-start}.notifications-item-actions--inline{margin-top:.55rem}.notifications-inline-loading{display:inline-flex;align-items:center;gap:.45rem;font-size:.82rem;color:#666;min-height:44px}.btn-notification-action{border:1px solid #d7dde7;border-radius:var(--border-radius-lg);min-height:32px;padding:.4rem .95rem;font-size:.86rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;font-family:Poppins,sans-serif;background-color:var(--white);color:#4b5563}.btn-notification-action:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.btn-notification-action.btn-accept{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:var(--white);border-color:transparent;box-shadow:0 8px 18px #7c3aed2e}.btn-notification-action.btn-accept:hover{background:linear-gradient(135deg,#6d28d9,#5b21b6);color:var(--white);border-color:transparent}.btn-notification-action.btn-reject{background:#f8fafc;color:#475569;border-color:#d7dde7}.btn-notification-action.btn-reject:hover{background:#eef2f7;border-color:#bcc4d0;color:#334155}@media (max-width: 520px){.notifications-hero-row{flex-direction:column;align-items:stretch}.notifications-mark-read-btn{align-self:flex-start}.notifications-hero-heading .screen-header{font-size:1.75rem}.notifications-item{padding:.85rem .9rem .95rem}.notifications-item-actions{width:100%}}.global-page{display:flex;flex-direction:column;gap:1.25rem}.global-page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.global-page-header h1{margin:0;font-size:clamp(1.4rem,3vw,2rem);font-weight:700;color:var(--font-color);line-height:1.1}.global-page-header p{margin:.3rem 0 0;font-size:.9rem;color:#6b7280;font-weight:500}.global-create-btn{width:auto;flex-shrink:0;white-space:nowrap;border-radius:var(--border-radius-lg);padding:.7rem 1.25rem}.global-hero{position:relative;border-radius:22px;overflow:hidden;min-height:330px;padding:2.2rem 2.5rem;display:flex;align-items:center;background-image:linear-gradient(94deg,#070f23eb,#070f23c2 43%,#070f2347),url(https://images.unsplash.com/photo-1477959858617-67f85cf4f1df?auto=format&fit=crop&w=1600&q=80);background-size:cover;background-position:center;box-shadow:0 18px 38px #0f172a42}.global-hero-content{max-width:560px;color:#fff;display:flex;flex-direction:column;gap:1rem}.global-hero-badge-row{margin-bottom:.2rem}.global-featured-badge{display:inline-flex;align-items:center;gap:.38rem;text-transform:uppercase;letter-spacing:.11em;font-weight:700;font-size:.69rem;color:#f5f3ff;padding:.18rem .7rem;border-radius:var(--border-radius-lg);background:linear-gradient(90deg,#6d28d9,#4f46e5)}.global-featured-badge i{font-size:.58rem}.global-hero-title{margin:0;font-size:clamp(2rem,3.1vw,3.3rem);font-weight:700;line-height:1.1}.global-hero-desc{margin:0;max-width:620px;font-size:1.07rem;line-height:1.52;color:#f3f4f6f0}.global-hero-actions{margin-top:.55rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.global-hero-cta{min-height:44px;border-radius:var(--border-radius-lg);border:1px solid transparent;padding:.7rem 1.6rem;font-size:1.05rem;font-weight:600;cursor:pointer;transition:transform .18s ease,opacity .18s ease,border-color .18s ease,background .18s ease}.global-hero-cta.primary{background:linear-gradient(90deg,#6d28d9,#4f46e5);color:#fff}.global-hero-cta:hover{transform:translateY(-1px);opacity:.92}.global-hero-cta:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.global-discover-controls{display:flex;flex-direction:column;gap:.9rem}.global-search{width:100%;display:flex;align-items:center;gap:.55rem;background:#fff;border-radius:999px;border:1px solid #dbe1ea;padding:.66rem 1rem}.global-search i{color:#94a3b8;font-size:.9rem}.global-search input{width:100%;border:none;outline:none;background:transparent;font-size:1rem;color:#475569}.global-search input::placeholder{color:#94a3b8}.global-filter-row{display:flex;gap:.55rem;flex-wrap:wrap}.global-filter-shell{display:flex;align-items:center;gap:.55rem}.global-filter-shell.has-nav .global-filter-row{flex:1}.global-filter-nav{width:40px;height:40px;flex-shrink:0;border:1px solid #dbe1ea;border-radius:var(--border-radius-lg);background:#fff;color:#475569;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .16s ease,color .16s ease,opacity .16s ease,transform .16s ease}.global-filter-nav:hover:not(:disabled){border-color:#a5b4fc;color:#4338ca;transform:translateY(-1px)}.global-filter-nav:disabled{opacity:.45;cursor:default}.global-filter-pill{flex-shrink:0;min-height:41px;background:#fff;border:1px solid #dbe1ea;border-radius:var(--border-radius-lg);padding:.45rem 1.08rem;font-size:.95rem;font-weight:600;color:#475569;cursor:pointer;transition:all .16s ease}.global-filter-pill:hover{border-color:#a5b4fc;color:#4338ca}.global-filter-pill.is-active{color:#fff;border-color:transparent;background:linear-gradient(90deg,#6d28d9,#4f46e5);box-shadow:0 7px 16px #6d28d938}@media (max-width: 1346px){.global-filter-row{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding:.3rem .4rem .9rem;-webkit-overflow-scrolling:touch}}@media (min-width: 761px) and (max-width: 1346px){.global-filter-row{scrollbar-width:none}.global-filter-row::-webkit-scrollbar{display:none}}@media (max-width: 760px){.global-filter-shell{display:block}.global-filter-nav{display:none}.global-filter-row{scrollbar-width:none}.global-filter-row::-webkit-scrollbar{display:none}}.global-board-section{display:flex;flex-direction:column;gap:.9rem}.global-section-header{display:flex;flex-direction:column;gap:.2rem}.global-section-header h3{margin:0;font-size:2rem;font-weight:700;color:#0f172a}.global-results-count{margin:.28rem 0 0;font-size:.92rem;font-weight:600;color:#64748b}.global-section-header.is-row{flex-direction:row;align-items:center;justify-content:space-between;gap:1rem}.global-section-sub{font-size:.88rem;color:#64748b}.global-sort-wrap{display:inline-flex;align-items:center;gap:.5rem}.global-sort-wrap label{font-size:.93rem;font-weight:600;color:#6d28d9}.global-sort-select{border:none;outline:none;background:transparent;color:#6d28d9;font-size:.93rem;font-weight:600;cursor:pointer}.global-board-grid{display:grid;gap:1.1rem}.global-board-card{background:#fff;border:1px solid #e2e8f0;border-radius:15px;box-shadow:0 6px 18px #0f172a0d;display:flex;flex-direction:column;overflow:visible;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.global-board-card.is-clickable{cursor:pointer}.global-board-card.is-disabled{cursor:default}.global-board-card:focus-visible{outline:3px solid rgba(37,99,235,.32);outline-offset:2px}@media (hover: hover){.global-board-card.is-clickable:hover{transform:translateY(-3px);border-color:#cbd5e1;box-shadow:0 12px 24px #0f172a1f}.global-board-card.is-clickable:hover .global-card-title{color:#1d4ed8}}.global-card-image{height:148px;background-size:cover;background-position:center;border-bottom:1px solid #e2e8f0}.global-card-head{display:flex;align-items:center;gap:.65rem}.global-card-body{display:flex;flex-direction:column;gap:.56rem;flex:1;padding:1rem}.global-card-title{margin:0;font-size:1.2rem;font-weight:700;line-height:1.3;color:#0f172a}.global-card-meta{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;min-width:0;margin-right:auto;gap:.45rem}.global-card-description{margin:0;font-size:.88rem;color:#64748b;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.global-card-contributor{display:flex;align-items:center;gap:.5rem}.global-contributor-avatar{width:30px;height:30px;border-radius:50%;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;flex-shrink:0;border:1px solid rgba(148,163,184,.25)}.global-contributor-avatar img{width:100%;height:100%;object-fit:cover;display:block}.global-contributor-name{font-size:.95rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-card-status{display:inline-flex;align-items:center;width:fit-content;min-height:24px;padding:.15rem .5rem;border-radius:var(--border-radius-lg);font-size:.7rem;font-weight:700;letter-spacing:.01em}.global-card-status.is-draft{background:#fff7ed;color:#9a3412;border:1px solid #fdba74}.global-card-status.is-published{background:#ecfdf5;color:#166534;border:1px solid #86efac}.global-card-tags{display:flex;flex-wrap:wrap;gap:.35rem}.global-card-tag{background:#f8fafc;color:#475569;font-size:.7rem;padding:.2rem .5rem;border-radius:var(--border-radius-lg);font-weight:500;border:1px solid #e2e8f0}.global-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:auto;padding-top:.25rem}.global-card-meta-footer{display:inline-flex;align-items:center;gap:.55rem}.global-card-plays{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;color:#94a3b8;font-weight:600;white-space:nowrap}.global-card-plays i{margin-right:0}.global-inline-type{font-size:.74rem;font-weight:600;color:#64748b}.global-inline-type.is-forkable{color:#15803d}.global-inline-type.is-premium{color:#9333ea}.global-card-actions{display:flex;gap:.5rem}.global-actions-overflow{display:none;position:relative}.global-overflow-toggle{min-height:36px;min-width:40px;padding:.34rem .65rem}.global-overflow-menu{position:absolute;right:0;bottom:calc(100% + .45rem);z-index:12;display:flex;flex-direction:column;min-width:170px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 12px 24px #0f172a1f;overflow:hidden}.global-card-image{border-top-left-radius:15px;border-top-right-radius:15px}.global-overflow-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:#fff;color:#0f172a;text-align:left;font-size:.85rem;font-weight:600;padding:.6rem .8rem;cursor:pointer}.global-overflow-item:hover:not(:disabled),.global-overflow-item:focus-visible{background:#f8fafc}.global-overflow-item:disabled{color:#94a3b8;cursor:not-allowed}.global-cta{min-height:36px;width:auto;font-size:.79rem;padding:.34rem .85rem}@media (min-width: 640px){.global-board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 920px){.global-board-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 1023px){.global-board-grid{grid-template-columns:1fr}.global-page-header{flex-direction:column;align-items:stretch}.global-create-btn{width:100%}.global-hero{min-height:280px;padding:1.4rem;border-radius:18px}.global-hero-title{font-size:2rem}.global-hero-desc{font-size:.94rem}.global-section-header h3{font-size:1.6rem}.global-section-header.is-row{flex-wrap:wrap}.global-card-title{font-size:1.15rem;line-height:1.3}.global-card-image{height:132px}.global-card-actions{width:100%;display:flex;align-items:center;gap:.45rem}.global-cta{width:auto}.global-primary-action{flex:1;min-width:0;font-size:.95rem}.global-use-action{flex:1;min-width:0;white-space:nowrap;font-size:.9rem}.global-secondary-action{display:none}.global-actions-overflow.has-actions{display:inline-flex;align-items:center;flex-shrink:0}.global-overflow-toggle{min-width:56px;width:auto;height:auto;padding:.34rem .85rem;border-radius:10px}}@media (max-width: 899px){.app-container.global-page.challenge-page-wide{padding:1rem!important}}@media (max-width: 767px){.global-page{gap:1rem}.global-page-header{gap:.75rem;padding:1rem}.global-page-header h1{font-size:1.65rem}.global-page-header p{font-size:.86rem}.global-create-btn{display:none}.global-hero{min-height:230px;padding:1rem;border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow)}.global-hero-content{gap:.75rem}.global-featured-badge{font-size:.62rem;letter-spacing:.06em;padding:.16rem .55rem}.global-hero-title{font-size:1.55rem}.global-hero-desc{font-size:.88rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.global-hero-actions,.global-hero-cta{width:100%}.global-hero-cta{min-height:44px;font-size:.95rem}.global-discover-controls{gap:.75rem}.global-search{min-height:44px;border-radius:var(--border-radius-lg);padding:0 .9rem}.global-search input{font-size:.92rem}.global-filter-row{gap:.5rem;padding:.1rem 0 .35rem}.global-filter-pill{min-height:34px;padding:0 .8rem;font-size:.82rem}.global-section-header.is-row{flex-direction:column;align-items:stretch;gap:.7rem}.global-section-header h3{font-size:1.35rem;line-height:1.15}.global-results-count{font-size:.84rem}.global-sort-wrap{width:100%;justify-content:space-between;gap:.55rem}.global-sort-wrap label{color:#4e5567;font-size:.82rem}.global-sort-select{flex:1;height:34px;border:1px solid #d9deea;border-radius:var(--border-radius-lg);background:#fff;color:#1f2430;font-size:.82rem;padding:0 .7rem}.global-board-grid{gap:1rem}.global-board-card{border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow)}.global-card-image{height:118px;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg)}.global-card-body{padding:.9rem}.global-card-title{font-size:1.08rem}.global-card-footer{flex-direction:column;align-items:stretch;gap:.75rem}.global-card-meta-footer{justify-content:space-between}.global-card-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%}.global-actions-overflow.has-actions{grid-column:1 / -1;width:100%}.global-overflow-toggle{width:100%;min-width:0}.global-overflow-menu{left:0;right:0;min-width:0}.global-primary-action,.global-use-action{width:100%;font-size:.84rem}}.nav-logo{display:none;background:transparent;border:none;padding:0;color:var(--accent-color);cursor:pointer}.nav-logo-text{color:inherit;font-size:1.6rem;font-weight:700}.nav-menu{position:fixed;bottom:0;left:0;right:0;height:65px;background-color:var(--card-background);box-shadow:0 -2px 10px #00000014;display:flex;justify-content:center;align-items:center;z-index:1000;border-top:1px solid var(--light-gray)}.nav-items-container{display:flex;justify-content:space-between;align-items:center;width:100%}.nav-item-group{display:flex;justify-content:space-around;align-items:center;flex:1}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;color:#a0aec0;font-size:.7rem;font-weight:500;padding:8px 12px;border-radius:var(--border-radius-lg);transition:color .2s,background-color .2s;background:transparent;border:none;cursor:pointer;font-family:inherit}.nav-notification-count{background:var(--accent-color);color:var(--white);border:2px solid var(--card-background);border-radius:999px;font-size:.6rem;font-weight:700;padding:1px 6px;line-height:1}.nav-create-btn i{font-size:1.5rem}.nav-item i{font-size:1.25rem}.nav-item.active{color:var(--accent-color)}.nav-item:hover{color:var(--accent-color);background-color:var(--accent-color-light)}.nav-item:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px;color:var(--accent-color);background-color:var(--accent-color-light)}.nav-create-btn{background:var(--action-gradient);color:var(--white);border:none;width:56px;height:56px;border-radius:var(--border-radius-lg);display:flex;justify-content:center;align-items:center;font-size:.7rem;font-weight:500;font-family:inherit;line-height:1.2;cursor:pointer;box-shadow:0 4px 12px #4f46e566;transition:all .2s ease;transform:translateY(-10px)}.nav-create-btn span{display:none;font-weight:500}.nav-create-btn:hover{transform:translateY(-10px) scale(1.05)}.nav-create-btn:disabled{background:var(--gray);color:var(--white);cursor:not-allowed;opacity:.55;box-shadow:none}.nav-create-btn:disabled:hover,.nav-create-btn:disabled:active{transform:translateY(-10px)}.nav-create-btn:active{transform:translateY(-10px) scale(.95)}.nav-create-btn:focus-visible,.nav-logo:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}@media (min-width: 768px){.nav-logo{display:block;background:transparent;border:none}.nav-menu{position:fixed;top:0;left:0;bottom:0;width:240px;height:100%;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:1.5rem 0;gap:1.5rem;box-shadow:2px 0 10px #0000000d;border-top:none;border-right:1px solid var(--light-gray)}.nav-logo{position:static;margin-bottom:1rem;margin-left:auto;margin-right:auto}.nav-logo-text{font-size:1.75rem}.nav-items-container{flex-direction:column;width:100%;gap:.5rem;align-items:stretch;justify-content:flex-start}.nav-item-group{display:contents}.nav-item,.nav-create-btn{flex-direction:row;justify-content:flex-start;gap:1rem;padding:.75rem 1.5rem;width:100%;text-align:left;border-radius:0;font-size:.9rem;font-weight:500;line-height:1.2;font-family:inherit}.nav-notification-count{margin-left:auto;background:var(--accent-color);color:var(--white);border:2px solid var(--card-background);border-radius:999px;font-size:.7rem;font-weight:700;padding:2px 8px;line-height:1}.nav-item i,.nav-create-btn i{font-size:1.25rem;flex-shrink:0;width:20px;text-align:center}.nav-item span,.nav-create-btn span{font-size:inherit;font-weight:inherit;font-family:inherit;display:inline}.nav-create-btn{transform:none;width:100%;height:auto;box-shadow:none;background:transparent;color:#a0aec0;display:none}.nav-item.active,.nav-create-btn.active,.nav-item:hover,.nav-create-btn:hover:not(:disabled){color:var(--accent-color);background-color:var(--accent-color-light);transform:none}.nav-create-btn:disabled{color:#a0aec0;background:transparent;cursor:not-allowed;opacity:.5}.nav-item:active,.nav-create-btn:active:not(:disabled){transform:scale(.98);background-color:var(--accent-color-light);color:var(--accent-color)}.nav-item:focus-visible,.nav-create-btn:focus-visible,.nav-logo:focus-visible{outline-offset:-2px}}@media (max-width: 767px){.nav-item-notifications{display:none}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:1rem}.modal-content{background:var(--card-background);padding:2rem;border-radius:var(--border-radius-lg);box-shadow:0 10px 30px #0000001a;width:100%;max-width:450px;max-height:min(90vh,760px);display:flex;flex-direction:column;gap:1rem;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.modal-content h3{text-align:center;margin-bottom:.5rem}.edit-item-modal{padding:1.25rem;gap:.75rem;max-width:420px;max-height:min(90vh,760px);overflow:hidden}.edit-item-modal .edit-form{display:flex;flex-direction:column;gap:1rem;overflow-y:auto;padding-right:.25rem;max-height:calc(min(90vh,760px) - 5.5rem)}.edit-item-modal .form-input{padding:.7rem .9rem}.edit-item-modal textarea.form-input{min-height:90px}.emoji-input-wrap{display:flex;align-items:center;background:var(--light-gray);border:1px solid transparent;border-radius:var(--border-radius-md);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.emoji-input-wrap:focus-within{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-color-light);background-color:var(--white)}.emoji-input-wrap .form-input{flex:1;border:none;background:transparent;box-shadow:none;border-radius:0;min-width:0}.emoji-input-wrap .form-input:focus,.emoji-input-wrap .form-input:focus-visible{border:none;box-shadow:none;background:transparent}.emoji-picker-toggle{width:44px;height:44px;border-radius:0;border:none;border-left:1px solid #d6d9dc;background:transparent;color:var(--font-color);font-size:1.2rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.emoji-picker-toggle:hover{background:#eef2f7}.emoji-picker-toggle:focus-visible{outline:none}.emoji-picker-popover{margin-top:.5rem;border:1px solid #e5e7eb;background:var(--white);border-radius:var(--border-radius-md);padding:.6rem;box-shadow:0 10px 24px #0f172a1f;max-height:260px;overflow-y:auto}.emoji-picker-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.35rem}.emoji-picker-option{min-width:36px;min-height:36px;border-radius:10px;border:1px solid transparent;background:#f8fafc;cursor:pointer;font-size:1.1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.emoji-picker-option:hover{background:#eef2f7;border-color:#d6d9dc}.emoji-picker-option:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.emoji-picker-hint{margin-top:.5rem;font-size:.75rem;color:#6b7280}.item-image-input{padding:.45rem .6rem;min-height:44px}.item-image-input::file-selector-button{font-family:Poppins,sans-serif;background:var(--white);border:1px solid #d1d5db;border-radius:10px;min-height:44px;padding:.35rem .8rem;margin-right:.75rem;color:var(--font-color);cursor:pointer}.item-image-input::file-selector-button:hover{border-color:var(--accent-color)}.item-background-preview{margin-top:.75rem;width:min(100%,180px);border-radius:var(--border-radius-lg);overflow:hidden;border:1px solid #e5e7eb;background:#f8fafc}.item-background-preview img{display:block;width:100%;height:96px;object-fit:cover}.item-background-preview--compact img{height:72px}.edit-item-modal .form-actions{margin-top:.5rem;position:sticky;bottom:0;background:var(--card-background);padding-top:.35rem}.edit-item-modal .btn,.edit-all-modal .modal-footer .btn{padding:.45rem .9rem}.item-detail-modal{max-width:500px;padding:1rem;gap:.75rem}.item-detail-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.item-detail-modal-header h3{margin:0;text-align:left;font-size:1.1rem;line-height:1.25}.item-detail-modal .close-btn{color:#6b7280;min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid rgba(124,58,237,.24);border-radius:var(--border-radius-lg);background:#7c3aed0f}.item-detail-modal .close-btn:hover,.item-detail-modal .close-btn:focus-visible{color:var(--accent-color);background:#7c3aed1f;border-color:#7c3aed57}.item-detail-modal-image-wrap{width:100%;max-height:240px;min-height:180px;border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:center}.item-detail-modal-image{display:block;width:100%;height:100%;max-height:240px;object-fit:contain}.item-detail-modal-description{color:#4b5563;line-height:1.4;white-space:pre-wrap;margin:0}.item-detail-modal-status-badge{display:inline-flex;align-items:center;gap:.4rem;border-radius:var(--border-radius-lg);width:fit-content;padding:.3rem .62rem;font-size:.8rem;font-weight:700}.item-detail-modal-status-badge.is-done{background:#dcfce7;color:#166534}.item-detail-modal-status-badge.is-in-progress{background:#eef2ff;color:#3730a3}.item-detail-modal-actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}.item-detail-modal-actions .btn{min-width:0;flex:0 0 auto}.item-detail-link-btn{text-decoration:none;border:1px solid rgba(124,58,237,.24);background:#7c3aed0f;color:var(--accent-color);box-shadow:inset 0 0 0 1px #7c3aed0a;width:min(75%,320px);margin-inline:auto;padding-inline:1.25rem}.item-detail-link-btn:hover,.item-detail-link-btn:focus-visible{background:#7c3aed1f;border-color:#7c3aed57;color:#5b21b6}.edit-all-modal{height:90vh;max-height:700px;padding:0;overflow:hidden}.modal-header{padding:1.5rem;border-bottom:1px solid var(--light-gray);flex-shrink:0;text-align:center;position:relative}.modal-header .close-btn{position:absolute;top:.75rem;right:.75rem;font-size:1.2rem;color:var(--gray);padding:.5rem;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.modal-header .close-btn:hover{color:var(--font-color)}.modal-header h2{font-size:1.3rem;font-weight:600;margin:0}.modal-header p{font-size:.9rem;color:#666;margin-top:.5rem;max-width:90%;margin-left:auto;margin-right:auto}.items-list{overflow-y:auto;padding:1.5rem;flex-grow:1;display:flex;flex-direction:column;gap:1.5rem}.item-edit-group{display:flex;flex-direction:column;gap:.5rem}.item-edit-group label{font-weight:600;font-size:.9rem;color:var(--font-color)}.item-edit-inputs{display:flex;gap:.75rem;align-items:flex-start}.item-icon-input{width:60px!important;height:60px;font-size:1.8rem;text-align:center;padding:.5rem!important;flex-shrink:0}.item-text-inputs{display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.item-text-inputs .form-input{width:100%}.item-text-inputs textarea.form-input{min-height:60px;padding:.75rem 1rem;line-height:1.5;resize:vertical}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--light-gray);flex-shrink:0;display:flex;gap:1rem}.settings-modal{max-width:400px;max-height:min(90vh,640px);padding:0;gap:0;overflow:hidden}.settings-modal .modal-header{text-align:left;padding:1rem 1.5rem;position:relative;border-bottom:1px solid var(--light-gray)}.settings-modal .modal-header h2{font-size:1.2rem;font-weight:600;margin:0}.settings-modal .modal-header .close-btn{top:50%;transform:translateY(-50%);right:1rem}.settings-modal .settings-menu{padding:.5rem;overflow-y:auto;min-height:0}.settings-menu{list-style:none;padding:0;margin:0}.settings-item{display:flex;align-items:center;gap:1rem;min-height:44px;padding:1rem 1.25rem;cursor:pointer;border-radius:var(--border-radius-md);transition:background-color .2s ease}.settings-item:hover{background-color:var(--light-gray)}.settings-item:focus-visible{background-color:var(--light-gray);outline:2px solid var(--accent-color);outline-offset:2px}.settings-icon{font-size:1rem;width:20px;text-align:center;color:#666}.settings-icon.fa-user-edit{color:#3498db}.settings-icon.destructive{color:var(--red)}.settings-label{flex-grow:1;font-weight:500;color:var(--font-color)}.settings-chevron{color:#a0aec0;font-size:.8rem}.perfection-modal{text-align:center;align-items:center}.perfection-modal h3{font-size:1.5rem;font-weight:700;color:var(--accent-color)}.perfection-modal p{color:#555;margin-bottom:1rem;line-height:1.6}.select-board-modal{padding:0;overflow:hidden}.select-board-modal .modal-footer{justify-content:flex-end}.modal-search{padding:0 1.5rem .75rem}.modal-search-input{width:100%}.search-results{padding:0 1.5rem .75rem}.search-results-title{margin:0 0 .5rem;font-size:.9rem;font-weight:600;color:#666}.search-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:.75rem}.search-result-grid .friend-invite-item{flex-direction:column;text-align:center;border-radius:16px;min-height:120px;background:var(--card-background)}.search-result-grid .friend-invite-item.selected{border-color:var(--accent-color)}.search-result-grid .friend-avatar{width:52px;height:52px;font-size:1.2rem}.search-result-grid .friend-name{font-size:.9rem}.search-result-grid .friend-details{align-items:center}.search-result-grid .friend-meta,.search-result-grid .checkbox-indicator{display:none}.friend-details{display:flex;flex-direction:column;gap:.15rem}.friend-meta{font-size:.8rem;color:#8a94a6}.board-selection-list{list-style:none;padding:1rem 1.5rem;margin:0;max-height:50vh;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem}.board-selection-item{display:flex;align-items:center;gap:1rem;min-height:44px;padding:1rem;border-radius:var(--border-radius-md);cursor:pointer;transition:background-color .2s ease;border:1px solid var(--light-gray)}.board-selection-item.is-disabled{opacity:.6;cursor:not-allowed;background-color:#f7f8fa}.board-selection-item.is-disabled:hover{background-color:#f7f8fa;border-color:var(--light-gray)}.board-selection-item:hover{background-color:var(--light-gray);border-color:#d6d9dc}.board-selection-item:focus-visible{background-color:var(--light-gray);outline:2px solid var(--accent-color)}.board-selection-icon{font-size:1.2rem;color:var(--accent-color);width:24px;text-align:center}.board-selection-name{flex-grow:1;font-weight:500}.board-selection-status{font-size:.75rem;font-weight:600;color:#888;background-color:#eef2f6;padding:.2rem .5rem;border-radius:var(--border-radius-lg)}.board-selection-chevron{color:#a0aec0}.no-boards-to-select{text-align:center;color:#666;padding:2rem 0}.view-board-modal{padding:0;gap:0;max-width:500px;width:min(500px,calc(100vw - 2rem));max-height:85vh;border-radius:var(--border-radius-lg);overflow:hidden;display:flex;flex-direction:column}.create-challenge-modal{max-width:560px;max-height:min(90vh,820px);padding:0;gap:0;overflow:hidden}.create-challenge-modal .challenge-form{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 1.5rem 1rem}.view-board-modal .modal-header{border:none;padding:1.5rem 1.5rem .25rem;text-align:left;display:flex;align-items:flex-start;gap:.75rem;flex-shrink:0}.view-board-modal .view-board-header-copy{flex:1;min-width:0;padding-right:.5rem}.view-board-modal .modal-header .close-btn{width:2rem;min-width:2rem;height:2rem;min-height:2rem}.view-board-modal .modal-header .close-btn{background:var(--accent-color);color:var(--white);border:none;border-radius:var(--border-radius-lg);padding:0;font-size:.9rem;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;margin-left:auto;flex-shrink:0}.view-board-modal .modal-header h2{margin:0;text-align:left;padding-right:.5rem;font-size:1.6rem;font-weight:600;letter-spacing:-.025em;line-height:1.15;word-break:break-word}.view-board-modal .view-board-back-btn{min-width:auto;width:auto;min-height:40px;padding:.35rem .5rem;border-radius:var(--border-radius-lg);display:inline-flex;align-items:center;gap:.45rem;flex-shrink:0;border:none;background:transparent;color:var(--accent-color);font-size:.95rem;font-weight:600}.view-board-modal .view-board-back-btn i{font-size:1.2rem}.view-board-modal .view-board-back-btn:hover{background:#7b3ff214;color:var(--accent-color)}.view-board-modal .view-board-back-btn:focus-visible{outline:2px solid rgba(99,102,241,.28);outline-offset:2px}.view-board-modal .view-board-modal-meta{text-align:left;display:inline-flex;align-items:center;gap:.6rem;flex-wrap:wrap}.view-board-modal .modal-header .close-btn:hover{background:var(--accent-color-dark, #4c2ac4);color:var(--white);transform:translateY(-1px);box-shadow:0 8px 18px #4c2ac452}.view-board-modal .modal-header .close-btn:focus-visible{outline:2px solid rgba(99,102,241,.35);outline-offset:2px}.view-board-modal .view-board-modal-meta{margin:.45rem 0 0;color:#6b7280;font-size:.9rem;letter-spacing:.01em}.view-board-modal .view-board-modal-avatar{width:2rem;height:2rem;min-width:2rem;min-height:2rem;max-width:2rem;max-height:2rem;border-radius:999px;overflow:hidden;flex:0 0 2rem}.view-board-modal .view-board-modal-avatar img{width:100%;height:100%;object-fit:cover;display:block}.view-board-modal .view-board-modal-author{color:#1f2937;font-weight:600}.view-board-modal .view-board-modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 1.5rem 1.75rem;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.view-board-modal .view-board-modal-summary{margin:.55rem 0 0;color:#4b5563;font-size:.96rem;line-height:1.6;white-space:pre-wrap}.view-board-modal .view-board-modal-actions{padding-top:1rem}.view-board-modal .bingo-board-card{padding:1rem 0 0}.view-board-modal .bingo-cell{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,filter .2s ease}.view-board-modal .bingo-cell.has-background:before{content:none}.view-board-modal .bingo-cell:hover,.view-board-modal .bingo-cell:focus{transform:translateY(-3px) scale(1.02);border-color:#a5b4fc;box-shadow:0 14px 28px #1e293b38;filter:saturate(1.14)}.view-board-modal .bingo-cell.completed-game{border-color:var(--accent-color);box-shadow:inset 0 0 0 999px #0f172a38}.view-board-modal .bingo-cell.completed-game:hover,.view-board-modal .bingo-cell.completed-game:focus{border-color:#8b5cf6;box-shadow:inset 0 0 0 999px #0f172a3d,0 10px 24px #5b21b63d}.view-board-modal .bingo-cell.completed-game.has-background:not(.is-transparent-image){box-shadow:inset 0 0 0 999px #0f172a61}.view-board-modal .bingo-cell.free-space{border-color:transparent}.view-board-modal .view-board-item-detail{display:flex;flex-direction:column;gap:1rem}.view-board-modal .view-board-item-image-wrap{width:100%;max-height:340px;border-radius:16px;overflow:hidden;background:var(--white);display:flex;align-items:center;justify-content:center;padding:.75rem}.view-board-modal .view-board-item-image{display:block;width:auto;max-width:100%;height:auto;max-height:calc(340px - 1.5rem);object-fit:contain;image-rendering:auto;border-radius:12px}.view-board-modal .view-board-item-description{margin:0;color:#4b5563;line-height:1.45;white-space:pre-wrap}.view-board-modal .view-board-item-status-badge{display:inline-flex;align-items:center;gap:.4rem;border-radius:var(--border-radius-lg);width:fit-content;padding:.3rem .62rem;font-size:.8rem;font-weight:700}.view-board-modal .view-board-item-status-badge.is-done{background:#dcfce7;color:#166534}.view-board-modal .view-board-item-status-badge.is-in-progress{background:#eef2ff;color:#3730a3}.view-board-modal .view-board-item-actions{display:flex;gap:.6rem;flex-wrap:wrap}.view-board-modal .view-board-item-actions .btn{min-width:140px}@media (max-width: 767px){.view-board-modal .modal-header h2{font-size:1.7rem}.view-board-modal{width:min(100vw - 1rem,500px);max-height:88vh}.view-board-modal .modal-header{padding:1.25rem 1rem .25rem}.view-board-modal .view-board-modal-body{padding:0 1rem 1.25rem}.view-board-modal .bingo-board-card{padding-top:1rem}}/**
 * @license
 * SPDX-License-Identifier: Apache-2.0
 */.tooltip{position:fixed;background-color:#2c3e50;color:var(--white);padding:.5rem 1rem;width:max-content;max-width:min(34rem,calc(100vw - 1.5rem));border-radius:var(--border-radius-md);font-size:.9rem;z-index:2000;pointer-events:none;display:flex;flex-direction:column;text-align:center;gap:.1rem;box-shadow:0 4px 15px #0003;transition:opacity .2s ease;opacity:0}.tooltip.has-link{pointer-events:auto}.tooltip-link-btn{align-self:center;margin-top:.35rem;display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:.35rem .8rem;border-radius:var(--border-radius-lg);background:#ffffff24;border:1px solid rgba(255,255,255,.18);color:var(--white);text-decoration:none;font-size:.78rem;font-weight:600}.tooltip-link-btn:hover{background:#ffffff38}.tooltip-link-btn:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:2px}.tooltip strong{font-weight:600;word-break:break-word}.tooltip p.tooltip-description{font-size:.8rem;opacity:.9;margin-top:.25rem;font-weight:400;word-break:break-word;white-space:pre-wrap}.tooltip span{font-size:.8rem;opacity:.8}.tooltip:after{content:"";position:absolute;left:50%;transform:translate(-50%);border-width:6px;border-style:solid}.tooltip[data-placement=top]:after{top:100%;border-color:#2c3e50 transparent transparent transparent}.tooltip[data-placement=bottom]:after{bottom:100%;border-color:transparent transparent #2c3e50 transparent}.toast-stack{position:fixed;top:1rem;right:1rem;z-index:1200;display:flex;flex-direction:column;gap:.5rem;width:min(360px,calc(100vw - 2rem))}.toast{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--white);border-radius:var(--border-radius-md);box-shadow:var(--box-shadow-heavy);padding:.75rem .875rem;font-size:.9rem;animation:toast-enter .18s ease-out}.toast-success{background:var(--green)}.toast-error{background:var(--red)}.toast-close-btn{border:none;background:transparent;color:inherit;cursor:pointer;font-size:.9rem;padding:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}@keyframes toast-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 767px){.toast-stack{top:.75rem;right:.75rem;left:.75rem;width:auto}}
