:root{--bg-top: #f2f8f6;--bg-bottom: #f9f1e4;--surface: #ffffffcc;--surface-border: #d4e8df;--text-primary: #143b36;--text-muted: #43635e;--accent-main: #1e7f71;--accent-main-dark: #17655a;--accent-warm: #f2a93b;--danger: #b74343;--shadow-soft: 0 16px 36px rgba(15, 41, 37, .11)}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;min-height:100%}body{margin:0;font-family:Trebuchet MS,Segoe UI,sans-serif;color:var(--text-primary);background:linear-gradient(160deg,var(--bg-top) 0%,var(--bg-bottom) 100%);scrollbar-gutter:stable}.app-shell{max-width:1080px;margin:0 auto;padding:16px 16px 32px}.app-header{border-radius:20px;padding:20px 22px;background:linear-gradient(120deg,#157f6f,#2ba884 40%,#71c77d 72%,#e2bf59);color:#fff;box-shadow:var(--shadow-soft);position:relative}.header-notification-bell{position:absolute;top:20px;right:22px}.header-notification-bell .notification-bell-btn{background:#fff3;border-color:#ffffff4d}.header-notification-bell .notification-bell-btn:hover{background:#ffffff4d;border-color:#ffffff80}.header-notification-bell .bell-icon{filter:brightness(0) invert(1)}.brand-row{display:flex;justify-content:center}.brand-main{display:grid;gap:8px;justify-items:center;text-align:center;min-width:0}.brand-wordmark-image{display:block;width:min(100%,660px);max-width:100%;max-height:84px;height:auto;object-fit:contain;object-position:center center}.eyebrow{margin:0;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.app-version{margin-left:6px;font-weight:700;opacity:.9}.app-title{margin:8px 0 0;font-size:clamp(1.7rem,3.8vw,2.5rem);line-height:1.12;letter-spacing:.01em}.active-user-banner{margin-top:10px;border-radius:12px;padding:10px 12px;border:1px solid #bfe2d4;background:#edf8f4;color:#1c5f52;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.role-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid #98d4c4;border-radius:999px;background:#fff;color:#1c5f52;padding:4px 10px;font-size:.85rem;font-weight:700}.role-pill-icon{font-size:.95rem;line-height:1}.pwa-status-bar{margin-top:12px;border-radius:14px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.pwa-status-bar.is-online{background:#edf8f4;border:1px solid #bfe2d4}.pwa-status-bar.is-offline{background:#fffbef;border:1px solid #f1d89d}.pwa-status-text{margin:0;font-size:.92rem}.pwa-status-bar.is-online .pwa-status-text{color:#1c5f52}.pwa-status-bar.is-offline .pwa-status-text{color:#6b4d1f}.pwa-install-btn{white-space:nowrap}.main-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.nav-link{text-decoration:none;color:var(--text-primary);background:#fffa;border:1px solid var(--surface-border);border-radius:999px;padding:8px 12px;font-weight:600;transition:.2s ease}.nav-link:hover{transform:translateY(-1px)}.nav-link-active{background:#1e7f71;border-color:#1e7f71;color:#fff}.app-content{margin-top:18px}@media(max-width:700px){.brand-wordmark-image{max-height:62px}}.panel{background:var(--surface);border:1px solid var(--surface-border);border-radius:20px;padding:18px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.panel h2{margin-top:0}.action-row{margin-top:14px;display:flex;flex-wrap:wrap;gap:10px}.segmented-row{margin:12px 0;display:flex;flex-wrap:wrap;gap:8px}.btn-primary,.btn-secondary,.btn-ghost,.btn-danger{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:12px;padding:10px 14px;font-size:.95rem;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .12s ease,opacity .12s ease}.btn-primary{background:var(--accent-main);color:#fff}.btn-primary:hover,.btn-secondary:hover,.btn-ghost:hover,.btn-danger:hover{transform:translateY(-1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #f2a93b;outline-offset:2px}.btn-primary:disabled{opacity:.45;cursor:default;transform:none}.btn-secondary{background:#e7f3ef;border-color:#c5ddd5;color:var(--text-primary)}.btn-secondary.is-active{background:var(--accent-main-dark);border-color:var(--accent-main-dark);color:#fff}.btn-ghost{background:#fff;border-color:#bdd7cf;color:var(--text-primary)}.btn-danger{background:#fff0f0;border-color:#f0c3c3;color:var(--danger)}.inline-form,.settings-form{display:grid;gap:8px;margin:10px 0 6px;max-width:420px}.inline-form input,.settings-form input,.settings-form select{border:1px solid #b8d4cb;border-radius:10px;padding:10px;font-size:1rem;background:#fff}.error-text{color:var(--danger);font-weight:700}.status-line{margin:10px 0;color:var(--text-muted)}.settings-feature-flag-row{margin:14px 0;padding:14px;border:1px solid #d8e8e2;border-radius:14px;background:#f9fcfb}.active-user-inline{margin:8px 0 12px;color:#1c5f52;font-weight:700}.profile-card{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;border-radius:16px;background:linear-gradient(145deg,#fff,#f9fafb);border:2px solid #e5e7eb;box-shadow:0 2px 8px #0000000a;transition:all .2s ease;margin-bottom:12px}.profile-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000014;border-color:var(--role-color, #10b981)}.profile-card.is-active{border-color:var(--role-color, #10b981);background:linear-gradient(145deg,#10b9810d,#10b9811a);box-shadow:0 4px 16px #10b98126}.profile-card-main{display:flex;align-items:center;gap:16px;flex:1}.profile-card-avatar{width:64px;height:64px;border-radius:16px;background:linear-gradient(145deg,#f3f4f6,#e5e7eb);display:grid;place-items:center;font-size:2rem;box-shadow:inset 0 2px 4px #ffffff80;flex-shrink:0}.profile-card-info{display:grid;gap:4px}.profile-card-name{margin:0;font-size:1.2rem;font-weight:800;color:#1f2937}.profile-card-date{margin:0;font-size:.85rem;color:#6b7280}.profile-activity-summary{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0;padding:8px 12px;background:linear-gradient(145deg,#f9fafb,#f3f4f6);border-radius:10px;border:1px solid #e5e7eb}.activity-item{font-size:.8rem;font-weight:600;color:#4b5563;white-space:nowrap}.profile-card-role{display:inline-block;padding:4px 12px;border-radius:999px;font-size:.85rem;font-weight:700;margin-top:4px}.profile-card-actions{display:flex;gap:8px;align-items:center}.btn-profile{padding:10px 16px;border-radius:12px;font-weight:700;font-size:.9rem;border:2px solid transparent;background:linear-gradient(145deg,#f3f4f6,#e5e7eb);color:#374151;cursor:pointer;transition:all .15s ease}.btn-profile:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.btn-profile.is-active{background:linear-gradient(145deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b9814d}.btn-profile.btn-train{background:linear-gradient(145deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f64d}.btn-profile.btn-train:hover{background:linear-gradient(145deg,#2563eb,#1d4ed8);box-shadow:0 6px 16px #3b82f666}.btn-profile.btn-save-role{background:linear-gradient(145deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b9814d;padding:6px 12px;font-size:.85rem}.btn-profile.btn-save-role:hover{background:linear-gradient(145deg,#059669,#047857);box-shadow:0 6px 16px #10b98166}.profile-role-editor{display:flex;align-items:center;gap:8px;margin-top:4px}.profile-role-select{padding:6px 10px;border-radius:8px;border:2px solid #e5e7eb;background:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .15s ease}.profile-role-select:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f633}.btn-profile-action{min-width:44px;height:44px;display:grid;place-items:center;font-size:1.2rem;padding:0}.profiles-control-panel{margin:16px 0;padding:16px;background:linear-gradient(145deg,#f9fafb,#f3f4f6);border-radius:16px;border:2px solid #e5e7eb;display:grid;gap:12px}.profiles-search-row{display:flex}.profiles-search-input{width:100%;padding:12px 16px;border-radius:12px;border:2px solid #e5e7eb;font-size:1rem;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.profiles-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.profiles-filters-row,.profiles-sort-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-label{font-size:.9rem;font-weight:700;color:#6b7280;white-space:nowrap}.profiles-role-filters,.profiles-sort-buttons{display:flex;gap:8px;flex-wrap:wrap}.filter-chip,.sort-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:2px solid #e5e7eb;background:#fff;color:#4b5563;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .15s ease}.filter-chip:hover,.sort-btn:hover{border-color:#3b82f6;background:#eff6ff;transform:translateY(-1px)}.filter-chip.is-active,.sort-btn.is-active{background:linear-gradient(145deg,#3b82f6,#2563eb);border-color:#1d4ed8;color:#fff;box-shadow:0 4px 12px #3b82f64d}.chip-count{background:#0000001a;padding:2px 8px;border-radius:999px;font-size:.8rem;font-weight:700}.filter-chip.is-active .chip-count,.sort-btn.is-active .chip-count{background:#fff3;color:#fff}.profiles-stats-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:12px;border:2px solid #e5e7eb}.stats-info{font-size:.95rem;color:#4b5563;font-weight:600}.stats-info strong{color:#1f2937}.stats-filter{margin-left:8px;color:#6b7280;font-weight:500}.btn-clear-filters{padding:8px 14px;font-size:.9rem}.active-profile-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(145deg,#d1fae5,#a7f3d0);border:2px solid #10b981;border-radius:12px;font-weight:600;color:#065f46}.banner-icon{font-size:1.2rem}@media(max-width:768px){.profiles-control-panel{padding:12px}.profiles-filters-row,.profiles-sort-row{flex-direction:column;align-items:flex-start}.filter-label{margin-bottom:4px}.profiles-stats-row{flex-direction:column;gap:12px;align-items:flex-start}.profile-card{flex-direction:column;align-items:flex-start}.profile-card-actions{width:100%;justify-content:flex-end}.profile-card-avatar{width:56px;height:56px;font-size:1.7rem}.profiles-grid{grid-template-columns:1fr}}.profiles-grid{display:grid;gap:12px;margin:16px 0}.class-dashboard-widget{padding:20px;background:linear-gradient(135deg,#1e7f710d,#ffd16614);border-radius:16px;border:1px solid rgba(30,127,113,.12);margin-bottom:20px}.class-dashboard-header{margin-bottom:16px}.class-dashboard-header h3{margin:0 0 8px;font-size:1.5rem;color:var(--text-primary)}.class-dashboard-subtitle{margin:0;font-size:.95rem;color:var(--text-muted)}.class-dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.class-stat-card{display:flex;align-items:center;gap:12px;padding:16px;background:#ffffffe6;border-radius:12px;border:1px solid rgba(30,127,113,.08);transition:transform .2s ease,box-shadow .2s ease}.class-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #1e7f711f}.class-stat-icon{font-size:2rem;line-height:1}.class-stat-card strong{display:block;font-size:1.1rem;color:var(--text-primary);margin-bottom:4px}.class-stat-card span{display:block;font-size:.85rem;color:var(--text-muted);line-height:1.3}.class-activity-heatmap{padding:20px;background:#ffffffe6;border-radius:16px;border:1px solid rgba(30,127,113,.08);margin-bottom:20px}.heatmap-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.heatmap-header h4{margin:0;font-size:1.1rem;color:var(--text-primary)}.heatmap-stats{display:flex;gap:16px;flex-wrap:wrap}.heatmap-stat{font-size:.9rem;color:var(--text-muted)}.heatmap-stat strong{color:var(--text-primary);font-weight:600}.heatmap-container{display:flex;gap:4px;overflow-x:auto;padding-bottom:8px}.heatmap-weekdays{display:flex;flex-direction:column;gap:3px;padding-top:20px}.weekday-cell{width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:var(--text-muted);font-weight:500}.heatmap-grid{display:flex;gap:3px}.heatmap-week{display:flex;flex-direction:column;gap:3px}.heatmap-cell{width:16px;height:16px;border-radius:3px;background:#ebedf0;transition:transform .15s ease,box-shadow .15s ease;cursor:pointer}.heatmap-cell:hover{transform:scale(1.2);box-shadow:0 2px 8px #00000026;z-index:1}.heatmap-cell-empty{visibility:hidden}.heatmap-level-0{background:#ebedf0}.heatmap-level-1{background:#9be9a8}.heatmap-level-2{background:#40c463}.heatmap-level-3{background:#30a14e}.heatmap-level-4{background:#216e39}.heatmap-legend{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:12px;font-size:.75rem;color:var(--text-muted)}.legend-cells{display:flex;gap:3px}.legend-cell{width:16px;height:16px;border-radius:3px}.class-top-students{padding:20px;background:#ffffffe6;border-radius:16px;border:1px solid rgba(30,127,113,.08);margin-bottom:20px}.class-top-students h4{margin:0 0 16px;font-size:1.1rem;color:var(--text-primary)}.top-students-list{display:flex;flex-direction:column;gap:12px}.top-student-item{display:flex;align-items:center;gap:12px;padding:12px;background:linear-gradient(135deg,#fffffff2,#f8fafce6);border-radius:12px;border:1px solid rgba(30,127,113,.06);transition:transform .2s ease,box-shadow .2s ease}.top-student-item:hover{transform:translate(4px);box-shadow:0 4px 12px #1e7f711a}.top-student-1{border-color:#eab3084d;background:linear-gradient(135deg,#eab3080d,#fffffff2)}.top-student-2{border-color:#94a3b84d;background:linear-gradient(135deg,#94a3b80d,#fffffff2)}.top-student-3{border-color:#ea78534d;background:linear-gradient(135deg,#ea78530d,#fffffff2)}.top-student-rank{width:32px;display:flex;align-items:center;justify-content:center}.top-student-rank .medal{font-size:1.5rem;line-height:1}.top-student-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent-main),#2dd4bf);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}.top-student-info{flex:1;min-width:0}.top-student-name{font-weight:600;color:var(--text-primary);font-size:.95rem;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-student-stats{display:flex;gap:12px;font-size:.85rem;color:var(--text-muted)}.top-student-stats .stat-level,.top-student-stats .stat-xp{display:flex;align-items:center;gap:4px;white-space:nowrap}.top-students-more{margin:12px 0 0;font-size:.85rem;color:var(--text-muted);text-align:center}.challenge-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.challenge-modal{background:#fff;border-radius:16px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.challenge-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(30,127,113,.1)}.challenge-modal .modal-header h3{margin:0;font-size:1.3rem;color:var(--text-primary)}.challenge-modal .modal-close{background:none;border:none;font-size:2rem;color:var(--text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:background .2s ease}.challenge-modal .modal-close:hover{background:#1e7f711a}.challenge-modal .modal-body{padding:20px}.challenge-modal .form-group{margin-bottom:20px}.challenge-modal .form-group label{display:block;font-weight:600;color:var(--text-primary);margin-bottom:8px;font-size:.95rem}.challenge-modal .form-group select{width:100%;padding:10px 12px;border:2px solid rgba(30,127,113,.2);border-radius:8px;font-size:.95rem;background:#fff;cursor:pointer;transition:border-color .2s ease}.challenge-modal .form-group select:focus{outline:none;border-color:var(--accent-main)}.mode-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.mode-option{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:#f8fafccc;border:2px solid rgba(30,127,113,.15);border-radius:12px;cursor:pointer;transition:all .2s ease}.mode-option:hover{background:#f8fafc;border-color:#1e7f714d;transform:translateY(-2px)}.mode-option.selected{background:#1e7f711a;border-color:var(--accent-main);box-shadow:0 0 0 3px #1e7f7126}.mode-icon{font-size:1.5rem}.mode-title{font-size:.85rem;color:var(--text-primary);text-align:center;font-weight:500}.challenge-info{padding:16px;background:#8b5cf60d;border-left:4px solid rgba(139,92,246,.4);border-radius:8px;margin-top:16px}.challenge-info p{margin:8px 0;font-size:.9rem;color:var(--text-muted);line-height:1.5}.challenge-info p:first-child{margin-top:0}.challenge-info p:last-child{margin-bottom:0}.challenge-modal .modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:20px;border-top:1px solid rgba(30,127,113,.1)}.classes-page{padding:24px}.classes-header{margin-bottom:24px}.classes-header h2{margin:0 0 8px;font-size:2rem;color:#1f2937}.classes-subtitle{margin:0;color:#6b7280;font-size:1rem}.classes-section{margin:24px 0;padding:20px;background:linear-gradient(145deg,#f9fafb,#f3f4f6);border-radius:16px;border:2px solid #e5e7eb}.classes-section h3{margin:0 0 16px;font-size:1.3rem;color:#1f2937}.classes-form{display:flex;gap:12px;margin-bottom:16px}.classes-input{flex:1;padding:12px 16px;border-radius:12px;border:2px solid #e5e7eb;font-size:1rem;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.classes-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.classes-select{width:100%;padding:12px 16px;border-radius:12px;border:2px solid #e5e7eb;font-size:1rem;background:#fff;margin-bottom:16px}.classes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.class-card{display:flex;align-items:center;gap:16px;padding:16px;background:#fff;border:2px solid #e5e7eb;border-radius:14px;cursor:pointer;transition:all .2s ease}.class-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a;border-color:#3b82f6}.class-card.is-selected{background:linear-gradient(145deg,#eff6ff,#dbeafe);border-color:#2563eb;box-shadow:0 4px 16px #2563eb33}.class-card-icon{font-size:2.5rem;line-height:1}.class-card-info{flex:1}.class-card-name{margin:0 0 4px;font-size:1.1rem;font-weight:800;color:#1f2937}.class-card-meta{margin:0;font-size:.85rem;color:#6b7280}.class-card-actions{display:flex;gap:8px}.btn-icon{width:36px;height:36px;border-radius:10px;border:none;background:#f3f4f6;font-size:1.2rem;cursor:pointer;transition:all .15s ease;display:grid;place-items:center}.btn-icon:hover{transform:scale(1.1);background:#e5e7eb}.btn-icon.btn-danger:hover{background:#fee2e2}.class-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.class-header h3{margin:0;font-size:1.3rem;color:#1f2937}.class-actions{display:flex;gap:8px;flex-wrap:wrap}.students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.student-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:2px solid #e5e7eb;border-radius:12px;transition:all .15s ease}.student-card:hover{border-color:#10b981;box-shadow:0 4px 12px #10b98126}.student-avatar{width:48px;height:48px;border-radius:12px;background:linear-gradient(145deg,#f3f4f6,#e5e7eb);display:grid;place-items:center;font-size:1.5rem;flex-shrink:0}.student-info{flex:1}.student-name{margin:0 0 4px;font-size:1rem;font-weight:700;color:#1f2937}.student-meta{margin:0;font-size:.85rem;color:#6b7280}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:grid;place-items:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:16px;padding:24px;max-width:500px;width:100%;max-height:90vh;overflow:auto}.modal-content h3{margin:0 0 16px;font-size:1.3rem;color:#1f2937}.bulk-textarea{width:100%;padding:12px;border-radius:12px;border:2px solid #e5e7eb;font-size:1rem;font-family:inherit;resize:vertical;margin-bottom:16px}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border:2px solid #e5e7eb;border-radius:14px;box-shadow:0 2px 8px #0000000a}.stat-card-icon{font-size:2.5rem;line-height:1}.stat-card-content{display:grid;gap:4px}.stat-card-value{font-size:1.8rem;font-weight:900;color:#1f2937}.stat-card-label{font-size:.9rem;color:#6b7280;font-weight:600}.top-students{margin-top:24px;padding:20px;background:linear-gradient(145deg,#fff,#f9fafb);border:2px solid #e5e7eb;border-radius:14px}.top-students h4{margin:0 0 16px;font-size:1.2rem;color:#1f2937}.top-list{display:grid;gap:12px}.top-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:2px solid #e5e7eb;border-radius:12px;transition:all .15s ease}.top-item:hover{border-color:#f59e0b;transform:translate(4px)}.top-rank{font-size:1.2rem;font-weight:900;color:#f59e0b;min-width:40px}.top-name{flex:1;font-weight:700;color:#1f2937}.top-sessions{font-size:.9rem;color:#6b7280;font-weight:600}.student-card.is-selected{background:linear-gradient(145deg,#eff6ff,#dbeafe);border-color:#2563eb;box-shadow:0 4px 16px #2563eb33}.student-checkbox{width:20px;height:20px;cursor:pointer;accent-color:#3b82f6}.btn-danger{background:linear-gradient(145deg,#ef4444,#dc2626);color:#fff;border:none;padding:10px 16px;border-radius:12px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .15s ease}.btn-danger:hover{transform:translateY(-1px);box-shadow:0 6px 16px #ef44444d}.status-line.success{color:#059669;background:#d1fae5;padding:12px 16px;border-radius:12px;border:2px solid #10b981;font-weight:600}.status-line.error{color:#dc2626;background:#fee2e2;padding:12px 16px;border-radius:12px;border:2px solid #ef4444;font-weight:600}@media(max-width:768px){.classes-page{padding:16px}.classes-grid,.students-grid{grid-template-columns:1fr}.class-header{flex-direction:column;align-items:flex-start}.class-actions{width:100%}.class-actions button{flex:1}}.avatar-selector{position:relative;display:inline-block}.avatar-selector-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;background:linear-gradient(145deg,#f3f4f6,#e5e7eb);border:2px solid #d1d5db;cursor:pointer;transition:all .15s ease;font-size:1.2rem}.avatar-selector-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a;border-color:#9ca3af}.avatar-preview{font-size:1.5rem;line-height:1}.avatar-arrow{font-size:.9rem;color:#6b7280;font-weight:700}.avatar-selector-dropdown{position:absolute;top:100%;right:0;margin-top:8px;padding:12px;background:#fff;border:2px solid #e5e7eb;border-radius:16px;box-shadow:0 8px 24px #0000001f;z-index:100;animation:avatar-dropdown-appear .2s ease}@keyframes avatar-dropdown-appear{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.avatar-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}.avatar-option{width:44px;height:44px;border-radius:12px;background:linear-gradient(145deg,#f9fafb,#f3f4f6);border:2px solid #e5e7eb;font-size:1.5rem;cursor:pointer;transition:all .15s ease;display:grid;place-items:center}.avatar-option:hover{transform:scale(1.1);border-color:#3b82f6;box-shadow:0 4px 12px #3b82f633}.avatar-option.is-selected{background:linear-gradient(145deg,#3b82f6,#2563eb);border-color:#1d4ed8;box-shadow:0 4px 12px #3b82f666}@media(max-width:600px){.stats-summary-hero,.stats-compare-quick-header{flex-direction:column}.stats-summary-badge{white-space:normal;width:100%}.avatar-grid{grid-template-columns:repeat(6,1fr)}.avatar-selector-dropdown{right:auto;left:0}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:12px 0 16px}.stats-grid.compact{margin-bottom:0}.stats-page-intro{margin:0;max-width:56ch;color:var(--text-muted)}.stats-page-flow{display:flex;flex-direction:column}.stats-skill-profile{order:5;border:1px solid #cfe2dc;background:radial-gradient(circle at top left,rgba(47,183,167,.12),transparent 30%),linear-gradient(180deg,#f8fcfb,#eef7f4)}.stats-skill-profile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.stats-skill-profile-head h3{margin-bottom:6px}.stats-skill-profile-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.stats-skill-profile-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#ffffffdb;border:1px solid rgba(25,87,78,.12);color:#24524b;font-size:.85rem;font-weight:700}.stats-skill-profile-layout{display:grid;grid-template-columns:minmax(280px,1.2fr) minmax(240px,.8fr);gap:16px;margin-top:16px}.stats-skill-radar-shell{min-height:320px;border:1px solid #d7e9e3;background:#ffffffe0}.stats-skill-profile-side{display:grid;gap:12px}.stats-skill-focus-card{display:grid;gap:6px;padding:18px;border-radius:18px;border:1px solid rgba(15,118,110,.12);background:#ffffffe6}.stats-skill-focus-card.is-focus{background:linear-gradient(180deg,#fff7e0f5,#fffcf3f5);border-color:#f59e0b2e}.stats-skill-focus-label{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#5b716b}.stats-skill-focus-card strong{font-size:1.18rem;color:#173f39}.stats-skill-focus-card p,.stats-skill-focus-meta{margin:0;color:#4b6c66}.stats-skill-focus-meta{font-size:.88rem;font-weight:700}.stats-skill-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:16px}.stats-skill-card{display:grid;gap:10px;padding:16px;border-radius:18px;border:1px solid #d9e8e3;background:#ffffffeb}.stats-skill-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.stats-skill-card-head h4,.stats-skill-card-kicker,.stats-skill-card-desc,.stats-skill-card-note,.stats-skill-card-hint{margin:0}.stats-skill-card-kicker{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64827a}.stats-skill-card-level{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#0f766e1a;color:#0f766e;font-size:.82rem;font-weight:800}.stats-skill-card-desc,.stats-skill-card-note,.stats-skill-card-hint{color:#4b6b64;line-height:1.45}.stats-skill-card-score{display:flex;align-items:center;justify-content:space-between;gap:10px}.stats-skill-card-score strong{font-size:1.25rem;color:#173f39}.stats-skill-card-trend{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:.78rem;font-weight:800}.stats-skill-card-trend.is-up{background:#e9f9f1;color:#16734a}.stats-skill-card-trend.is-down{background:#fff3e8;color:#b15c00}.stats-skill-card-trend.is-steady{background:#eff4f8;color:#4a647d}.stats-skill-card-track{position:relative;overflow:hidden;height:10px;border-radius:999px;background:linear-gradient(180deg,#d0e2dbeb,#bad4cbeb)}.stats-skill-card-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2fb7a7,#0f766e);box-shadow:0 0 16px #0f766e33}.stats-growth-plan{order:6;border:1px solid #d9e6e2;background:radial-gradient(circle at top right,rgba(250,204,21,.1),transparent 28%),linear-gradient(180deg,#fffdf8,#f5f8f7)}.stats-growth-plan-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.stats-growth-plan-head h3{margin-bottom:6px}.stats-growth-plan-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.stats-growth-plan-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;border:1px solid rgba(24,76,68,.12);background:#ffffffeb;color:#264f48;font-size:.84rem;font-weight:700}.stats-growth-plan-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:16px}.stats-growth-plan-card{display:grid;gap:8px;padding:18px;border-radius:18px;border:1px solid rgba(24,76,68,.1);background:#ffffffe6}.stats-growth-plan-card.is-accent{background:linear-gradient(180deg,#f3fcf9f5,#fffffff5);border-color:#0f766e29}.stats-growth-plan-label{font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#698178}.stats-growth-plan-card strong,.stats-growth-plan-step h4{margin:0;color:#173f39}.stats-growth-plan-card p,.stats-growth-plan-step-title,.stats-growth-plan-step-note,.stats-growth-plan-footer p{margin:0;color:#4b6b64;line-height:1.48}.stats-growth-plan-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:16px}.stats-growth-plan-step{display:grid;gap:10px;padding:16px;border-radius:18px;border:1px solid #dde8e4;background:#fffffff0}.stats-growth-plan-step.is-focus{box-shadow:inset 0 0 0 1px #0f766e14}.stats-growth-plan-step.is-support{background:linear-gradient(180deg,#f6fafffa,#fffffff5)}.stats-growth-plan-step.is-maintain{background:linear-gradient(180deg,#f1fbf5fa,#fffffff5)}.stats-growth-plan-step.is-checkpoint{background:linear-gradient(180deg,#fffaecfa,#fffffff5)}.stats-growth-plan-step-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.stats-growth-plan-step-day{font-size:.82rem;font-weight:800;color:#274d47}.stats-growth-plan-step-tone{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:.74rem;font-weight:800}.stats-growth-plan-step-tone.is-focus{background:#0f766e1a;color:#0f766e}.stats-growth-plan-step-tone.is-support{background:#3b82f61a;color:#2256b2}.stats-growth-plan-step-tone.is-maintain{background:#22c55e1f;color:#1b7f43}.stats-growth-plan-step-tone.is-checkpoint{background:#f59e0b24;color:#a86400}.stats-growth-plan-step-title{font-weight:700;color:#234740}.stats-growth-plan-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px}.stats-growth-plan-action{flex-shrink:0;min-height:42px}@media(max-width:900px){.stats-skill-profile-head,.stats-growth-plan-head,.stats-growth-plan-footer,.stats-skill-card-score{flex-direction:column;align-items:flex-start}.stats-skill-profile-layout{grid-template-columns:1fr}.stats-skill-profile-pills,.stats-growth-plan-pills{justify-content:flex-start}}.stats-summary-block{order:10;border:1px solid #cfe4dc;background:linear-gradient(180deg,#f7fcfa,#eef8f4)}.stats-summary-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.stats-summary-copy{display:grid;gap:6px}.stats-summary-eyebrow,.stats-section-kicker{margin:0;color:#1c5f52;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.stats-summary-lead{margin:0;color:var(--text-muted)}.stats-summary-badge{margin:0;padding:10px 14px;border-radius:999px;font-weight:800;white-space:nowrap;background:#eef2f7;color:#31506f}.stats-summary-badge.is-positive{background:#e6f7ef;color:#146c43}.stats-summary-badge.is-warning{background:#fff2e8;color:#b25c00}.stats-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:16px}.stats-summary-card{border:1px solid #d8e6e0;border-radius:16px;background:#ffffffeb;padding:14px 16px}.stats-summary-card-label,.stats-summary-next-label{margin:0;color:var(--text-muted);font-size:.85rem;font-weight:700}.stats-summary-card-value{margin:6px 0;color:var(--text-primary);font-size:1.05rem;font-weight:800;line-height:1.35}.stats-summary-card-hint{margin:0;color:var(--text-muted);font-size:.88rem;line-height:1.4}.stats-summary-next-step{margin-top:14px;border-radius:14px;background:#1e7f7114;padding:14px 16px}.stats-summary-next-step p:last-child{margin:6px 0 0;color:var(--text-primary);font-weight:600}.stats-chart-primary{order:20}.stats-compare-quick{order:30}.stats-compare-quick-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.stats-compare-quick-copy{display:grid;gap:6px}.stats-controls-panel{order:40;background:#f8fbfa}.stats-controls-row{margin:10px 0 0}.stats-controls-panel .btn-secondary{padding:8px 12px;font-size:.88rem}.stats-flow-details{order:50}.stats-compare-details{order:60}.stats-flow-secondary{order:70}.stats-secondary-block{opacity:.92;border-style:dashed}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.sprint-compare-grid{align-items:stretch}.sprint-mode-card{display:grid;gap:4px;align-content:start}.sprint-mode-line{margin:0;color:var(--text-primary);font-size:.92rem;font-weight:600}.comparison-note{margin:8px 0 0;color:var(--text-muted);font-size:.94rem}.leaderboard-list{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:8px}.leaderboard-item{border:1px solid #cfe4dc;border-radius:12px;background:#fff;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.leaderboard-item.is-active-user{border-color:#1e7f71;background:#edf8f4}.leaderboard-main{display:flex;align-items:center;gap:10px}.leaderboard-rank{font-weight:800;color:#1c5f52}.leaderboard-name{font-weight:700}.leaderboard-metrics{display:flex;align-items:baseline;gap:8px}.leaderboard-score{font-weight:800}.leaderboard-sessions{color:var(--text-muted);font-size:.88rem}.fixture-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.fixture-grid input{border:1px solid #b8d4cb;border-radius:10px;padding:10px;font-size:1rem;background:#fff}.benchmark-report{margin-top:10px;padding:10px;border-radius:10px;border:1px solid #cfe4dc;background:#f8fcfa;color:var(--text-primary);font-size:.88rem;line-height:1.45;overflow:auto}.stat-card{border-radius:14px;border:1px solid #cfe4dc;background:#fff;padding:10px}.stat-card-title{margin:0;color:var(--text-muted)}.stat-card-value{margin:6px 0 0;font-size:1.35rem;font-weight:800}.schulte-grid{display:grid;width:min(90vw,560px);min-width:min(96vw,300px);max-width:100%;aspect-ratio:1 / 1;margin:0 auto;grid-template-columns:repeat(var(--grid-size, 5),1fr);grid-auto-rows:1fr;gap:clamp(4px,1vmin,12px);padding:clamp(6px,1.5vmin,12px);border-radius:16px;background:var(--schulte-board-bg, #f8fcfa);border:2px solid #cfe4dc;box-shadow:0 4px 12px #145b5314,inset 0 0 0 1px #fff6;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.grid-cell{min-height:56px;height:100%;display:grid;place-items:center;padding:0;border-radius:14px;border:2px solid #c8dfd6;background:var(--schulte-cell-bg, #ffffff);color:var(--schulte-number-color, var(--text-primary));font-size:var(--schulte-number-size, clamp(1.3rem, 3vmin, 2rem));font-weight:var(--schulte-number-weight, 900);font-family:var( --schulte-number-font, "Trebuchet MS", "Segoe UI", sans-serif );-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff73}.grid-cell-value{position:relative;z-index:1;display:block;line-height:1;font-variant-numeric:lining-nums tabular-nums;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-shadow:none}.grid-cell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,rgba(30,127,113,.08) 0%,transparent 70%);opacity:0;transition:opacity .15s ease}.grid-cell:hover:enabled:before{opacity:1}.grid-cell:hover:enabled{border-color:var(--accent-main);box-shadow:0 4px 12px #1e7f712e,inset 0 1px #fff9}.grid-cell:active:enabled{box-shadow:inset 0 2px 6px #145b531f,0 2px 6px #145b5314}.grid-cell.highlighted{border-color:var(--schulte-highlight-color, #f59e0b);box-shadow:0 0 0 4px color-mix(in srgb,var(--schulte-highlight-color, #f59e0b) 25%,transparent),0 4px 12px #f59e0b4d;animation:highlighted-pulse 2s ease-in-out infinite}@keyframes highlighted-pulse{0%,to{box-shadow:0 0 0 4px color-mix(in srgb,var(--schulte-highlight-color, #f59e0b) 25%,transparent),0 4px 12px #f59e0b4d}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--schulte-highlight-color, #f59e0b) 15%,transparent),0 6px 16px #f59e0b66}}.grid-cell.flash-correct{border-color:var(--schulte-success-color, #10b981);box-shadow:0 0 0 4px color-mix(in srgb,var(--schulte-success-color, #10b981) 30%,transparent),0 6px 16px #10b98166;background:linear-gradient(145deg,#d1fae5,#a7f3d0);animation:correct-pop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes correct-pop{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.grid-cell.flash-error{border-color:var(--schulte-error-color, #ef4444);box-shadow:0 0 0 4px color-mix(in srgb,var(--schulte-error-color, #ef4444) 30%,transparent),0 6px 16px #ef444466;background:linear-gradient(145deg,#fee2e2,#fecaca);animation:error-shake .4s cubic-bezier(.36,.07,.19,.97)}@keyframes error-shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}.grid-cell:disabled{cursor:default;opacity:.6;transform:none}.grid-cell.is-empty{border-style:dashed;opacity:.35;cursor:default;background:transparent}@media(max-width:480px){.schulte-grid{gap:clamp(3px,.8vmin,8px);padding:clamp(4px,1vmin,8px);border-radius:12px}.grid-cell{min-height:48px;border-radius:10px;font-size:var(--schulte-number-size, clamp(1.1rem, 2.8vmin, 1.6rem))}}@media(hover:none){.grid-cell:hover:enabled{border-color:#c8dfd6}.grid-cell:active:enabled{box-shadow:inset 0 2px 6px #145b531f,0 2px 6px #145b5314}}.schulte-grid[data-theme-id=kid_candy],.schulte-grid[data-theme-id=kid_ocean],.schulte-grid[data-theme-id=kid_space],.schulte-grid[data-theme-id=kid_comics]{--schulte-number-font: ui-rounded, "Trebuchet MS", "Segoe UI", sans-serif;--schulte-number-weight: 900;--schulte-number-size: clamp(1.22rem, 3.1vmin, 2.1rem)}.schulte-grid[data-theme-id=kid_candy] .grid-cell,.schulte-grid[data-theme-id=kid_comics] .grid-cell{text-shadow:0 1px 0 rgba(0,0,0,.12)}.schulte-grid[data-theme-id=kid_space] .grid-cell{border-color:#ffffff2e;text-shadow:0 0 10px rgba(138,92,255,.25)}.schulte-grid[data-theme-id=contrast]{border-color:#29303a;box-shadow:0 10px 24px #00000042,inset 0 0 0 1px #ffffff0a}.schulte-grid[data-theme-id=contrast] .grid-cell{border-color:#36404d}.schulte-grid[data-theme-id=contrast] .grid-cell:hover:enabled{border-color:#ffd166}.schulte-quick-theme-panel{margin:14px 0;padding:14px 16px;border:1px solid #d5e4de;border-radius:16px;background:linear-gradient(180deg,#ffffffeb,#f4f9f7eb)}.schulte-quick-theme-panel .status-line{margin-bottom:0}.sprint-math-hud{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 20px}.sprint-math-timer{display:flex;flex-direction:column;align-items:center;padding:16px 20px;border-radius:16px;background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border:2px solid rgba(245,158,11,.2);box-shadow:0 4px 12px #f59e0b26}.sprint-math-timer-label{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#8b6914;margin-bottom:4px}.sprint-math-timer-value{font-size:clamp(1.8rem,4vmin,2.5rem);font-weight:900;color:#f59e0b;line-height:1;font-variant-numeric:tabular-nums}.sprint-math-streak{display:flex;flex-direction:column;align-items:center;padding:16px 20px;border-radius:16px;background:linear-gradient(135deg,#ef44441a,#ef44440d);border:2px solid rgba(239,68,68,.2);box-shadow:0 4px 12px #ef444426;position:relative;overflow:hidden}.sprint-math-streak:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,rgba(239,68,68,.08) 0%,transparent 70%);animation:streak-pulse 2s ease-in-out infinite}@keyframes streak-pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.15);opacity:1}}.sprint-math-streak-icon{font-size:clamp(1.5rem,3vmin,2rem);margin-bottom:4px;position:relative;z-index:1;animation:streak-icon-bounce .6s cubic-bezier(.34,1.56,.64,1) infinite}@keyframes streak-icon-bounce{0%,to{transform:scale(1) rotate(-5deg)}50%{transform:scale(1.2) rotate(5deg)}}.sprint-math-streak-value{font-size:clamp(1.8rem,4vmin,2.5rem);font-weight:900;color:#dc2626;line-height:1;position:relative;z-index:1}.sprint-math-problem-section{margin:24px 0;padding:24px;border-radius:20px;background:linear-gradient(145deg,#fff,#f9fafb);border:2px solid #e5e7eb;box-shadow:0 4px 16px #0000000f}.sprint-math-problem-display{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px 24px;margin-bottom:20px;border-radius:16px;background:linear-gradient(135deg,#7c3aed0d,#7c3aed05);border:2px solid rgba(124,58,237,.15)}.sprint-math-problem-expression{font-size:clamp(2rem,5vmin,3rem);font-weight:900;color:#1f2937;font-variant-numeric:tabular-nums;letter-spacing:.02em}.sprint-math-problem-equals{font-size:clamp(2rem,5vmin,3rem);font-weight:900;color:#6b7280}.sprint-math-problem-question{font-size:clamp(2.5rem,6vmin,3.5rem);font-weight:900;color:var(--accent-main, #1e7f71);text-shadow:0 2px 8px rgba(30,127,113,.2);animation:question-pulse 2s ease-in-out infinite}@keyframes question-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.sprint-math-form{display:flex;gap:12px;max-width:480px;margin:0 auto}.sprint-math-form input{flex:1;padding:16px 20px;border-radius:14px;border:2px solid #d1d5db;font-size:clamp(1.3rem,3vmin,1.8rem);font-weight:700;text-align:center;background:#fff;transition:all .2s ease}.sprint-math-form input:focus{outline:none;border-color:var(--accent-main);box-shadow:0 0 0 4px #1e7f7126}.sprint-math-form input.is-correct{border-color:#10b981;background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;animation:input-correct .3s cubic-bezier(.34,1.56,.64,1)}@keyframes input-correct{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.sprint-math-form input.is-error{border-color:#ef4444;background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;animation:input-error .4s cubic-bezier(.36,.07,.19,.97)}@keyframes input-error{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-6px)}20%,40%,60%,80%{transform:translate(6px)}}.sprint-math-submit-btn{padding:16px 28px;font-size:1.1rem;font-weight:800;white-space:nowrap}.sprint-math-feedback{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;margin-top:16px;border-radius:12px;font-weight:700;animation:feedback-slide-in .3s ease-out}@keyframes feedback-slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.sprint-math-feedback-correct{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981;color:#065f46}.sprint-math-feedback-error{background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #ef4444;color:#991b1b}.sprint-math-feedback .feedback-icon{font-size:1.5rem;font-weight:900;display:grid;place-items:center;width:32px;height:32px;border-radius:50%}.sprint-math-feedback-correct .feedback-icon{background:#10b981;color:#fff}.sprint-math-feedback-error .feedback-icon{background:#ef4444;color:#fff}.sprint-math-feedback .feedback-text{font-size:1.1rem}.sprint-math-feedback-error .feedback-content{display:grid;gap:2px}.sprint-math-feedback-error .feedback-correct-answer{font-size:.9rem;font-weight:600}@media(max-width:480px){.sprint-math-hud{grid-template-columns:1fr 1fr;gap:8px}.sprint-math-timer,.sprint-math-streak{padding:12px 16px}.sprint-math-problem-section{padding:16px}.sprint-math-problem-display{padding:16px;gap:8px}.sprint-math-form{flex-direction:column}.sprint-math-submit-btn{width:100%}}.result-box{margin-top:14px;border:1px solid #c8dfd6;border-radius:20px;background:linear-gradient(180deg,#fff,#f7fbfa);padding:18px;position:relative;display:grid;gap:14px;box-shadow:0 12px 28px #145b530f;animation:result-slide-in .4s cubic-bezier(.34,1.56,.64,1)}@keyframes result-slide-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.level-up-banner{display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:16px;background:linear-gradient(135deg,#f59e0b26,#f59e0b14);border:2px solid rgba(245,158,11,.3);box-shadow:0 4px 16px #f59e0b33;animation:level-up-pop .5s cubic-bezier(.34,1.56,.64,1)}@keyframes level-up-pop{0%{transform:scale(.9);opacity:0}50%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}.level-up-banner-icon{font-size:2.5rem;animation:star-spin 1s ease-in-out infinite}@keyframes star-spin{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-10deg) scale(1.1)}75%{transform:rotate(10deg) scale(1.1)}}.level-up-banner-content{display:grid;gap:2px}.level-up-banner-title{font-size:1.1rem;font-weight:900;color:#92400e}.level-up-banner-subtitle{font-size:.9rem;font-weight:700;color:#b45309}.xp-gain-display{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:14px;background:linear-gradient(135deg,#8b5cf626,#8b5cf614);border:2px solid rgba(139,92,246,.3);box-shadow:0 4px 16px #8b5cf633;animation:xp-slide-in .4s ease-out .2s both}@keyframes xp-slide-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.xp-gain-content{display:flex;align-items:center;gap:10px}.xp-gain-icon{font-size:1.8rem;animation:lightning-pulse 1s ease-in-out infinite}@keyframes lightning-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.15);opacity:.8}}.xp-gain-label{font-size:.85rem;font-weight:700;color:#6b21a8}.xp-gain-value{font-size:clamp(1.5rem,4vmin,2rem);font-weight:900;color:#7c3aed;text-shadow:0 2px 8px rgba(124,58,237,.3)}.achievement-unlocked-display{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:14px;background:linear-gradient(135deg,#10b98126,#10b98114);border:2px solid rgba(16,185,129,.3);box-shadow:0 4px 16px #10b98133;animation:achievement-slide-in .4s ease-out .3s both}@keyframes achievement-slide-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.achievement-unlocked-icon{font-size:2rem;animation:trophy-bounce .6s cubic-bezier(.34,1.56,.64,1) infinite}@keyframes trophy-bounce{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-4px) rotate(-5deg)}75%{transform:translateY(-4px) rotate(5deg)}}.achievement-unlocked-content{display:grid;gap:2px}.achievement-unlocked-title{font-size:.95rem;font-weight:800;color:#065f46;text-transform:uppercase;letter-spacing:.05em}.achievement-unlocked-name{font-size:.9rem;font-weight:700;color:#047857}.result-summary-metric.has-trend{position:relative;padding-right:36px}.metric-trend-icon{position:absolute;top:12px;right:12px;font-size:1.2rem;font-weight:900;width:28px;height:28px;display:grid;place-items:center;border-radius:50%}.result-summary-metric.is-up .metric-trend-icon{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.result-summary-metric.is-down .metric-trend-icon{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.result-summary-metric.is-neutral .metric-trend-icon{background:linear-gradient(135deg,#e5e7eb,#d1d5db);color:#6b7280}.result-box h3{margin:0}.result-summary-head{display:flex;justify-content:space-between;align-items:start;gap:14px}.result-summary-copy{display:grid;gap:6px;min-width:0}.result-summary-kicker{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#6c8c84;font-weight:800}.result-summary-highlight{display:grid;gap:2px;min-width:132px;padding:12px 14px;border-radius:16px;background:#145b530f;border:1px solid rgba(20,91,83,.1);text-align:right}.result-summary-highlight span{font-size:.76rem;color:#64847d;font-weight:700}.result-summary-highlight strong{font-size:1.2rem;color:#143b36}.result-summary-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.result-summary-metric{display:grid;gap:6px;padding:12px 14px;border-radius:16px;background:#ffffffd6;border:1px solid rgba(20,91,83,.08)}.result-summary-metric span,.result-summary-metric strong{margin:0}.result-summary-metric span{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:#67857e;font-weight:700}.result-summary-metric strong{font-size:1rem;color:#143b36}.result-summary-insights{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.result-summary-card,.result-summary-next-step,.result-summary-save,.result-summary-notes{display:grid;gap:8px;padding:14px 15px;border-radius:18px;background:#ffffffbd;border:1px solid rgba(20,91,83,.08)}.result-summary-card.is-accent{background:linear-gradient(180deg,#145b5314,#ffffffeb)}.result-summary-card-label{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:#67857e;font-weight:800}.result-summary-card p,.result-summary-next-step p,.result-summary-save p,.result-summary-notes p{margin:0}.result-summary-next-step{background:linear-gradient(180deg,#145b5314,#ffffffeb)}.result-summary-save{align-items:start}.result-summary-save-state{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#eef6f3;color:#2f5e56;font-size:.78rem;font-weight:800}.result-summary-save-text{color:#3e645d}.result-summary-notes{background:#ffffff85}.result-summary-actions{margin-top:2px}@media(max-width:700px){.result-summary-head{flex-direction:column}.result-summary-highlight{width:100%;text-align:left}.result-summary-metrics,.result-summary-insights{grid-template-columns:1fr}}.level-up-banner{display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,#ffd166,#fbbf24);border-radius:12px;margin-bottom:16px;animation:level-up-banner-pulse 2s ease-in-out infinite}@keyframes level-up-banner-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.level-up-banner-icon{font-size:40px;animation:level-up-star-spin 1s ease-in-out infinite}@keyframes level-up-star-spin{0%,to{transform:rotate(0)}50%{transform:rotate(180deg)}}.level-up-banner-content{display:flex;flex-direction:column}.level-up-banner-title{font-size:18px;font-weight:700;color:#fff}.level-up-banner-subtitle{font-size:14px;color:#ffffffe6}.xp-gain-display{display:flex;align-items:center;gap:8px;padding:12px;background:linear-gradient(135deg,#1e7f71,#2d9d8a);border-radius:10px;margin-bottom:16px}.xp-gain-icon{font-size:24px;animation:xp-gain-bounce .5s ease-in-out}@keyframes xp-gain-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.xp-gain-value{font-size:20px;font-weight:700;color:#fff}.achievement-unlocked-display{display:flex;align-items:center;gap:12px;padding:14px;background:linear-gradient(135deg,#06d6a0,#04a87a);border-radius:12px;margin-bottom:16px}.achievement-unlocked-icon{font-size:32px;animation:achievement-unlocked-bounce .6s ease-in-out}@keyframes achievement-unlocked-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.achievement-unlocked-content{display:flex;flex-direction:column}.achievement-unlocked-title{font-size:14px;font-weight:600;color:#fff}.achievement-unlocked-name{font-size:16px;font-weight:700;color:#fff}.chart-box{margin-top:14px;border:1px solid #d3e6de;border-radius:14px;background:#fff;padding:10px}.today-progress{margin-top:14px;border:1px solid #d3e6de;border-radius:14px;background:#f6fbf9;padding:12px}.today-progress h3{margin:0 0 8px}.motivation-card{margin-top:14px;border:1px solid #d3e6de;border-radius:14px;background:#f6fbf9;padding:12px}.motivation-card h3{margin:0 0 8px}.challenge-card{margin-top:14px;border:1px solid #d3e6de;border-radius:14px;background:#f6fbf9;padding:12px}.challenge-headline{display:flex;align-items:center;justify-content:space-between;gap:8px}.challenge-headline h3{margin:0}.challenge-title{margin:8px 0 4px;font-weight:800;color:#1c5f52}.challenge-progress{margin:8px 0 10px;font-weight:700;color:#1c5f52}.challenge-explanation{margin:10px 0 6px;border:1px dashed #bddbd1;border-radius:12px;padding:10px;background:#fff}.challenge-note{margin-top:0}.challenge-schedule-list{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:6px}.challenge-schedule-item{display:flex;justify-content:space-between;align-items:center;gap:8px;border-radius:10px;border:1px solid #d5e8e1;background:#f8fcfa;padding:8px 10px}.challenge-schedule-item.is-today{border-color:#9ad3c1;background:#ecf8f3}.challenge-schedule-day{font-size:.86rem;font-weight:700;color:#1f6659}.challenge-schedule-mode{font-size:.9rem;font-weight:700;color:#163f39}.challenge-history-list{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:8px}.challenge-history-item{border:1px solid #d5e8e1;border-radius:10px;background:#f8fcfa;padding:8px 10px;display:flex;justify-content:space-between;align-items:center;gap:10px}.challenge-history-main{display:grid;gap:2px}.challenge-history-date{font-size:.84rem;color:var(--text-muted)}.challenge-history-mode{font-weight:700;color:#163f39}.challenge-history-side{display:grid;justify-items:end;gap:4px}.challenge-history-attempts{font-size:.84rem;color:var(--text-muted)}.challenge-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:.82rem;font-weight:700;border:1px solid #c7ddd5;color:#1f6659;background:#fff}.challenge-status.is-complete{border-color:#b8e2d1;background:#e9f7f0;color:#1a7155}.streak-headline{display:flex;align-items:center;gap:10px}.streak-badge{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:1.25rem;background:#fff;border:1px solid #c6dfd6}.mini-goals-list{margin-top:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.mini-goal-item{border:1px solid #cfe4dc;border-radius:12px;padding:10px;background:#fff}.mini-goal-item h4{margin:0 0 6px;font-size:.95rem}.mini-goal-item p{margin:0;color:var(--text-muted);font-size:.9rem}.mini-goal-progress{margin-top:8px!important;color:#1c5f52!important;font-weight:700}.mini-goal-item.is-complete{border-color:#bfe2d4;background:#edf8f4}.active-player-card{margin-top:12px;border:1px solid #c6dfd6;border-radius:14px;padding:10px 12px;background:linear-gradient(135deg,#edf8f4,#f6fbf9)}.active-player-label{margin:0;color:var(--text-muted);font-size:.9rem}.active-player-name{margin:4px 0 0;font-size:1.4rem;font-weight:800;color:var(--accent-main-dark)}.progress-track{width:100%;height:10px;border-radius:999px;background:#dfeee8;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#1e7f71,#44a688 60%,#f2a93b);transition:width .25s ease}.training-hub-hero{padding:24px;border-radius:24px;background:linear-gradient(135deg,#7c3aed,#9f67ff,#7c3aed);color:#fff;box-shadow:0 8px 32px #7c3aed4d;margin-bottom:24px}.training-hub-hero-content{display:grid;gap:8px}.training-hub-title{margin:0;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:900;letter-spacing:-.02em;display:flex;align-items:center;gap:12px}.training-hub-subtitle{margin:0;font-size:1.1rem;opacity:.95;font-weight:500}.training-modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:24px 0}.training-module-card.is-featured{position:relative;background:radial-gradient(circle at top right,color-mix(in srgb,var(--card-color, #1e7f71) 14%,transparent),transparent 36%),linear-gradient(180deg,color-mix(in srgb,var(--card-color, #1e7f71) 10%,white),#fff);border-color:color-mix(in srgb,var(--card-color, #1e7f71) 32%,white);box-shadow:0 20px 36px color-mix(in srgb,var(--card-color, #1e7f71) 10%,transparent),0 10px 22px #145b5314}.training-module-card.is-featured:before{content:"";position:absolute;top:0;left:18px;right:18px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--card-color, #1e7f71) 0%,color-mix(in srgb,var(--card-color, #1e7f71) 38%,white) 100%)}.training-module-card.is-featured:hover{box-shadow:0 24px 42px color-mix(in srgb,var(--card-color, #1e7f71) 15%,transparent),0 12px 26px #145b531a}.training-modules-grid-secondary .training-module-card{background:linear-gradient(180deg,#f9fcfb,#f3f8f6);border-color:#145b5314;box-shadow:0 6px 16px #145b530a}.training-module-card.is-featured .module-card-icon{width:68px;height:68px;border-radius:20px;box-shadow:0 14px 26px color-mix(in srgb,var(--card-color, #1e7f71) 22%,transparent)}.training-modules-grid-secondary .training-module-card .module-card-icon{width:56px;height:56px;border-radius:16px;box-shadow:0 8px 18px #145b531a}.module-card-content{flex:1;display:flex;flex-direction:column;gap:8px}.module-card-priority{display:inline-flex;align-self:flex-start;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--card-color, #1e7f71) 14%,white);color:var(--card-color, #1e7f71);font-size:.76rem;font-weight:800;letter-spacing:.01em}.training-module-card.is-featured .module-card-title{font-size:1.2rem}.training-module-card.is-featured .module-card-cta{padding:10px 14px;border-radius:12px;background:color-mix(in srgb,var(--card-color, #1e7f71) 12%,white);box-shadow:inset 0 1px #ffffffa6}.module-card-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:.85rem;font-weight:700}.module-card-badge.locked{background:#fef3c7;color:#92400e;border:2px solid #fcd34d}.training-quick-actions{margin-top:32px;padding-top:24px;border-top:2px solid #e5e7eb}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:16px}.quick-action-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px;border-radius:16px;background:linear-gradient(135deg,#f0fdf9,#ecfdf5);border:2px solid #a7f3d0;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.quick-action-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0000001a;border-color:#1e7f71}.quick-action-icon{font-size:2.5rem;margin-bottom:8px}.quick-action-title{font-size:1rem;font-weight:800;color:#143b36;margin-bottom:4px}.quick-action-desc{font-size:.85rem;color:#43635e}@media(max-width:700px){.training-hub-panel{padding:16px}.training-hub-hero{padding:20px;text-align:center}.training-hub-title{justify-content:center}.training-modules-grid,.quick-actions-grid{grid-template-columns:1fr}}.setup-block{margin-top:14px;border:1px solid #cfe4dc;border-radius:14px;padding:12px;background:#fff}.setup-block h3{margin-top:0}.info-hint{margin-top:12px;border:1px solid #cfe4dc;border-radius:12px;background:#f7fcfa}.info-hint-summary{list-style:none;cursor:pointer;padding:10px 12px;display:inline-flex;align-items:center;gap:8px;font-weight:700}.info-hint-icon{width:20px;height:20px;border-radius:999px;display:inline-grid;place-items:center;background:#1e7f71;color:#fff;font-size:.8rem;line-height:1}.info-hint-body{padding:0 12px 12px;color:var(--text-muted)}.info-hint-body p{margin:6px 0 0}.reaction-arena{margin-top:14px;border:1px solid #cfe4dc;border-radius:16px;background:linear-gradient(160deg,#f7fcfa,#eef7f3);padding:20px 14px;display:flex;flex-direction:column;align-items:center}.reaction-arena-title{margin:0;text-align:center}.reaction-live-timer{margin:8px 0 0;font-weight:700;color:#1c5f52;text-align:center}.reaction-status{margin-top:6px;text-align:center}.reaction-pad{margin:16px auto 0;width:min(92vw,560px);min-height:300px;border-radius:16px;border:2px solid #c7ddd5;background:linear-gradient(160deg,#f8fcfa,#eff7f3);color:#1c5f52;font-size:clamp(1.3rem,3vw,2rem);font-weight:800;cursor:pointer;transition:transform .12s ease,border-color .12s ease;display:grid;place-items:center;position:relative}.reaction-pad:hover{transform:translateY(-1px)}.reaction-pad.is-waiting{border-color:#d5c18f;background:linear-gradient(160deg,#fff8e8,#f9efd3);color:#715323}.reaction-pad.is-ready{border-color:#1e7f71;background:linear-gradient(160deg,#e8faf4,#d7f2e9);color:#0e5a4e}.reaction-variant-row{margin-top:6px}.reaction-challenge{margin-top:10px}.reaction-challenge-title{margin:0 0 12px;font-size:1.06rem}.reaction-options-grid{width:min(92vw,560px);max-width:100%;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reaction-option-btn{min-height:120px;border-radius:16px;border:2px solid #c8dfd6;background:#fff;color:#1c5f52;font-size:1.25rem;font-weight:800;cursor:pointer;transition:transform .12s ease,border-color .12s ease;display:grid;place-items:center;gap:4px;padding:10px;position:relative;overflow:hidden}.reaction-option-btn[data-has-color=true]{background:linear-gradient(135deg,#fffffff2,#f0f8ffe6);border-width:3px}.reaction-option-btn:hover{transform:translateY(-1px);border-color:#1e7f71}.reaction-round-progress{margin:16px auto;width:min(92vw,560px);display:flex;align-items:center;gap:12px}.reaction-round-progress-track{flex:1;height:10px;border-radius:999px;background:#145b531f;overflow:hidden}.reaction-round-progress-fill{height:100%;background:linear-gradient(90deg,#1e7f71,#4ab892);border-radius:999px;transition:width .3s ease}.reaction-round-progress-label{min-width:60px;font-size:.88rem;font-weight:700;color:#1c5f52;text-align:right}.reaction-new-record{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;margin:12px auto;width:fit-content;border-radius:999px;background:linear-gradient(135deg,#f2c14e,#e8a83a);color:#fff;font-weight:900;font-size:1.06rem;animation:reaction-record-pop .5s ease-out;box-shadow:0 6px 16px #f2c14e66}.reaction-new-record-icon{font-size:1.4rem}@keyframes reaction-record-pop{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.reaction-combo-indicator{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;margin:10px auto;width:fit-content;border-radius:999px;background:linear-gradient(135deg,#ff6b6b,#ee5a5a);color:#fff;font-weight:900;font-size:1.2rem;animation:reaction-combo-pulse .6s ease-out;box-shadow:0 6px 16px #ff6b6b66}.reaction-combo-fire{font-size:1.4rem;animation:reaction-fire-flicker .8s ease-in-out infinite}.reaction-combo-count{font-size:1.4rem}@keyframes reaction-combo-pulse{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}@keyframes reaction-fire-flicker{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.reaction-time-display{display:flex;flex-direction:column;align-items:center;padding:12px 18px;margin:12px auto;border-radius:14px;font-weight:800;animation:reaction-time-slide .3s ease-out;max-width:fit-content}.reaction-time-display.is-excellent{background:linear-gradient(135deg,#71c77d,#4ab892);color:#fff;box-shadow:0 6px 16px #4ab89266}.reaction-time-display.is-good{background:linear-gradient(135deg,#4ecdc4,#2ba884);color:#fff;box-shadow:0 6px 16px #4ecdc466}.reaction-time-display.is-average{background:linear-gradient(135deg,#f2c14e,#e8a83a);color:#fff;box-shadow:0 6px 16px #f2c14e4d}.reaction-time-display.is-slow{background:linear-gradient(135deg,#ff9f7f,#ff6b6b);color:#fff;box-shadow:0 6px 16px #ff9f7f4d}.reaction-time-value{font-size:1.5rem;line-height:1}.reaction-time-label{font-size:.82rem;opacity:.95;margin-top:4px}@keyframes reaction-time-slide{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.reaction-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.reaction-result-stat{display:flex;flex-direction:column;padding:12px;border-radius:12px;background:#145b530f;border:1px solid rgba(20,91,83,.12)}.reaction-result-stat-label{font-size:.76rem;color:#52726b;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.reaction-result-stat-value{font-size:1.25rem;color:#1c5f52;margin-top:4px}.reaction-personal-best{display:flex;flex-direction:column;align-items:center;padding:14px 20px;margin:12px 0;border-radius:14px;background:linear-gradient(135deg,#f2c14e,#e8a83a);color:#fff;box-shadow:0 6px 16px #f2c14e59}.reaction-personal-best-label{font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;opacity:.95}.reaction-personal-best-value{font-size:2rem;font-weight:900;line-height:1;margin-top:4px}.reaction-attempts-chart{margin:20px 0 16px;padding:16px;border-radius:14px;background:#145b530d;border:1px solid rgba(20,91,83,.12)}.reaction-attempts-chart h4{margin:0 0 14px;font-size:.95rem;color:#1c5f52}.reaction-chart-bars{display:flex;align-items:flex-end;justify-content:space-around;gap:8px;height:120px;padding:0 8px}.reaction-chart-column{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1}.reaction-chart-bar{width:100%;max-width:40px;background:linear-gradient(180deg,#4ab892,#2ba884);border-radius:6px 6px 0 0;transition:height .4s ease;box-shadow:0 2px 6px #2ba8844d}.reaction-chart-bar.is-best{background:linear-gradient(180deg,#f2c14e,#e8a83a);box-shadow:0 2px 8px #f2c14e73}.reaction-chart-label{font-size:.76rem;font-weight:700;color:#52726b}.reaction-comparison-note{padding:12px 14px;margin:14px 0;border-radius:12px;background:linear-gradient(135deg,#4ab8921f,#2ba88414);border:1px solid rgba(20,91,83,.14)}.reaction-comparison-note p{margin:0;font-size:.92rem;color:#1c5f52;font-weight:600}@media(max-width:640px){.reaction-result-grid{grid-template-columns:repeat(2,1fr)}.reaction-chart-bars{height:100px}.reaction-personal-best-value{font-size:1.6rem}}.reaction-control-row{display:flex;justify-content:center;margin:16px 0 10px}.reaction-start-btn{min-width:280px;padding:14px 28px;font-size:1.06rem;font-weight:800}.reaction-start-btn:disabled{opacity:.6;cursor:not-allowed}.reaction-footer{display:flex;justify-content:center;margin-top:20px;padding-top:16px;border-top:1px solid #d9e8e3}.reaction-footer .btn-ghost{color:#52726b;text-decoration:none;font-weight:700;transition:color .15s ease}.reaction-footer .btn-ghost:hover{color:#1c5f52}.reaction-option-main{font-size:clamp(1.15rem,2.8vw,1.7rem);line-height:1.1}.reaction-option-color-indicator{position:absolute;top:0;left:0;right:0;height:6px;border-radius:14px 14px 0 0}.reaction-option-secondary{font-size:1.1rem;color:#43635e}.nback-grid{width:min(92vw,420px);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:10px;border-radius:16px;background:#f7fcfa;border:2px solid #c8dfd6}.nback-cell{aspect-ratio:1 / 1;border-radius:14px;border:2px solid #c8dfd6;background:transparent;display:grid;place-items:center;font-size:clamp(1.5rem,4vw,2.2rem);font-weight:900;color:#1c5f52;transition:all .2s ease;position:relative;overflow:hidden}.nback-cell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,rgba(255,255,255,.4) 0%,transparent 70%);opacity:0;transition:opacity .2s ease}.nback-cell.is-active:before{opacity:1}.nback-cell.is-active{border-color:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 30%,transparent),0 4px 12px #00000026;transform:scale(1.05)}.nback-cell-content{animation:cell-pop .3s ease}@keyframes cell-pop{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.nback-session-panel{padding:20px;max-width:600px;margin:0 auto}.nback-header{margin-bottom:16px}.nback-header-top h2{margin:0 0 4px;font-size:1.8rem;color:#143b36}.nback-subtitle{margin:0;color:#43635e;font-size:.95rem;font-weight:600}.nback-session-progress{display:flex;align-items:center;gap:10px;margin-top:12px}.nback-progress-bar{flex:1;height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden}.nback-progress-fill{height:100%;background:linear-gradient(90deg,#1e7f71,#44a688);transition:width .3s ease}.nback-progress-text{font-size:.9rem;font-weight:700;color:#1e7f71;min-width:40px}.nback-stats-row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:16px}.nback-stat-card{background:#f7fcfa;border:2px solid #e5e7eb;border-radius:12px;padding:10px 8px;text-align:center;display:flex;flex-direction:column;gap:4px;min-width:80px}.nback-stat-card-action{background:transparent;border:none;padding:0}.nback-btn-start-small{width:100%;height:100%;min-height:68px;padding:8px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:12px;font-weight:800;cursor:pointer;transition:all .15s ease;box-shadow:0 4px 14px #3b82f64d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.nback-btn-start-small:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.nback-btn-start-small:active{transform:translateY(1px)}.nback-stat-label{font-size:.75rem;color:#43635e;font-weight:600;text-transform:uppercase}.nback-stat-value{font-size:1.3rem;font-weight:900;color:#143b36}.nback-stat-value.success{color:#059669}.nback-stat-value.error{color:#dc2626}.nback-stat-value.combo{color:#f59e0b}.nback-instruction{text-align:center;padding:14px;margin-bottom:16px;border-radius:14px;font-size:1.1rem;font-weight:700;transition:all .3s ease}.nback-instruction.showing{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border:2px solid #93c5fd}.nback-instruction.answering{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:2px solid #fcd34d}.nback-game-section{margin:20px 0}.nback-step-progress{margin-top:14px}.nback-step-progress-bar{height:6px;border-radius:999px;background:#e5e7eb;overflow:hidden;margin-bottom:6px}.nback-step-progress-fill{height:100%;transition:width .05s linear}.nback-step-progress-fill.stimulus{background:linear-gradient(90deg,#1e7f71,#44a688)}.nback-step-progress-fill.pause{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.nback-step-progress-text{font-size:.8rem;font-weight:700;color:#43635e;text-align:center;display:block}.nback-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:24px;align-items:center}.nback-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:20px 24px;border:none;border-radius:16px;font-weight:800;font-size:1.05rem;cursor:pointer;transition:all .15s ease;box-shadow:0 4px 14px #00000026;min-height:100px}.nback-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.nback-btn:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003}.nback-btn:not(:disabled):active{transform:translateY(1px)}.nback-btn-icon{font-size:1.8rem;line-height:1}.nback-btn-text{font-size:.95rem;line-height:1.2}.nback-btn-no{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.nback-btn-no.active{background:linear-gradient(135deg,#b91c1c,#991b1b);box-shadow:0 0 0 4px #dc26264d,0 6px 20px #dc262666}.nback-btn-start{background:linear-gradient(135deg,#10b981,#059669);color:#fff;min-width:120px}.nback-btn-start:hover{background:linear-gradient(135deg,#059669,#047857)}.nback-btn-yes{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.nback-btn-yes.active{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 0 0 4px #10b9814d,0 6px 20px #10b98166}.nback-answer-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:2rem;font-weight:900;animation:mark-pop .3s ease}.nback-answer-mark.correct{color:#059669;text-shadow:0 0 10px rgba(5,150,105,.5)}.nback-answer-mark.wrong{color:#dc2626;text-shadow:0 0 10px rgba(220,38,38,.5)}@keyframes mark-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.3)}to{transform:scale(1);opacity:1}}@media(max-width:500px){.nback-stats-row{grid-template-columns:repeat(2,1fr)}.nback-stat-card-action{grid-column:span 2}.nback-btn-start-small{min-height:60px}.nback-controls{grid-template-columns:1fr 1fr;gap:12px}.nback-btn{min-height:90px;padding:16px 20px}.nback-btn-icon{font-size:1.6rem}.nback-btn-text{font-size:.9rem}}.memory-grid-session-panel{padding:24px;max-width:600px;margin:0 auto}.memory-grid-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:20px;border-radius:20px;background:linear-gradient(135deg,#ec4899,#f472b6);color:#fff;box-shadow:0 8px 32px #ec48994d}.memory-grid-header-content{display:grid;gap:4px;flex:1}.memory-grid-title{margin:0;font-size:1.8rem;font-weight:900;display:flex;align-items:center;gap:10px}.memory-grid-subtitle{margin:0;font-size:.95rem;opacity:.95;font-weight:600}.memory-grid-rush-timer{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff3;border-radius:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.timer-value{font-size:1.1rem;font-weight:800}.memory-grid-phase-indicator{text-align:center;padding:16px;margin:16px 0;border-radius:16px;font-size:1.15rem;font-weight:800;transition:all .3s ease;border:2px solid transparent}.memory-grid-phase-indicator.intro{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#374151;border-color:#d1d5db}.memory-grid-phase-indicator.showing{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border-color:#93c5fd;animation:pulse-blue 2s ease-in-out infinite}@keyframes pulse-blue{0%,to{box-shadow:0 0 #3b82f666}50%{box-shadow:0 0 0 10px #3b82f600}}.memory-grid-phase-indicator.recalling{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-color:#fcd34d;animation:pulse-yellow 2s ease-in-out infinite}@keyframes pulse-yellow{0%,to{box-shadow:0 0 #f59e0b66}50%{box-shadow:0 0 0 10px #f59e0b00}}.memory-grid-phase-indicator.finished{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border-color:#34d399}.memory-grid-section{margin:20px 0}.memory-grid{width:min(92vw,420px);margin:0 auto;padding:12px;border-radius:16px;background:linear-gradient(160deg,#f7fcfa,#eef7f3);border:2px solid #c8dfd6;box-shadow:inset 0 2px 8px #0000000d;min-height:min(92vw,420px)}.memory-grid-cell{aspect-ratio:1 / 1;border-radius:12px;border:2px solid #d1d5db;background:linear-gradient(145deg,#f9fafb,#f3f4f6);display:grid;place-items:center;font-size:clamp(1.5rem,4vw,2.2rem);font-weight:900;color:#6b7280;transition:all .2s ease;position:relative;overflow:hidden;min-height:60px;box-shadow:inset 0 1px 2px #fffc,0 2px 4px #0000000d}.memory-grid-cell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#fffc,#fff0 50%);border-radius:12px;z-index:0;pointer-events:none}.memory-grid-cell>*{position:relative;z-index:1}.memory-grid-cell.is-active{background:linear-gradient(145deg,#60a5fa,#3b82f6);border-color:#2563eb;box-shadow:inset 0 1px 2px #ffffff4d,0 4px 12px #3b82f64d;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.memory-grid-cell.is-active:before{background:linear-gradient(180deg,#fff3,#fff0 50%)}.memory-grid-cell.is-active:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;background:linear-gradient(145deg,#60a5fa80,#3b82f64d);border-radius:8px;z-index:0}.memory-grid-cell.is-selected{opacity:.7;transform:scale(.98)}.memory-grid-cell.is-wrong{background:linear-gradient(145deg,#fecaca,#fca5a5)!important;border-color:#f87171!important;box-shadow:0 4px 12px #f8717140!important}.memory-grid-cell.is-correct{background:linear-gradient(145deg,#a7f3d0,#6ee7b7)!important;border-color:#34d399!important;box-shadow:0 4px 12px #34d39940!important}.memory-grid-cell.is-hint{background:linear-gradient(145deg,#bfdbfe,#93c5fd)!important;border-color:#60a5fa!important;transition:opacity .1s ease,background-color .2s ease}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.memory-grid-hud{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 20px}.memory-grid-level-indicator,.memory-grid-sequence-info,.memory-grid-streak{display:flex;flex-direction:column;align-items:center;padding:12px 16px;border-radius:14px;background:linear-gradient(145deg,#fff,#f9fafb);border:2px solid #e5e7eb;box-shadow:0 2px 8px #0000000a}.memory-grid-hud .hud-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;margin-bottom:4px}.memory-grid-hud .hud-value{font-size:clamp(1.3rem,3vmin,1.8rem);font-weight:900;color:#1f2937;line-height:1}.memory-grid-hud .hud-sublabel{font-size:.65rem;font-weight:600;color:#9ca3af;margin-top:2px}.memory-grid-hud .hud-icon{font-size:1.2rem;margin-bottom:2px}.memory-grid-streak{background:linear-gradient(145deg,#10b98114,#10b9810a);border-color:#10b98133}.memory-grid-streak .hud-value{color:#10b981}.memory-grid-phase-indicator{display:flex;align-items:center;justify-content:center;padding:14px 20px;margin:16px 0;border-radius:14px;font-weight:700;font-size:.95rem;text-align:center;animation:phase-slide-in .3s ease-out}@keyframes phase-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.memory-grid-phase-indicator.intro{background:linear-gradient(135deg,#3b82f61a,#3b82f60d);border:2px solid rgba(59,130,246,.2);color:#2563eb}.memory-grid-phase-indicator.showing{background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border:2px solid rgba(245,158,11,.2);color:#f59e0b;animation:phase-pulse 1.5s ease-in-out infinite}@keyframes phase-pulse{0%,to{box-shadow:0 4px 12px #f59e0b26}50%{box-shadow:0 6px 16px #f59e0b40}}.memory-grid-phase-indicator.recalling{background:linear-gradient(135deg,#10b9811a,#10b9810d);border:2px solid rgba(16,185,129,.2);color:#10b981}.memory-grid-phase-indicator.finished{background:linear-gradient(135deg,#8b5cf61a,#8b5cf60d);border:2px solid rgba(139,92,246,.2);color:#8b5cf6}.memory-grid{gap:clamp(6px,1.5vmin,12px);padding:clamp(8px,2vmin,14px);box-shadow:0 4px 16px #00000014,inset 0 0 0 1px #ffffff80}.memory-grid-cell{border-radius:14px;border:2px solid #d1d5db;background:linear-gradient(145deg,#fff,#f9fafb);box-shadow:inset 0 1px 3px #ffffffe6,0 2px 6px #0000000f;transition:transform .2s cubic-bezier(.34,1.56,.64,1),border-color .2s ease,box-shadow .2s ease,background .2s ease;min-height:70px}.memory-grid-cell:before{background:linear-gradient(180deg,#ffffffe6,#fff0 50%)}.memory-grid-cell:hover:enabled{transform:scale(1.05);border-color:#3b82f6;box-shadow:inset 0 1px 3px #ffffffe6,0 4px 12px #3b82f633}.memory-grid-cell:active:enabled{transform:scale(.97)}.memory-grid-cell.is-active{background:linear-gradient(145deg,#60a5fa,#3b82f6);border-color:#2563eb;box-shadow:inset 0 1px 3px #ffffff4d,0 6px 16px #3b82f659;transform:scale(1.08);animation:cell-activate .25s cubic-bezier(.34,1.56,.64,1)}@keyframes cell-activate{0%{transform:scale(.95);opacity:.7}50%{transform:scale(1.1)}to{transform:scale(1.08);opacity:1}}.memory-grid-cell.is-selected{opacity:.8;transform:scale(.96);border-color:#9ca3af}.memory-grid-cell.is-wrong{animation:cell-error .4s cubic-bezier(.36,.07,.19,.97)}@keyframes cell-error{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.memory-grid-cell.is-correct{animation:cell-success .3s cubic-bezier(.34,1.56,.64,1)}@keyframes cell-success{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.memory-grid-showing-progress{margin:16px 0}.showing-progress-track{height:10px;border-radius:999px;background:#e5e7eb;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.showing-progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:999px;transition:width .08s linear;box-shadow:0 0 10px #3b82f666;position:relative}.showing-progress-fill:after{content:"";position:absolute;top:0;right:0;width:4px;height:100%;background:#fff9;animation:progress-shimmer 1s ease-in-out infinite}@keyframes progress-shimmer{0%,to{opacity:.4}50%{opacity:1}}.showing-progress-label{margin-top:8px;font-size:.85rem;font-weight:600;color:#6b7280;text-align:center}.memory-grid-rush-timer{display:flex;flex-direction:column;align-items:center;padding:12px 18px;border-radius:14px;background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border:2px solid rgba(245,158,11,.2);box-shadow:0 4px 12px #f59e0b26}.memory-grid-rush-timer .timer-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#92400e;margin-bottom:2px}.memory-grid-rush-timer .timer-value{font-size:clamp(1.3rem,3vmin,1.8rem);font-weight:900;color:#f59e0b;line-height:1;font-variant-numeric:tabular-nums}.memory-grid-progress-bar{height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden;margin-top:14px;box-shadow:inset 0 1px 3px #0000001a}.memory-grid-progress-fill{height:100%;background:linear-gradient(90deg,#1e7f71,#44a688);transition:width .05s linear;border-radius:999px}.memory-grid-session-panel .nback-controls{margin-top:24px}.memory-grid-session-panel .nback-btn-start{min-height:70px;font-size:1.1rem}@media(max-width:500px){.memory-grid-header{flex-direction:column;text-align:center;gap:12px}.memory-grid-header-content{width:100%}.memory-grid-title{justify-content:center;font-size:1.5rem}.memory-grid-subtitle{text-align:center}.memory-grid-rush-timer{width:100%;justify-content:center}.memory-grid{width:min(96vw,360px)}.memory-grid-cell{min-height:50px}}.decision-arena{margin-top:14px;border:1px solid #cfe4dc;border-radius:16px;background:linear-gradient(160deg,#f7fcfa,#eef7f3);padding:16px;display:grid;gap:14px}.decision-session-progress{display:grid;gap:8px;margin-bottom:8px}.decision-session-progress-bar{width:100%;height:10px;border-radius:999px;background:#dbe8e3;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.decision-session-progress-fill{height:100%;background:linear-gradient(90deg,#1e7f71,#44a688,#f2a93b);transition:width .1s linear;border-radius:999px;box-shadow:0 0 10px #1e7f7166}.decision-phase-indicators{display:flex;justify-content:center;gap:12px;align-items:center}.decision-phase-dot{width:12px;height:12px;border-radius:50%;background:#cfd8d5;border:2px solid #a8b8b0;transition:all .3s ease}.decision-phase-dot.is-active{transform:scale(1.3)}.decision-phase-dot:nth-child(1).is-active{background:#3b82f6;border-color:#2563eb;box-shadow:0 0 10px #3b82f680}.decision-phase-dot:nth-child(2).is-active{background:#10b981;border-color:#059669;box-shadow:0 0 10px #10b98180}.decision-phase-dot:nth-child(3).is-active{background:#ef4444;border-color:#dc2626;box-shadow:0 0 10px #ef444480}.decision-control-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.decision-tempo-group{display:flex;flex-wrap:wrap;gap:8px}.decision-paused-banner{margin:0;padding:8px 10px;border:1px solid #f0cf8d;border-radius:10px;background:#fff7e5;color:#7a551c;font-weight:700}.decision-rule-box{border:1px solid #d8e9e2;border-radius:14px;background:#fff;padding:14px 16px;display:grid;gap:8px;text-align:center}.decision-rule-caption{margin:0;color:#2a6158;font-size:.92rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.decision-rule-main{margin:0;color:#103b35;font-size:clamp(1.1rem,3.2vw,1.55rem);font-weight:900;line-height:1.3}.decision-rule-help{margin:0;color:#3f6962;font-size:.95rem;font-weight:600}.decision-stimulus-card{border:2px solid #c7ddd5;border-radius:16px;background:#fff;padding:20px;display:grid;gap:14px;justify-items:center;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .2s ease;box-shadow:0 4px 16px #0000000f}.decision-stimulus-card.is-pending{border-color:#f2a93b;box-shadow:0 0 0 4px #f2a93b40,0 8px 24px #f2a93b33;animation:stimulus-pending-pulse 1s ease-in-out infinite}@keyframes stimulus-pending-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.decision-stimulus-card.is-correct{border-color:#10b981;background:linear-gradient(135deg,#d1fae5,#edf8f4);box-shadow:0 0 0 4px #10b98140,0 8px 24px #10b98133}.decision-stimulus-card.is-error{border-color:#ef4444;background:linear-gradient(135deg,#fee2e2,#fff2f2);box-shadow:0 0 0 4px #ef444440,0 8px 24px #ef444433}.decision-stimulus-main{margin:0;font-size:clamp(1.35rem,3.2vw,2.1rem);font-weight:900;letter-spacing:.02em}.decision-visual-main{display:grid;justify-items:center;gap:10px}.decision-shape{width:clamp(120px,28vw,180px);height:clamp(120px,28vw,180px);border:3px solid rgba(12,33,29,.24);display:grid;place-items:center;box-shadow:0 10px 24px #0e362f33,inset 0 0 0 2px #ffffff1a;transition:transform .2s ease}.decision-stimulus-card.is-correct .decision-shape{animation:shape-correct .4s cubic-bezier(.34,1.56,.64,1)}.decision-stimulus-card.is-error .decision-shape{animation:shape-error .4s cubic-bezier(.36,.07,.19,.97)}@keyframes shape-correct{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes shape-error{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-6px)}20%,40%,60%,80%{transform:translate(6px)}}.decision-shape-triangle{border:none}.decision-shape-number{font-size:clamp(1.8rem,4.5vw,2.5rem);font-weight:900;color:#f9fffd;text-shadow:0 2px 4px rgba(0,0,0,.4)}.decision-stimulus-note{margin:0;color:#3f6962;font-size:.9rem;font-weight:600;text-align:center;max-width:280px}.decision-stroop-display{display:grid;justify-items:center;gap:12px;padding:16px}.decision-stroop-word{font-size:clamp(2.5rem,6vw,4rem)!important;font-weight:900;text-shadow:0 3px 8px rgba(0,0,0,.3);letter-spacing:.05em;animation:stroop-word-appear .3s cubic-bezier(.34,1.56,.64,1)}@keyframes stroop-word-appear{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.decision-stroop-hint{margin:0;color:#5a7a72;font-size:.85rem;font-weight:600;text-align:center;line-height:1.4}.decision-stroop-hint strong{color:#2f5a52;font-weight:800}.decision-live-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.decision-live-meta .reaction-live-timer{margin:0}.decision-step-timer{min-width:min(320px,100%);display:grid;gap:4px}.decision-step-track{width:min(320px,100%);height:8px;border-radius:999px;background:#dbe8e3;overflow:hidden}.decision-step-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#1e7f71,#44a688 65%,#f2a93b);transition:width .05s linear}.decision-step-value{font-size:.85rem;color:#43635e;font-weight:700}.decision-last-answer{margin:0;font-weight:800}.decision-last-answer.is-correct{color:#1e7f71}.decision-last-answer.is-error{color:#b74343}.decision-last-answer.is-pending{color:#8a6525}.decision-answer-grid{width:min(100%,560px);margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.decision-answer-btn{min-height:80px;border-radius:16px;border:2px solid transparent;font-size:clamp(1.35rem,4vw,1.9rem);font-weight:900;cursor:pointer;transition:transform .15s cubic-bezier(.34,1.56,.64,1),filter .15s ease,box-shadow .15s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:12px 16px;position:relative;overflow:hidden}.decision-answer-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(255,255,255,.2) 0%,transparent 50%);opacity:0;transition:opacity .15s ease}.decision-answer-btn:hover:enabled:before{opacity:1}.decision-answer-btn:hover:enabled{transform:translateY(-3px);box-shadow:0 8px 20px #0003}.decision-answer-btn:active:enabled{transform:translateY(-1px) scale(.98)}.decision-answer-btn:disabled{opacity:.55;cursor:default;transform:none}.decision-answer-btn-yes{background:linear-gradient(160deg,#1e7f71,#2ca58f);color:#fff;box-shadow:0 4px 12px #1e7f714d}.decision-answer-btn-no{background:linear-gradient(160deg,#d05555,#b74343);color:#fff;box-shadow:0 4px 12px #b743434d}.decision-answer-btn.is-active{border-color:#f2a93b;box-shadow:0 0 0 4px #f2a93b4d,0 8px 24px #f2a93b66;animation:answer-pulse .3s cubic-bezier(.34,1.56,.64,1)}@keyframes answer-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.decision-answer-label{display:block;line-height:1}.decision-answer-keyboard-hint{display:flex;gap:6px;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;opacity:.9}.decision-answer-keyboard-hint kbd{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;border-radius:6px;background:#ffffff40;border:1px solid rgba(255,255,255,.4);font-family:inherit;font-size:.85rem;line-height:1;box-shadow:0 2px 4px #00000026}.decision-start-btn{min-width:200px}.release-list{display:grid;gap:10px}.release-card{border:1px solid #d3e6de;border-radius:12px;padding:10px 12px;background:#f9fcfb}.release-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.release-version{margin:0;font-weight:800}.release-date{margin:4px 0 0;color:var(--text-muted);font-size:.9rem}.release-title{margin:8px 0;font-weight:700}.release-badge{border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:700}.release-alpha{background:#fff4da;border:1px solid #edd9a8;color:#6b4d1f}.release-dev{background:#e8f0ff;border:1px solid #c4d7ff;color:#284a86}.release-stable{background:#edf8f4;border:1px solid #bfe2d4;color:#1c5f52}.theme-preview{margin-top:10px;border:2px solid #cfe4dc;border-radius:12px;min-height:56px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:1.3rem;font-weight:800}.bulk-textarea{border:1px solid #b8d4cb;border-radius:10px;padding:10px;font-size:1rem;background:#fff;resize:vertical}.session-brief{margin-top:14px;border:1px dashed #b7d3ca;border-radius:14px;padding:12px;background:#f8fcfa}.session-brief h3{margin-top:0}.home-panel{padding:20px 22px 18px}.home-hero{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:18px;align-items:stretch;padding:24px;border-radius:22px;background:linear-gradient(135deg,#1e7f71,#2d9d8a,#17655a);color:#fff;box-shadow:0 8px 32px #1e7f7140;margin-bottom:20px}.home-hero-content{display:flex;flex-direction:column;gap:10px;justify-content:center;min-width:0}.home-hero-summary{display:grid;align-content:start;gap:14px;padding:18px 20px;border-radius:20px;background:#07494138;border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px #ffffff14;min-width:0}.home-hero-summary-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.home-hero-summary-label{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#f7fffdd1}.home-hero-heading{display:block}.home-hero-kicker{margin:0;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.78}.home-hero-title{margin:0;font-size:2rem;line-height:1.02;font-weight:900}.home-hero-subtitle{margin:0;font-size:1rem;opacity:.95;font-weight:500;max-width:46ch}.home-hero-note{margin:0;font-size:.92rem;line-height:1.45;color:#f7fffde6;max-width:52ch}.home-hero-chip{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;background:#ffffff29;border:1px solid rgba(255,255,255,.18);color:#f7fffd;font-size:.84rem;font-weight:800;white-space:nowrap}.home-hero-status-row{display:flex;justify-content:flex-start;margin:0}.home-hero-progress{margin-top:0;max-width:none}.home-hero-progress-bar{height:10px;border-radius:999px;background:#ffffff29;overflow:hidden}.home-hero-progress-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffffffad,#ffd166 95%)}.home-hero-progress-meta{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:12px;margin-top:8px;font-size:.88rem;color:#f7fffdeb}.home-hero-progress-meta span{flex:1 1 240px;min-width:0}.home-hero-progress-meta strong{flex:0 0 auto;color:#fff;font-size:.95rem}.home-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:none}.hero-stat{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#ffffff1f;border:1px solid rgba(255,255,255,.08);border-radius:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-width:0}.hero-stat-icon{display:inline-flex;font-size:1.5rem}.hero-stat-content{display:grid;line-height:1.2;min-width:0}.hero-stat-value{font-size:clamp(1.28rem,2.4vw,1.5rem);font-weight:900;line-height:1}.hero-stat-label{font-size:.8rem;opacity:.85;overflow-wrap:anywhere}@media(max-width:1120px){.home-hero{grid-template-columns:1fr}.home-hero-summary{padding:18px}}.home-priority-grid{display:flex;flex-wrap:wrap;gap:16px;align-items:start;margin-bottom:18px}.home-priority-grid.is-single{display:block}.home-secondary-flow{display:grid;gap:18px}.home-secondary-flow .daily-training-widget,.home-secondary-flow .level-progress-widget,.home-secondary-flow .more-options{margin:0}.challenge-highlight{display:flex;flex-direction:column;flex:1.03 1 420px;align-self:start;padding:20px;border-radius:22px;background:radial-gradient(circle at top right,rgba(251,191,36,.22),transparent 30%),linear-gradient(145deg,#fff8e6,#fef1c2);border:1px solid rgba(245,158,11,.28);box-shadow:0 12px 28px #b372121f;position:relative;overflow:hidden}.challenge-highlight:before{content:"";position:absolute;right:-40px;bottom:-60px;width:180px;height:180px;border-radius:999px;background:radial-gradient(circle,#ffffff57,#fff0);pointer-events:none}.challenge-highlight-header{display:flex;align-items:center;gap:16px;margin-bottom:10px;position:relative}.challenge-highlight-icon{width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,#fbbf24,#f59e0b);display:grid;place-items:center;color:#fff;box-shadow:0 6px 20px #f59e0b66,inset 0 2px 4px #fff3;flex-shrink:0}.challenge-highlight-icon svg{width:46px;height:46px}.challenge-highlight-image{width:46px;height:46px;object-fit:contain;display:block}.challenge-highlight-info{flex:1}.challenge-highlight-title{margin:0;font-size:1.15rem;font-weight:800;color:#78350f}.challenge-highlight-subtitle{margin:4px 0 0;font-size:1.05rem;font-weight:700;line-height:1.35;color:#7c3f10}.challenge-badge,.challenge-badge-complete{padding:6px 14px;border-radius:999px;font-size:.85rem;font-weight:700}.challenge-badge{background:#fef3c7;color:#92400e;border:2px solid #fcd34d}.challenge-badge-complete{background:#d1fae5;color:#065f46;border:2px solid #34d399}.challenge-highlight-desc{margin:0 0 12px;color:#78350f;font-size:.96rem;line-height:1.45}.challenge-highlight-body{display:grid;gap:12px;flex:1 1 auto}.challenge-highlight-value{margin-bottom:12px;padding:12px 14px;border-radius:16px;background:#ffffff85;border:1px solid rgba(146,64,14,.12)}.challenge-highlight-value-label{display:block;margin-bottom:6px;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#9a5b16}.challenge-highlight-value p{margin:0;color:#6c360e;font-size:.95rem;line-height:1.45}.challenge-highlight-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.challenge-highlight-chip{display:inline-flex;align-items:center;min-height:32px;padding:6px 12px;border-radius:999px;background:#ffffff94;border:1px solid rgba(146,64,14,.12);color:#7c3f10;font-size:.82rem;font-weight:700}.challenge-highlight-chip.is-growth{background:#ffffffbd;border-color:#1e7f7138;color:#175e54}.challenge-highlight-growth{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:#12807217;border:1px solid rgba(18,128,114,.18);color:#175e54;font-size:.9rem;font-weight:700;line-height:1.45}.challenge-highlight-progress{display:grid;gap:8px}.challenge-progress-bar{height:10px;border-radius:999px;background:#0000001a;overflow:hidden;margin-bottom:6px}.challenge-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#f59e0b,#fbbf24);transition:width .4s ease}.challenge-progress-text{font-size:.9rem;font-weight:700;color:#92400e}.challenge-highlight-actions{display:flex;gap:12px;align-items:center}.challenge-highlight-footer{display:grid;grid-template-columns:1fr;gap:12px;align-items:start;margin-top:auto}.btn-challenge-primary,.btn-challenge-secondary{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:13px;font-size:1rem;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;border:none;justify-self:start}.btn-challenge-primary{background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#fff;box-shadow:0 4px 14px #f59e0b59}.btn-challenge-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b73}.btn-challenge-secondary{background:#fff;color:#92400e;border:2px solid #fcd34d}.btn-challenge-secondary:hover{transform:translateY(-2px);background:#fef3c7}.section-title{margin:0 0 16px;font-size:1.4rem;font-weight:800;color:#143b36;display:flex;align-items:center;gap:10px}.section-title-icon{display:inline-flex;color:#1e7f71}.home-skill-growth{display:flex;flex-direction:column;flex:.97 1 380px;align-self:start;margin-bottom:18px;padding:20px;border-radius:22px;border:1px solid #d8e8e2;background:radial-gradient(circle at top right,rgba(47,183,167,.12),transparent 32%),linear-gradient(180deg,#f8fcfb,#eef8f4);box-shadow:0 10px 28px #145b5314}.home-skill-growth-head{display:block}.home-skill-growth-heading{display:grid;gap:6px}.home-skill-growth-head h2,.home-skill-growth-lead,.home-skill-growth-card p,.home-skill-growth-card strong{margin:0}.home-skill-growth-head h2{color:#143b36;font-size:clamp(1.72rem,2.6vw,2.2rem);line-height:1.02}.home-skill-growth-lead{max-width:58ch;line-height:1.48;color:#41655f}.home-skill-growth-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.home-skill-growth-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:16px}.home-skill-growth-status-card{display:grid;gap:6px;padding:14px 16px;border-radius:18px;background:#ffffffe0;border:1px solid rgba(20,91,83,.1)}.home-skill-growth-status-card strong,.home-skill-growth-status-label{margin:0}.home-skill-growth-status-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#67867f;font-weight:800}.home-skill-growth-status-card strong{color:#173f39;line-height:1.35}.home-skill-growth-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:16px}.home-skill-mini-card{display:grid;gap:10px;padding:14px;border-radius:18px;background:#ffffffe6;border:1px solid rgba(20,91,83,.1);box-shadow:inset 0 1px #ffffff80}.home-skill-mini-card.is-focus{border-color:#2d9d8a38;background:linear-gradient(180deg,#eefcf8f5,#f8fffcf0)}.home-skill-mini-card.is-strongest{border-color:#f59e0b33;background:linear-gradient(180deg,#fff9ebf0,#fffffbf5)}.home-skill-mini-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.home-skill-mini-name{font-size:.92rem;font-weight:800;color:#163c37}.home-skill-mini-trend{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.02em}.home-skill-mini-trend.is-up{background:#2d9d8a1f;color:#177664}.home-skill-mini-trend.is-down{background:#ef44441f;color:#b83939}.home-skill-mini-trend.is-steady{background:#4755691a;color:#465468}.home-skill-mini-score-row{display:flex;align-items:baseline;gap:10px}.home-skill-mini-score-row strong{font-size:1.45rem;line-height:1;color:#143b36}.home-skill-mini-score-row span{font-size:.86rem;font-weight:700;color:#5f7b74}.home-skill-mini-track{height:10px;border-radius:999px;overflow:hidden;background:#145b5314}.home-skill-mini-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1e7f71,#45b69f)}.home-skill-mini-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.78rem;color:#5d7a73;font-weight:700}.home-skill-mini-tag{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#f59e0b1f;color:#9a6500}.home-skill-mini-tag.is-focus{background:#2d9d8a1f;color:#177664}.home-skill-growth-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#ffffffd6;border:1px solid rgba(20,91,83,.1);color:#24524b;font-size:.84rem;font-weight:800}.home-skill-growth-card{display:grid;gap:5px;margin-top:16px;padding:16px;border-radius:20px;background:#ffffffd1;border:1px solid rgba(20,91,83,.1)}.home-skill-growth-card.is-focus{background:linear-gradient(180deg,#fff7e0eb,#fffcf3f0);border-color:#f59e0b29}.home-skill-growth-card-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#67867f;font-weight:800}.home-skill-growth-card strong{font-size:1.18rem;color:#173f39}.home-skill-growth-card p{line-height:1.5;color:#4a6d66}.home-skill-growth-meta{margin-top:6px;color:#5d7a73;font-size:.88rem;font-weight:700}.home-skill-growth-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.home-skill-growth-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:14px;border:1px solid #cfe0da;background:#ffffffe0;color:#21524b;text-decoration:none;font-weight:800;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.home-skill-growth-action:hover{transform:translateY(-2px);border-color:#1e7f71;box-shadow:0 10px 22px #145b531f}.home-skill-growth-action.is-primary{background:linear-gradient(135deg,#1e7f71,#2d9d8a);border-color:transparent;color:#fff;box-shadow:0 12px 24px #1e7f7138}.training-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.training-card{display:flex;gap:16px;padding:20px;border-radius:20px;background:#fff;border:2px solid transparent;box-shadow:0 4px 16px #0000000f;text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;position:relative;overflow:hidden}.training-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--card-gradient)}.training-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px #0000001f;border-color:var(--card-color)}.training-card-icon{width:56px;height:56px;border-radius:14px;background:var(--card-gradient);display:grid;place-items:center;color:#fff;flex-shrink:0;box-shadow:0 4px 12px #00000026}.training-card-content{flex:1;display:grid;gap:6px}.training-card-title{margin:0;font-size:1.15rem;font-weight:800;color:#143b36}.training-card-desc{margin:0;font-size:.9rem;color:#43635e}.training-card-cta{margin-top:8px;display:inline-flex;align-items:center;gap:6px;font-size:.9rem;font-weight:700;color:var(--card-color)}.today-progress-modern{padding:24px;border-radius:20px;background:linear-gradient(135deg,#f0fdf9,#ecfdf5);border:2px solid #a7f3d0;margin-bottom:24px}.progress-content{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center}.progress-ring-section{display:grid;place-items:center;gap:12px}.progress-ring-wrapper{position:relative;display:grid;place-items:center}.progress-ring{transform:rotate(-90deg)}.progress-ring-bg{color:#d1fae5}.progress-ring-fill{color:#1e7f71;transition:stroke-dashoffset .6s ease;stroke-linecap:round}.progress-ring-text{position:absolute;display:grid;place-items:center}.progress-ring-value{font-size:1.8rem;font-weight:900;color:#143b36}.progress-ring-caption{margin:0;font-size:.95rem;color:#43635e;font-weight:600;text-align:center}.stats-grid-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.stat-card-modern{display:flex;gap:12px;align-items:center;padding:16px;border-radius:16px;background:#fff;border:1px solid #a7f3d0;box-shadow:0 2px 8px #0000000a}.stat-card-icon{font-size:2rem;line-height:1}.stat-card-body{display:grid;gap:4px}.stat-card-label{font-size:.85rem;color:#43635e;font-weight:500}.stat-card-value{font-size:1.3rem;font-weight:900;color:#143b36}.motivation-modern{padding:24px;border-radius:20px;background:linear-gradient(135deg,#fef2f2,#fef7f7);border:2px solid #fecaca;margin-bottom:24px}.streak-showcase{display:grid;gap:16px;margin-bottom:0}.streak-main{display:flex;align-items:center;gap:16px;padding:20px;border-radius:18px;background:linear-gradient(135deg,#fff,#fef2f2);border:2px solid #fca5a5}.streak-badge-large{width:72px;height:72px;border-radius:20px;background:linear-gradient(135deg,#f59e0b,#fbbf24);display:grid;place-items:center;font-size:2.2rem;box-shadow:0 6px 20px #f59e0b66,inset 0 2px 4px #ffffff40;flex-shrink:0}.streak-info{display:grid;gap:4px}.streak-title{font-size:1.2rem;font-weight:800;color:#143b36}.streak-count{font-size:1.5rem;font-weight:900;color:#dc2626}.streak-next{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:14px;background:#fff;border:2px dashed #fca5a5}.streak-next-label{font-size:.95rem;color:#43635e}.streak-next-value{font-size:1.1rem;font-weight:800;color:#dc2626}.streak-next-badge{font-size:1.5rem;margin-left:auto}.streak-max{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:14px;background:linear-gradient(135deg,#fef3c7,#fde68a);font-size:1.05rem;font-weight:700;color:#92400e}.mini-goals-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.mini-goal-modern{display:flex;gap:12px;padding:14px;border-radius:14px;background:#fff;border:2px solid #fecaca;transition:transform .15s ease,border-color .15s ease}.mini-goal-modern:hover{transform:translateY(-2px)}.mini-goal-modern.is-complete{border-color:#34d399;background:#ecfdf5}.mini-goal-check{width:28px;height:28px;border-radius:50%;background:#fef2f2;display:grid;place-items:center;font-size:.9rem;font-weight:900;color:#dc2626;flex-shrink:0}.mini-goal-modern.is-complete .mini-goal-check{background:#10b981;color:#fff}.mini-goal-content{display:grid;gap:4px}.mini-goal-title{font-size:.95rem;font-weight:700;color:#143b36}.mini-goal-desc{font-size:.85rem;color:#43635e}.mini-goal-progress{font-size:.85rem;font-weight:700;color:#1e7f71}.more-options{padding:4px 0 2px}.more-options-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:12px}.more-options-head .section-title{margin-bottom:0}.more-options-note{margin:0;max-width:360px;color:#5e7772;font-size:.92rem;line-height:1.45;text-align:right}.more-options-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(220px,.84fr);gap:12px}.options-stack{display:grid;gap:10px}.option-card{display:flex;gap:14px;align-items:center;padding:14px;border-radius:16px;background:#fff;border:2px solid #e5e7eb;text-decoration:none;color:inherit;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.option-card-featured{min-height:112px;padding:18px 20px;border-color:#1e7f712e;background:radial-gradient(circle at top right,rgba(45,157,138,.14),transparent 28%),linear-gradient(180deg,#fbfcfc,#f3f8f6)}.option-card-quiet{min-height:74px}.option-card:hover{transform:translateY(-3px);border-color:#1e7f71;box-shadow:0 4px 16px #00000014}.option-card-icon{font-size:2rem;line-height:1}.option-card-content{display:grid;gap:4px;flex:1}.option-card-title{font-size:1rem;font-weight:700;color:#143b36}.option-card-desc{font-size:.85rem;color:#43635e}.option-card-arrow{align-self:center;color:#1e7f71;font-size:1.3rem;font-weight:800}@media(max-width:700px){.home-panel{padding:16px}.home-hero{grid-template-columns:1fr;padding:20px}.home-hero-summary{padding:16px}.home-hero-title{font-size:1.7rem}.home-hero-heading{text-align:center}.home-hero-content{align-items:center}.home-hero-stats{grid-template-columns:1fr;max-width:none}.home-hero-summary-head,.home-hero-status-row{justify-content:center}.home-hero-progress{max-width:none}.progress-content{grid-template-columns:1fr;text-align:center}.stats-grid-modern,.training-cards-grid{grid-template-columns:1fr}.home-skill-growth-head{flex-direction:column}.home-skill-growth-pills{justify-content:flex-start}.home-skill-growth-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.challenge-highlight-header{flex-wrap:wrap}.challenge-highlight-footer{grid-template-columns:1fr;align-items:stretch}.more-options-head{flex-direction:column;align-items:flex-start}.more-options-note{max-width:none;text-align:left}.more-options-grid{grid-template-columns:1fr}.streak-main{flex-direction:column;text-align:center}.mini-goals-modern{grid-template-columns:1fr}}.pattern-setup-page .segmented-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.pattern-session-panel,.session-panel{display:flex;flex-direction:column;min-height:50vh;max-width:800px;margin:0 auto}.session-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1e7f7114;border-radius:12px;margin-bottom:16px;flex-wrap:wrap;gap:12px}.session-timer{font-size:1.5rem;font-weight:700;color:var(--accent-main)}.session-streak{font-size:1.2rem;font-weight:700;animation:streakPulse 1s ease-in-out infinite}@keyframes streakPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.session-hints{font-size:.95rem;font-weight:600;color:#8b5cf6;background:#8b5cf61a;padding:6px 12px;border-radius:12px;border:1px solid rgba(139,92,246,.2)}.hint-credits{display:inline-flex;align-items:center;gap:4px}.session-accuracy{font-size:.95rem;color:var(--text-muted)}.session-progress-bar{width:100%;height:6px;background:#1e7f7126;border-radius:3px;overflow:hidden;margin:8px 0 16px}.session-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-main),#2dd4bf);border-radius:3px;transition:width .4s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #1e7f7166}.session-footer{margin-top:auto;padding-top:16px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.pattern-explanation{width:100%;padding:12px 16px;background:#8b5cf61a;border-left:4px solid #8b5cf6;border-radius:8px;font-size:.95rem;color:#6d28d9;font-weight:500;margin-top:8px}.pattern-session-content{display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px 0;width:100%}.pattern-instruction-row{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:16px}.pattern-instruction{margin:0;font-size:1.2rem;color:var(--text-muted);text-align:center}.hint-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#f59e0b1a;border:2px solid rgba(245,158,11,.3);font-size:1.2rem;cursor:pointer;transition:all .2s ease;padding:0}.hint-btn:hover{background:#f59e0b33;border-color:#f59e0b80;transform:scale(1.1)}.hint-btn:active{transform:scale(.95)}.pattern-sequence{display:flex;flex-direction:column;align-items:center;gap:16px;justify-content:center;padding:24px;background:linear-gradient(180deg,#fffffff5,#f2f9f6f5);border:1px solid rgba(30,127,113,.12);border-radius:20px;width:100%;box-shadow:inset 0 1px #ffffffbf}.pattern-sequence-items{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;justify-content:center;overflow-x:auto;padding:8px 0;max-width:100%}.pattern-sequence-items::-webkit-scrollbar{height:4px}.pattern-sequence-items::-webkit-scrollbar-track{background:#1e7f711a;border-radius:2px}.pattern-sequence-items::-webkit-scrollbar-thumb{background:#1e7f7166;border-radius:2px}.pattern-sequence-items::-webkit-scrollbar-thumb:hover{background:#1e7f7199}.pattern-type-hint{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#8b5cf626,#8b5cf640);border:1px solid rgba(139,92,246,.4);border-radius:24px;font-size:.9rem;font-weight:600;color:#8b5cf6;box-shadow:0 4px 12px #8b5cf633;animation:hintSlideDown .4s ease-out}@keyframes hintSlideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.pattern-element-btn{display:grid;place-items:center;background:#fff;border:2px solid #d4e8df;border-radius:12px;padding:0;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;animation:patternElementFadeIn .4s ease-out forwards}@keyframes patternElementFadeIn{0%{transform:scale(.9) translateY(8px)}to{transform:scale(1) translateY(0)}}.pattern-element-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.05);border-color:var(--accent-main);box-shadow:0 10px 24px #1e7f7133}.pattern-element-btn:disabled{cursor:default}.pattern-number-btn{display:grid;place-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #cbd5e1;border-radius:12px;padding:0;font-weight:700;color:#1e293b;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;animation:patternElementFadeIn .4s ease-out forwards;overflow:hidden}.pattern-number-btn .pattern-number-value{background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800;font-size:.45em;line-height:1;padding:.1em}.pattern-number-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.05);border-color:var(--accent-main);box-shadow:0 10px 24px #1e7f7133}.pattern-number-btn:disabled{cursor:default}.pattern-gap-slot{position:relative}.pattern-question-mark{width:56px;height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:2rem;font-weight:700;color:var(--accent-main);background:linear-gradient(180deg,#fff,#ecf8f3);border:2px dashed var(--accent-main);border-radius:12px;animation:questionBounce 1.5s ease-in-out infinite}.pattern-question-mark small{font-size:.72rem;line-height:1;color:var(--text-muted)}@keyframes questionBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.pattern-connection-line{width:24px;height:3px;background:linear-gradient(90deg,#1e7f714d,#1e7f7199,#1e7f714d);border-radius:2px;align-self:center;opacity:0;animation:connectionFadeIn .4s ease-out .3s forwards}.pattern-connection-line.visible{opacity:1}@keyframes connectionFadeIn{0%{opacity:0;transform:scaleX(.5)}to{opacity:1;transform:scaleX(1)}}.pattern-answer-slot{border-width:2px;box-shadow:0 8px 20px #1e7f711f;animation:answerSlotPop .4s ease-out forwards}@keyframes answerSlotPop{0%{opacity:0;transform:scale(.9)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.pattern-answer-slot.filled{border-color:#1e7f716b}.pattern-answer-slot.correct{border-color:#22c55e;box-shadow:0 0 0 4px #22c55e29;animation:correctPulse .5s ease-out}@keyframes correctPulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.pattern-answer-slot.wrong{border-color:#ef4444;box-shadow:0 0 0 4px #ef444429;animation:wrongShake .4s ease-out}@keyframes wrongShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.pattern-gap-index{position:absolute;top:-8px;right:-6px;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;border-radius:999px;background:#145b53;color:#fff;font-size:.72rem;font-weight:700}.pattern-options{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;padding:20px;width:100%}.pattern-option-wrapper{position:relative;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;border-radius:12px;padding:4px;animation:optionFadeIn .4s ease-out forwards}@keyframes optionFadeIn{0%{transform:translateY(10px) scale(.95)}to{transform:translateY(0) scale(1)}}.pattern-option-wrapper.selected{background:#1e7f7114;box-shadow:0 0 0 2px #1e7f712e;transform:scale(1.05)}.pattern-option-wrapper.correct{border:3px solid #22c55e;box-shadow:0 0 0 3px #22c55e4d,0 8px 20px #22c55e33;background:#22c55e1a;border-radius:16px;animation:correctOptionPop .5s ease-out}@keyframes correctOptionPop{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.pattern-option-wrapper.wrong{border:3px solid #ef4444;box-shadow:0 0 0 3px #ef44444d,0 8px 20px #ef444433;background:#ef44441a;border-radius:16px;animation:wrongOptionShake .5s ease-out}@keyframes wrongOptionShake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-8px)}80%{transform:translate(8px)}}.pattern-options .pattern-element-btn{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.pattern-options .pattern-element-btn:not(:disabled):hover{transform:translateY(-3px) scale(1.08);box-shadow:0 8px 24px #1e7f7140}.pattern-options .pattern-number-btn:not(:disabled):hover{transform:translateY(-3px) scale(1.08);box-shadow:0 8px 24px #1e7f7140}.pattern-option-count{position:absolute;top:-8px;right:-8px;min-width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;background:#145b53;color:#fff;font-size:.78rem;font-weight:700;box-shadow:0 8px 18px #145b5338}.pattern-option-hotkey{position:absolute;top:-6px;left:-6px;min-width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0 7px;border-radius:999px;background:linear-gradient(135deg,#64748b,#475569);color:#fff;font-size:.72rem;font-weight:700;box-shadow:0 4px 12px #64748b4d;border:2px solid #ffffff;animation:hotkeyPulse 2s ease-in-out infinite}@keyframes hotkeyPulse{0%,to{box-shadow:0 4px 12px #64748b4d}50%{box-shadow:0 4px 16px #64748b80}}.pattern-selection-panel{width:100%;display:grid;gap:12px;padding:16px 18px;border-radius:16px;background:#145b530d;border:1px solid rgba(20,91,83,.1)}.pattern-selection-status{font-size:.95rem;font-weight:700;color:#145b53}.pattern-selection-actions{display:flex;gap:12px;flex-wrap:wrap}.pattern-selection-tip{margin:0;font-size:.86rem;color:var(--text-muted)}.pattern-hint-answer-panel{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;border-radius:12px;background:#8b5cf60d;border:1px dashed rgba(139,92,246,.3)}.hint-answer-btn{font-size:.95rem;font-weight:500;color:#8b5cf6;border-color:#8b5cf666;background:#8b5cf61a}.hint-answer-btn:hover:not(:disabled){background:#8b5cf626;border-color:#8b5cf699;color:#7c3aed}.hint-answer-btn:disabled{opacity:.5;cursor:not-allowed}.pattern-hint-answer-tip{margin:0;font-size:.82rem;color:var(--text-muted);text-align:center}.result-panel{text-align:left}.pattern-result-panel{display:grid;gap:18px}.pattern-result-empty{display:grid;gap:12px}.pattern-result-empty h2,.pattern-result-empty p{margin:0}.pattern-result-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);gap:16px;padding:22px;border-radius:24px;background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 30%),linear-gradient(135deg,#145b53,#1e7f71 52%,#4ab892);color:#fff;box-shadow:0 18px 36px #145b5329}.pattern-result-copy{display:grid;gap:10px;align-content:start}.pattern-result-copy h2,.pattern-result-copy p{margin:0}.pattern-result-copy h2{font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.02}.pattern-result-lead{font-size:1rem;line-height:1.55;color:#ffffffeb}.pattern-result-pills{display:flex;flex-wrap:wrap;gap:8px}.pattern-result-pill{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#ffffff24;border:1px solid rgba(255,255,255,.16);color:#ffffffeb;font-size:.8rem;font-weight:800}.pattern-result-score-card{display:grid;gap:8px;align-content:center;justify-items:center;padding:18px;border-radius:22px;background:#ffffff24;border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 1px #ffffff1f}.pattern-result-score-label,.pattern-result-score-meta{margin:0}.pattern-result-score-label{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;opacity:.82}.pattern-result-score-value{font-size:clamp(2.8rem,6vw,4.25rem);line-height:1;font-weight:900}.pattern-result-score-meta{color:#ffffffe0;font-size:.92rem;font-weight:700}.pattern-result-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pattern-result-summary-card{display:grid;gap:8px;padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,#fff,#f7fbfa);border:1px solid #d9e8e3;box-shadow:inset 0 1px #ffffffbf}.pattern-result-summary-card strong,.pattern-result-summary-card span{margin:0}.pattern-result-summary-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#6a8a83;font-weight:800}.result-score-display{display:flex;flex-direction:column;align-items:center;padding:32px;margin:16px 0;background:linear-gradient(135deg,#1e7f711a,#1e7f710d);border-radius:20px;border:2px solid var(--accent-main)}.result-score-value{font-size:4rem;font-weight:800;color:var(--accent-main);line-height:1}.result-score-label{font-size:1.1rem;color:var(--text-muted);margin-top:8px}.result-comparison{margin:16px 0;font-size:1.1rem;font-weight:600}.result-comparison-positive{color:#22c55e}.result-comparison-negative{color:#ef4444}.result-comparison-neutral{color:var(--text-muted)}.result-metrics{margin:24px 0}.pattern-result-metrics{margin:0}.pattern-result-section-head{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:14px}.pattern-result-section-head h3,.pattern-result-section-head p{margin:0}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.metric-card{display:flex;flex-direction:column;align-items:start;padding:16px;background:linear-gradient(180deg,#1e7f7114,#1e7f710a);border-radius:16px;border:1px solid rgba(30,127,113,.12)}.metric-value{font-size:1.5rem;font-weight:700;color:var(--accent-main)}.metric-label{font-size:.85rem;color:var(--text-muted);margin-top:4px}.result-best{margin:24px 0;padding:16px;background:linear-gradient(135deg,#f2a93b26,#f2a93b14);border-radius:16px;border:1px solid rgba(242,169,59,.3)}.result-best h3{margin:0 0 8px;font-size:1.1rem}.result-tips{margin:0;padding:16px;background:#1e7f710d;border-radius:16px;border:1px solid rgba(20,91,83,.1);text-align:left}.pattern-result-insight{background:linear-gradient(180deg,#fffffff5,#f5faf8fa)}.result-tips h3{margin:0 0 8px;font-size:1rem}.result-tips p{margin:0;color:var(--text-muted);line-height:1.5}.result-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start;margin-top:8px}@media(max-width:900px){.pattern-result-hero,.pattern-result-summary-grid,.pattern-result-section-head{grid-template-columns:1fr;flex-direction:column;align-items:start}}@media(max-width:700px){.pattern-result-hero{padding:18px;border-radius:22px}.result-actions{flex-direction:column}.result-actions .btn-primary,.result-actions .btn-secondary,.result-actions .btn-ghost{width:100%;justify-content:center}}.pattern-result-page{display:grid;gap:18px}.pattern-result-empty-card{display:grid;gap:14px;max-width:640px;padding:24px;border-radius:24px;border:1px solid #d8e8e2;background:linear-gradient(180deg,#fbfdfc,#f2f8f6);box-shadow:0 18px 36px #145b5314}.pattern-result-empty-card h1,.pattern-result-empty-card p{margin:0}.pattern-result-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:18px}.pattern-result-main,.pattern-result-side{display:grid;gap:16px;align-content:start}.pattern-result-section,.pattern-result-side-card{display:grid;gap:14px;padding:20px;border-radius:24px;border:1px solid #d8e8e2;background:linear-gradient(180deg,#fff,#f7fbfa);box-shadow:0 14px 28px #145b530f}.pattern-result-side-card h3,.pattern-result-side-card p{margin:0}.pattern-result-score-pills,.pattern-result-side-pills{display:flex;flex-wrap:wrap;gap:8px}.pattern-result-score-pills .pattern-result-pill,.pattern-result-side-pills .pattern-result-pill{color:inherit}.pattern-result-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.pattern-result-metric-card{display:grid;gap:6px;padding:14px;border-radius:18px;background:#f6fbf9;border:1px solid #dcebe6}.pattern-result-metric-card span,.pattern-result-best-block span{color:#587871;font-size:.82rem;line-height:1.4}.pattern-result-metric-card strong,.pattern-result-best-block strong{color:#143b36;font-size:1.15rem;line-height:1.15}.pattern-result-insights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pattern-result-callout{display:grid;gap:8px;padding:18px;border-radius:22px;background:#ffffffeb;border:1px solid #dbe9e4}.pattern-result-callout h3,.pattern-result-callout p{margin:0}.pattern-result-callout.is-positive{background:linear-gradient(180deg,#f1fbf6,#e6f7ef);border-color:#b8e2c8}.pattern-result-callout.is-warning{background:linear-gradient(180deg,#fff8f2,#fff0e5);border-color:#f2d0a6}.pattern-result-callout.is-neutral{background:linear-gradient(180deg,#f7fbfa,#eef6f3)}.pattern-result-best-block{display:grid;gap:6px;padding:14px;border-radius:18px;background:linear-gradient(180deg,#145b5314,#145b5308);border:1px solid rgba(20,91,83,.14)}.pattern-result-actions{justify-content:stretch}.pattern-result-actions>*{flex:1 1 180px;justify-content:center}@media(max-width:900px){.pattern-result-layout,.pattern-result-insights{grid-template-columns:1fr}}@media(max-width:640px){.pattern-result-section,.pattern-result-side-card,.pattern-result-empty-card{padding:18px;border-radius:22px}.pattern-result-metrics-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.pattern-result-metrics-grid{grid-template-columns:1fr}}.info-hint{margin:16px 0;border-radius:12px;background:#1e7f710d;border:1px solid rgba(30,127,113,.15);overflow:hidden}.info-hint-summary{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;font-weight:600;color:var(--text-primary);list-style:none;transition:background .15s ease}.info-hint-summary:hover{background:#1e7f7114}.info-hint-summary::-webkit-details-marker{display:none}.info-hint-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#1e7f7126;color:var(--accent-main);font-weight:700;font-size:.9rem}.info-hint-body{padding:0 16px 16px;color:var(--text-muted);line-height:1.5}.info-hint-body p{margin:8px 0}.memory-match-setup-shell{display:grid;gap:20px}.memory-match-setup-controls{display:grid;gap:16px}.memory-match-difficulty-row{margin-top:0;display:flex;gap:10px;flex-wrap:wrap}.memory-match-difficulty-row .btn-secondary{flex:1;min-width:140px;border-radius:14px;font-weight:700;transition:all .2s ease;background:#fff9;border-color:#1e7f714d}.memory-match-difficulty-row .btn-secondary:hover{background:#fffc;transform:translateY(-2px)}.memory-match-difficulty-row .btn-secondary.is-active{background:linear-gradient(135deg,#1e7f71,#2d9d8a);border-color:#1e7f71;color:#fff;box-shadow:0 4px 16px #1e7f714d}.memory-match-setup-actions{margin-top:0;display:flex;gap:12px;flex-wrap:wrap}.memory-match-setup-actions .btn-primary{border-radius:14px;padding:12px 24px;font-weight:700;font-size:1rem;background:linear-gradient(135deg,#1e7f71,#2d9d8a);box-shadow:0 4px 16px #1e7f714d;transition:all .2s ease}.memory-match-setup-actions .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px #1e7f7166}.memory-match-setup-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.memory-match-setup-actions .btn-ghost{border-radius:14px;padding:12px 24px;font-weight:700}.memory-match-hero,.memory-match-focus,.memory-match-round-plan,.memory-match-result-hero{border:none;background:linear-gradient(135deg,#f0fdf9,#ecfdf5,#d1fae5);border-radius:24px;padding:24px;box-shadow:0 4px 16px #1e7f711a,0 8px 32px #1e7f7114}.memory-match-hero{background:linear-gradient(135deg,#1e7f71,#2d9d8a,#1e7f71);color:#fff}.memory-match-hero .stats-section-kicker{color:#ffffffe6;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700}.memory-match-hero h3{color:#fff;font-size:1.5rem;margin:8px 0 12px}.memory-match-hero-text{max-width:58ch;color:#fffffff2;line-height:1.6}.memory-match-preview-strip{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 0;padding:16px;background:#ffffff1a;border-radius:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.memory-match-preview-icon{width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:#fffffff2;box-shadow:0 4px 12px #00000026,inset 0 1px #ffffffe6;transition:transform .2s ease}.memory-match-preview-icon:hover{transform:scale(1.1) rotate(5deg)}.memory-match-preview-art{width:100%;height:100%}.memory-match-preview-art .memory-card-visual-bg{opacity:.15}.memory-match-preview-art .memory-card-visual-icon svg{filter:drop-shadow(0 2px 6px rgba(0,0,0,.1))}.memory-match-preview-progress{position:relative;height:6px;background:#fff3;border-radius:999px;overflow:hidden;margin-top:12px}.memory-match-preview-progress-fill{height:100%;background:linear-gradient(90deg,#fbbf24,#f59e0b);border-radius:999px;animation:preview-progress linear}@keyframes preview-progress{0%{width:100%}to{width:0%}}.memory-match-session-shell[data-phase=play] .memory-match-board-panel{animation:memory-board-play-glow 2s ease-in-out infinite alternate}@keyframes memory-board-play-glow{0%{box-shadow:0 12px 48px #1e7f714d,0 24px 96px #1e7f7133}to{box-shadow:0 16px 64px #2d9d8a66,0 32px 128px #2d9d8a40}}.memory-match-setup-grid{margin-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.memory-match-setup-grid .stat-card{background:#fffffff2;border:none;border-radius:16px;padding:16px;box-shadow:0 4px 16px #00000014,0 8px 32px #0000000f;transition:all .2s ease}.memory-match-setup-grid .stat-card:hover{transform:translateY(-3px);box-shadow:0 6px 24px #0000001f,0 12px 48px #00000014}.memory-match-setup-grid .stat-card-content{display:grid;gap:6px}.memory-match-setup-grid .stat-card-label{font-size:.75rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.memory-match-setup-grid .stat-card-value{font-size:1rem;color:#1f2937;font-weight:800;line-height:1.4}.memory-match-checklist{margin:10px 0 0;padding-left:20px;display:grid;gap:10px;color:var(--text-primary);line-height:1.6}.memory-match-checklist li{font-size:.95rem;position:relative}.memory-match-checklist li::marker{color:#1e7f71;font-weight:800}.memory-match-setup-meta{display:grid;gap:8px;margin-top:16px;padding:16px;background:#fff9;border-radius:16px;border:1px solid rgba(30,127,113,.2)}.memory-match-setup-meta p{margin:0;font-size:.9rem;line-height:1.6}.memory-match-setup-meta strong{color:#1e7f71;font-weight:700}.comparison-note{font-size:.85rem;color:#6b7280;font-style:italic}.memory-match-session-shell{display:grid;gap:16px;margin-top:12px}.memory-match-hud{display:grid;gap:16px;padding:20px 24px;border-radius:24px;background:linear-gradient(135deg,#1e7f71,#2d9d8a,#1e7f71);color:#fff;box-shadow:0 8px 32px #1e7f7140,0 16px 64px #1e7f7126}.memory-match-hud .stats-section-kicker,.memory-match-hud h3,.memory-match-hud p{color:inherit}.memory-match-hud-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.memory-match-hud-top h3{margin:4px 0 6px;font-size:1.4rem;font-weight:800}.memory-match-hud-top p:last-child{margin-bottom:0;max-width:60ch;opacity:.95}.memory-match-hud-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.memory-match-hud-actions .btn-secondary,.memory-match-hud-actions .btn-ghost{border-color:#fff6;background:#ffffff26;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s ease}.memory-match-hud-actions .btn-secondary:hover,.memory-match-hud-actions .btn-ghost:hover{background:#ffffff40;border-color:#fff9;transform:translateY(-2px)}.memory-match-hud-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.memory-match-hud-card{display:grid;gap:4px;padding:12px 14px;border-radius:16px;background:#ffffff26;border:1px solid rgba(255,255,255,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s ease;min-width:0}.memory-match-hud-card:hover{background:#fff3;transform:translateY(-2px)}.memory-match-hud-card.is-accent{background:#fff8cd33;border-color:#fff8cd66}.memory-match-hud-label{font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;opacity:.85;font-weight:700;line-height:1.2;word-break:keep-all;white-space:nowrap}.memory-match-hud-value{font-size:clamp(.95rem,1.5vw,1.25rem);line-height:1.3;font-weight:800;word-break:break-word}.memory-match-board-layout{display:grid;gap:20px}.memory-match-board-panel{border:none;border-radius:28px;padding:24px;background:linear-gradient(135deg,#1e7f71,#145a4f);color:#fff;box-shadow:0 12px 48px #1e7f714d,0 24px 96px #1e7f7133}.memory-match-board-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:14px}.memory-match-board-header h3{margin:4px 0 0;color:#fff}.memory-match-board-note{max-width:34ch;color:#f5fffbd6}.memory-match-grid{display:grid;justify-content:center;gap:12px;margin:0}.memory-match-card{--memory-card-surface: #eef8f4;--memory-card-accent: #1f8f7d;aspect-ratio:1 / 1;width:100%;min-width:0;border:none;border-radius:24px;background:linear-gradient(145deg,#fff,#f8fafb);color:#1f2937;font-weight:700;cursor:pointer;overflow:visible;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00000014,0 8px 24px #0000000f;position:relative}.memory-match-card-face{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:stretch;justify-items:stretch;align-content:stretch;width:100%;height:100%;gap:6px;padding:10px;line-height:1}.memory-match-card-face:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:24px;background:linear-gradient(145deg,#fffffffa,#f8fafbf2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:0}.memory-match-card-figure,.memory-match-card-icon,.memory-match-card-caption{position:relative;z-index:1}.memory-match-card.is-facedown{border:none;background:linear-gradient(135deg,#1e7f71,#145a4f);box-shadow:0 8px 24px #1e7f714d,0 4px 12px #0000001a}.memory-match-card.is-facedown .memory-match-card-face:before{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.memory-match-card-figure{position:relative;z-index:1;display:grid;place-items:center;width:100%;height:100%;min-height:0;padding:0;overflow:visible}.memory-match-card-figure svg{width:100%;height:100%;display:block;overflow:visible}.memory-match-card-icon{position:relative;z-index:1;display:block;width:100%;height:100%;background:transparent;border-radius:18px;box-shadow:none;transition:transform .3s ease;padding:0;overflow:visible}.memory-match-card-icon svg{width:100%;height:100%;display:block;overflow:visible}.memory-match-sprite{display:block;width:100%;height:100%;min-width:40px;min-height:40px;border-radius:12px;background-repeat:no-repeat;background-position:center;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.memory-card-visual{display:block;width:100%;height:100%;overflow:hidden}.memory-card-visual-bg{display:none}.memory-card-visual-icon{display:block;width:100%;height:100%}.memory-card-visual-icon svg{width:100%;height:100%;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.memory-match-card:hover .memory-match-card-icon{transform:scale(1.05)}.memory-match-card-caption{position:relative;z-index:1;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2em;padding:4px 6px;border-radius:10px;background:linear-gradient(135deg,#ecf3f6e6,#e0e9eecc);color:#374151;text-align:center;font-size:.68rem;font-weight:700;line-height:1.1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.memory-match-card-back{position:relative;z-index:1;display:grid;place-items:center;width:100%;height:100%;border-radius:20px;background:linear-gradient(135deg,#ffffff26,#ffffff0d);border:2px solid rgba(255,255,255,.2);box-shadow:inset 0 2px 8px #ffffff26,0 4px 12px #0000001a;overflow:hidden}.memory-match-card-back:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.08) 0 2px,transparent 3px),repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0 1px,transparent 1px 6px);opacity:.7}.memory-match-card-back:after{content:"";position:absolute;top:14px;right:14px;bottom:14px;left:14px;border-radius:16px;border:2px dashed rgba(255,255,255,.25)}.memory-match-card-back-symbol{position:relative;z-index:1;font-size:clamp(2rem,4vw,2.8rem);line-height:1;color:#ffffffe6;opacity:.85;text-shadow:0 2px 8px rgba(0,0,0,.2)}.memory-match-grid.is-compact-board .memory-match-card-face{gap:4px;padding:8px}.memory-match-grid.is-compact-board .memory-match-card-figure{padding:0}.memory-match-grid.is-compact-board .memory-match-card-figure svg{width:100%;height:100%}.memory-match-grid.is-compact-board .memory-match-card-caption{min-height:1.8em;font-size:.58rem;padding:3px 4px}.memory-match-grid.is-compact-board .memory-match-card-icon{width:100%;height:100%;padding:0;overflow:visible}.memory-match-grid.is-compact-board .memory-match-card-icon svg{overflow:visible}.memory-match-grid.is-compact-board .memory-match-sprite{min-width:100%;min-height:100%}.memory-match-grid.is-compact-board .memory-match-card-back{border-radius:16px}.memory-match-grid.is-compact-board .memory-match-card-back-symbol{font-size:1.35rem}.memory-match-grid.is-compact-board .memory-match-card-caption{min-height:2.2em;padding:4px 5px 3px;font-size:.61rem;line-height:1.08}.memory-match-card.is-open{background:linear-gradient(145deg,#fff,#f0fdf9);border:none;box-shadow:0 12px 32px #1e7f7140,0 6px 16px #1e7f7126;transform:translateY(-4px);animation:memory-card-flip-in .35s cubic-bezier(.4,0,.2,1)}.memory-match-card.is-open .memory-match-card-icon{transform:scale(1.05)}.memory-match-card.is-matched{background:linear-gradient(145deg,#ecfdf5,#d1fae5);border:none;box-shadow:0 8px 24px #1e7f714d,0 4px 12px #1e7f7133;animation:memory-card-match-pop .45s cubic-bezier(.34,1.56,.64,1)}.memory-match-card.is-matched .memory-match-card-icon{transform:scale(1.15)}.memory-match-card.is-mismatch{background:linear-gradient(145deg,#fef2f2,#fee2e2);border:none;box-shadow:0 8px 24px #dc262640,0 4px 12px #dc262626;animation:memory-card-shake .4s ease-in-out}.memory-match-card.is-mismatch .memory-match-card-icon{filter:hue-rotate(-30deg) saturate(.8)}.memory-match-card:disabled{cursor:default;opacity:.95}.memory-match-card.is-interactive{cursor:pointer}.memory-match-card.is-interactive:hover{transform:translateY(-6px) scale(1.03);box-shadow:0 16px 40px #0000001f,0 8px 20px #00000014,inset 0 1px #ffffffe6}.memory-match-card[aria-disabled=true]:not(:disabled){cursor:default;opacity:.92}.memory-match-session-shell[data-phase=preview] .memory-match-board-panel{animation:memory-board-preview-glow 1.5s ease-in-out infinite alternate}.memory-match-result-hero{animation:memory-result-rise .4s cubic-bezier(.4,0,.2,1);border:none;background:linear-gradient(135deg,#1e7f71,#2d9d8a,#1e7f71);color:#fff;padding:28px}.memory-match-result-hero h3{color:#fff;font-size:1.6rem;margin:0 0 12px}.memory-match-result-hero p{color:#fffffff2;line-height:1.6}.memory-match-result-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-top:20px}.memory-match-result-metric{background:#ffffff26;border:1px solid rgba(255,255,255,.3);border-radius:18px;padding:16px;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.memory-match-result-metric-label{font-size:.75rem;color:#ffffffd9;text-transform:uppercase;letter-spacing:.05em;font-weight:700;margin-bottom:8px}.memory-match-result-metric-value{font-size:1.8rem;color:#fff;font-weight:900;line-height:1}.memory-match-result-metric-unit{font-size:.85rem;color:#ffffffb3;font-weight:600;margin-left:4px}.memory-match-new-best-badge{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;padding:8px 16px;border-radius:999px;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 4px 16px #fbbf2466;animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes memory-card-flip-in{0%{transform:rotateY(-90deg) scale(.9);opacity:.5}50%{transform:rotateY(-10deg) scale(1.02)}to{transform:translateY(-4px) rotateX(0) scale(1);opacity:1}}@keyframes memory-card-match-pop{0%{transform:scale(.9)}40%{transform:scale(1.15);box-shadow:0 16px 40px #1e7f7166,0 8px 20px #1e7f714d}70%{transform:scale(.98)}to{transform:scale(1)}}@keyframes memory-card-shake{0%,to{transform:translate(0)}15%{transform:translate(-8px) rotate(-3deg)}30%{transform:translate(8px) rotate(3deg)}45%{transform:translate(-6px) rotate(-2deg)}60%{transform:translate(6px) rotate(2deg)}75%{transform:translate(-4px) rotate(-1deg)}}@keyframes memory-board-preview-glow{0%{box-shadow:0 24px 48px #1e7f7133,0 12px 24px #00000014}to{box-shadow:0 32px 64px #1e7f7159,0 16px 32px #0000001f}}@keyframes memory-result-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.memory-match-status{margin-top:0;border:none;border-radius:20px;padding:20px;background:linear-gradient(135deg,#f0fdf9,#ecfdf5);box-shadow:0 4px 16px #1e7f711a,0 8px 32px #1e7f7114}.memory-match-status p{margin:6px 0;line-height:1.6}.memory-match-status-match{border:none;background:linear-gradient(135deg,#f0fdf9,#d1fae5)}.memory-match-status-mismatch{border:none;background:linear-gradient(135deg,#fef2f2,#fee2e2)}.memory-match-focus{border:none;background:linear-gradient(135deg,#fffbeb,#fef3c7,#fde68a);box-shadow:0 4px 16px #f59e0b26,0 8px 32px #f59e0b1a}.memory-match-focus h3,.memory-match-hero h3,.memory-match-result-hero h3{margin-bottom:8px}.memory-match-focus p:last-child,.memory-match-result-hero p:last-child{margin-bottom:0}@media(min-width:1100px){.memory-match-setup-shell{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:start}.memory-match-session-shell{gap:18px}.memory-match-board-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start}.memory-match-side-panel{display:grid;gap:14px;position:sticky;top:16px}}@media(max-width:900px){.memory-match-hud-top,.memory-match-board-header{flex-direction:column}.memory-match-hud-actions{justify-content:flex-start}}@media(max-width:640px){.memory-match-hud{padding:16px;border-radius:20px}.memory-match-board-panel{padding:14px;border-radius:22px}.memory-match-grid{gap:8px}.memory-match-preview-icon{width:48px;height:48px;border-radius:14px;font-size:1.5rem}}.memory-match-page{position:relative;overflow:hidden}.memory-match-page>h2,.memory-match-page .memory-match-hero h3,.memory-match-page .memory-match-focus h3,.memory-match-page .memory-match-result-hero h3,.memory-match-page .memory-match-hud-top h3,.memory-match-page .memory-match-status h3,.memory-match-page .memory-match-board-header h3{text-wrap:balance}.memory-match-page>p{max-width:76ch}.memory-match-page .status-line{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.memory-match-page .memory-match-hero,.memory-match-page .memory-match-focus,.memory-match-page .memory-match-round-plan,.memory-match-page .memory-match-result-hero{border-radius:24px;padding:24px;box-shadow:0 10px 30px #0f4f461a,0 18px 42px #0f4f4612}.memory-match-page .memory-match-hero{background:radial-gradient(circle at top right,rgba(255,255,255,.16),transparent 34%),linear-gradient(135deg,#1d7f71,#248f80,#17695d)}.memory-match-page .memory-match-hero-text{max-width:60ch;line-height:1.6;text-wrap:pretty}.memory-match-page .memory-match-preview-strip{gap:10px;margin-top:18px;padding:14px;background:#ffffff1f}.memory-match-page .memory-match-preview-icon{width:52px;height:52px;border-radius:16px}.memory-match-page .memory-match-preview-icon:hover{transform:translateY(-2px) scale(1.02)}.memory-match-page .memory-match-session-shell{gap:18px;margin-top:16px}.memory-match-page .memory-match-hud{gap:18px;padding:22px 24px;border-radius:28px;background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 30%),linear-gradient(135deg,#1c7d6f,#248f80 48%,#176458);box-shadow:0 14px 36px #155b512e,0 24px 56px #155b511f}.memory-match-page .memory-match-hud-top{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}.memory-match-page .memory-match-hud-copy{min-width:0;display:grid;gap:6px}.memory-match-page .memory-match-hud-top h3{margin:0;font-size:clamp(1.35rem,2vw,1.72rem);line-height:1.12}.memory-match-page .memory-match-hud-top p:last-child{margin:0;max-width:60ch;line-height:1.55;opacity:.96}.memory-match-page .memory-match-hud-pills,.memory-match-page .memory-match-board-badges{display:flex;flex-wrap:wrap;gap:8px}.memory-match-page .memory-match-phase-pill,.memory-match-page .memory-match-summary-pill,.memory-match-page .memory-match-board-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.2);font-size:.82rem;font-weight:700;line-height:1.2;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.memory-match-page .memory-match-phase-pill{background:#fff8cd2e;border-color:#fff8cd57;color:#fff}.memory-match-page .memory-match-summary-pill{background:#082c282e;color:#fffffff2}.memory-match-page .memory-match-hud-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.memory-match-page .memory-match-hud-card{display:grid;gap:6px;align-content:start;min-height:110px;padding:14px 16px;border-radius:18px;background:#ffffff24;border:1px solid rgba(255,255,255,.2);box-shadow:inset 0 1px #ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.memory-match-page .memory-match-hud-card:hover{background:#ffffff2b;transform:none}.memory-match-page .memory-match-hud-card.is-phase{background:#fdf6d52e;border-color:#fff8cd57}.memory-match-page .memory-match-hud-label{font-size:.71rem;letter-spacing:.08em;text-transform:uppercase;opacity:.84;font-weight:700;line-height:1.25;white-space:normal;text-wrap:balance}.memory-match-page .memory-match-hud-value{font-size:clamp(1.06rem,1.8vw,1.4rem);line-height:1.18;font-weight:800;overflow-wrap:anywhere;text-wrap:balance}.memory-match-page .memory-match-hud-meta{font-size:.84rem;line-height:1.35;color:#f5fffbdb}.memory-match-page .memory-match-guidance{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,240px);gap:18px;align-items:end;padding:16px 18px;border-radius:20px;background:#082c282e;border:1px solid rgba(255,255,255,.16)}.memory-match-page .memory-match-guidance[data-tone=match]{background:#10b98124}.memory-match-page .memory-match-guidance[data-tone=mismatch]{background:#dc262624}.memory-match-page .memory-match-guidance-copy{min-width:0;display:grid;gap:6px}.memory-match-page .memory-match-guidance-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#f5fffbcc}.memory-match-page .memory-match-guidance-title{font-size:1.08rem;line-height:1.25;text-wrap:balance}.memory-match-page .memory-match-guidance-copy p{margin:0;line-height:1.5;color:#f5fffbeb}.memory-match-page .memory-match-guidance-progress{display:grid;gap:8px}.memory-match-page .memory-match-guidance-progress-label,.memory-match-page .memory-match-guidance-progress-note{font-size:.82rem;line-height:1.3;color:#f5fffbdb}.memory-match-page .memory-match-progress-track{position:relative;height:12px;border-radius:999px;overflow:hidden;background:linear-gradient(180deg,#ffffff29,#ffffff14);box-shadow:inset 0 2px 6px #0000001f,inset 0 1px #ffffff24}.memory-match-page .memory-match-progress-fill{display:block;position:relative;height:100%;border-radius:inherit;transition:width .22s ease;background-size:200% 100%;box-shadow:0 0 16px #ffd05c59,inset 0 1px #ffffff47;animation:memory-progress-flow 2.4s linear infinite}.memory-match-page .memory-match-progress-fill:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.36) 48%,transparent 100%);transform:translate(-100%);animation:memory-progress-shine 1.8s ease-in-out infinite}.memory-match-page .memory-match-progress-fill:after{content:"";position:absolute;top:50%;right:2px;width:10px;height:10px;border-radius:999px;transform:translateY(-50%);background:#ffffffe6;box-shadow:0 0 12px #ffffffb3}.memory-match-page .memory-match-progress-fill.is-preview{background-image:linear-gradient(90deg,#f5a524,#ffd34d 45%,#f59e0b)}.memory-match-page .memory-match-progress-fill.is-play{background-image:linear-gradient(90deg,#34d399,#8ef3c1 48%,#1ea672);box-shadow:0 0 18px #34d3994d,inset 0 1px #ffffff3d}.memory-match-page .memory-match-inline-summary{padding:22px 24px}.memory-match-page .memory-match-inline-summary-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start}.memory-match-page .memory-match-inline-summary-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.memory-match-page .memory-match-board-layout{gap:18px}.memory-match-page .memory-match-board-panel{padding:20px;border-radius:28px;background:radial-gradient(circle at top right,rgba(255,255,255,.08),transparent 28%),linear-gradient(180deg,#1b7f71,#145a4f);box-shadow:0 16px 36px #0f4f462e,0 28px 64px #0f4f461f}.memory-match-page .memory-match-board-panel.is-result-board{background:radial-gradient(circle at top right,rgba(255,255,255,.07),transparent 28%),linear-gradient(180deg,#17685d,#114d45)}.memory-match-session-shell[data-phase=preview] .memory-match-board-panel,.memory-match-session-shell[data-phase=play] .memory-match-board-panel{animation:none}.memory-match-page .memory-match-board-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;margin-bottom:8px}.memory-match-page .memory-match-board-toolbar{display:grid;gap:10px;justify-items:end}.memory-match-page .memory-match-board-header h3{margin:4px 0 0;font-size:clamp(1.12rem,1.5vw,1.28rem)}.memory-match-page .memory-match-board-badges{justify-content:flex-end}.memory-match-page .memory-match-board-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.memory-match-page .memory-match-action-btn{position:relative;min-height:44px;padding-inline:16px;white-space:nowrap;overflow:hidden;border-color:#ffffff42;background:linear-gradient(180deg,#ffffff29,#ffffff14);color:#fff;box-shadow:0 8px 18px #07352f2e,inset 0 1px #ffffff2e;transition:transform .14s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.memory-match-page .memory-match-action-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.22) 48%,transparent 100%);transform:translate(-120%);transition:transform .32s ease}.memory-match-page .memory-match-action-btn:hover{transform:translateY(-2px);border-color:#ffffff6b;box-shadow:0 12px 24px #07352f3d,0 0 0 1px #ffffff14,inset 0 1px #ffffff38}.memory-match-page .memory-match-action-btn:hover:before{transform:translate(120%)}.memory-match-page .memory-match-action-btn:active{transform:translateY(0);box-shadow:0 6px 12px #07352f2e,inset 0 2px 6px #00000029}.memory-match-page .memory-match-action-btn.is-primary{background:linear-gradient(135deg,#fff3,#fff4c738);border-color:#fff4c761}.memory-match-page .memory-match-board-badge{background:#ffffff1f;color:#fff}.memory-match-page .memory-match-board-badge.is-phase{background:#fff8cd2e;border-color:#fff8cd57}.memory-match-page .memory-match-board-note{margin:0 0 16px;max-width:50ch;color:#f5fffbd6;font-style:normal}.memory-match-page .memory-match-grid{width:100%;margin-inline:auto;gap:10px}.memory-match-page .memory-match-card{border-radius:20px;overflow:hidden;box-shadow:0 6px 18px #0000001a,0 10px 24px #0000000f}.memory-match-page .memory-match-card-face{gap:8px;padding:10px}.memory-match-page .memory-match-card-face:before{border-radius:20px}.memory-match-page .memory-match-card-icon{border-radius:16px}.memory-match-page .memory-match-card-caption{min-height:2.45em;padding:5px 6px 4px;background:linear-gradient(180deg,#fffffff2,#eaf3f6e0);color:#2f4a46;font-size:clamp(.64rem,.42vw + .52rem,.78rem);line-height:1.16;overflow-wrap:anywhere;text-wrap:balance}.memory-match-page .memory-match-grid.is-compact-board .memory-match-card-face{gap:6px;padding:7px}.memory-match-page .memory-match-grid.is-compact-board .memory-match-card-caption{min-height:2.2em;padding:4px 5px;font-size:clamp(.54rem,.22vw + .5rem,.66rem);line-height:1.1}.memory-match-page .memory-match-card.is-open{box-shadow:0 10px 24px #1e7f7138,0 4px 12px #1e7f711f;transform:translateY(-2px)}.memory-match-page .memory-match-card.is-matched{box-shadow:0 8px 20px #1e7f7138,0 4px 10px #1e7f711f}.memory-match-page .memory-match-card.is-matched .memory-match-card-icon{transform:scale(1.08)}.memory-match-page .memory-match-card.is-mismatch{box-shadow:0 8px 20px #dc26262e,0 4px 10px #dc26261a;animation:memory-card-shake .3s ease-in-out}.memory-match-page .memory-match-card.is-interactive:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 12px 28px #0000001f,0 6px 14px #00000014}.memory-match-page .memory-match-focus,.memory-match-page .memory-match-status{display:grid;gap:8px}.memory-match-page .memory-match-focus{background:linear-gradient(135deg,#fff6d9,#feefb5);box-shadow:0 10px 24px #f59e0b24,0 18px 36px #f59e0b14}.memory-match-page .memory-match-focus p,.memory-match-page .memory-match-status p,.memory-match-page .memory-match-status h3{margin:0}.memory-match-page .memory-match-status{padding:18px 20px;background:linear-gradient(135deg,#f7fcfa,#eefaf6);box-shadow:0 10px 24px #0f4f4614,0 18px 36px #0f4f460f}.memory-match-page .memory-match-status h3{font-size:1.12rem;line-height:1.24}.memory-match-page .memory-match-status-kicker{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#45736b}.memory-match-page .memory-match-status-meta{font-size:.9rem;color:#3f645e}.memory-match-page .memory-match-status-match{background:linear-gradient(135deg,#edfdf5,#dff7ea)}.memory-match-page .memory-match-status-mismatch{background:linear-gradient(135deg,#fef5f5,#fde6e6)}.memory-match-page .memory-match-inline-result{display:grid;gap:14px;padding:20px;background:linear-gradient(180deg,#fff,#f5fbf8);box-shadow:0 10px 24px #0f4f4614,0 18px 36px #0f4f460f}.memory-match-page .memory-match-inline-result h3,.memory-match-page .memory-match-inline-result p{margin:0}.memory-match-page .memory-match-inline-result-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.memory-match-page .memory-match-inline-result-metric{display:grid;gap:4px;padding:12px 14px;border-radius:16px;background:#f3faf7;border:1px solid #d8ece4}.memory-match-page .memory-match-inline-result-metric span{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#5b7973;font-weight:700}.memory-match-page .memory-match-inline-result-metric strong{font-size:1rem;line-height:1.25;color:#183e39;overflow-wrap:anywhere}.memory-match-page .memory-match-inline-result-metric.is-score{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#b5e9cf}.memory-match-page .memory-match-inline-result-callouts{display:grid;gap:10px}.memory-match-page .memory-match-inline-result-callout{display:grid;gap:6px;padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,#fff,#f4fbf8);border:1px solid #d8ece4}.memory-match-page .memory-match-inline-result-callout.is-strong{background:linear-gradient(135deg,#ecfdf5,#d8fae8);border-color:#b8ead1}.memory-match-page .memory-match-inline-result-callout.is-steady{background:linear-gradient(135deg,#effaf6,#e2f5ec);border-color:#cbe7da}.memory-match-page .memory-match-inline-result-callout.is-recover{background:linear-gradient(135deg,#fff8ea,#fef1d8);border-color:#f1d79a}.memory-match-page .memory-match-inline-result-callout h4,.memory-match-page .memory-match-inline-result-callout p{margin:0}.memory-match-page .memory-match-inline-result-copy{display:grid;gap:8px;color:#305954;line-height:1.55}.memory-match-page .memory-match-inline-result-note{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:#f5faf8;border:1px solid #dbece5}.memory-match-page .memory-match-inline-result-note strong{color:#173f39}.memory-match-page .memory-match-inline-result-save{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border-radius:999px;background:#e8f7f1;border:1px solid #bfe2d4;color:#1c5f52;font-weight:700}.memory-match-page .memory-match-inline-result-save-note{margin-top:-4px}.memory-match-page .memory-match-inline-result-actions{margin-top:2px}.trainer-feedback-card{display:grid;gap:14px;padding:18px;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbfa);border:1px solid #dbece6;box-shadow:0 10px 24px #0f4f460f}.trainer-feedback-card.is-saved{background:linear-gradient(135deg,#effaf6,#e1f5eb);border-color:#c8e8da}.trainer-feedback-card h4,.trainer-feedback-card p{margin:0}.trainer-feedback-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.trainer-feedback-dismiss{min-height:34px}.trainer-feedback-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.trainer-feedback-option{display:grid;gap:4px;padding:12px 14px;border-radius:16px;border:1px solid #d9e9e3;background:#f7fbf9;text-align:left;color:#20423c}.trainer-feedback-option strong{font-size:.96rem}.trainer-feedback-option span{font-size:.82rem;color:#5a7671}.trainer-feedback-option.is-active{background:linear-gradient(135deg,#ecfdf5,#d7f7e8);border-color:#a9dfc6;box-shadow:0 8px 18px #10b9811f}.trainer-feedback-reasons{display:grid;gap:10px}.trainer-feedback-reasons-label{font-size:.9rem;font-weight:700;color:#254640}.trainer-feedback-reason-list{display:flex;flex-wrap:wrap;gap:8px}.trainer-feedback-reason{min-height:34px;padding:7px 12px;border-radius:999px;border:1px solid #d6e8e1;background:#fff;color:#315850;font-size:.84rem;font-weight:700}.trainer-feedback-reason.is-active{background:#1d7f71;border-color:#1d7f71;color:#fff}.trainer-feedback-comment{display:grid;gap:8px;color:#375d56;font-size:.86rem}.trainer-feedback-comment textarea{width:100%;resize:vertical;min-height:88px;padding:12px 14px;border-radius:14px;border:1px solid #d7e8e2;background:#fff;color:#173f39;font:inherit}.trainer-feedback-actions{justify-content:flex-start}@keyframes memory-progress-flow{0%{background-position:0% 50%}to{background-position:200% 50%}}@keyframes memory-progress-shine{0%,to{transform:translate(-120%);opacity:0}25%{opacity:1}60%{transform:translate(120%);opacity:1}to{opacity:0}}.memory-match-page .result-box{margin-top:16px;padding:18px 20px;border:none;border-radius:22px;background:linear-gradient(180deg,#fff,#f6fcfa);box-shadow:0 12px 30px #0f292514,0 20px 42px #0f29250d}.memory-match-page .result-box h3{margin-bottom:12px}.memory-match-page .result-box p{line-height:1.55}.memory-match-page .result-box .action-row{margin-top:18px}@media(min-width:1100px){.memory-match-page .memory-match-board-layout{grid-template-columns:minmax(0,1fr) 320px}.memory-match-page .memory-match-side-panel{top:18px}}@media(max-width:900px){.memory-match-page .memory-match-hud-top,.memory-match-page .memory-match-board-header,.memory-match-page .memory-match-guidance,.memory-match-page .memory-match-inline-summary-head{grid-template-columns:1fr}.memory-match-page .memory-match-board-badges,.memory-match-page .memory-match-inline-summary-badges,.memory-match-page .memory-match-board-actions{justify-content:flex-start}.memory-match-page .memory-match-board-toolbar{justify-items:start}}@media(max-width:640px){.memory-match-page .memory-match-hud{padding:16px;border-radius:22px}.memory-match-page .memory-match-hud-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-match-page .memory-match-board-actions{width:100%}.memory-match-page .memory-match-action-btn{flex:1 1 160px}.memory-match-page .memory-match-guidance{padding:14px}.memory-match-page .memory-match-inline-summary,.memory-match-page .memory-match-inline-result{padding:16px}.memory-match-page .memory-match-board-panel{padding:14px;border-radius:22px}.memory-match-page .memory-match-grid{gap:8px}.memory-match-page .memory-match-preview-icon{width:46px;height:46px}}@media(max-width:480px){.memory-match-page .memory-match-hud-metrics{grid-template-columns:1fr 1fr}.memory-match-page .memory-match-inline-result-metrics{grid-template-columns:1fr}.memory-match-page .memory-match-grid.is-compact-board .memory-match-card-face{grid-template-rows:1fr;padding:6px}.memory-match-page .memory-match-grid.is-compact-board .memory-match-card-caption{display:none}}@media(prefers-reduced-motion:reduce){.memory-match-page .memory-match-preview-icon,.memory-match-page .memory-match-card,.memory-match-page .memory-match-progress-fill,.memory-match-page .memory-match-hud-actions .btn-secondary,.memory-match-page .memory-match-hud-actions .btn-ghost{animation:none!important;transition:none!important}.memory-match-page .memory-match-card.is-open,.memory-match-page .memory-match-card.is-interactive:hover,.memory-match-page .memory-match-preview-icon:hover{transform:none!important}}.spatial-grid,.pattern-grid{margin-top:14px;display:grid;grid-template-columns:repeat(var(--spatial-grid-size, 4),minmax(0,1fr));gap:clamp(10px,1vw,14px);width:min(100%,var(--spatial-grid-max, 560px));max-width:var(--spatial-grid-max, 560px)}.spatial-memory-page{position:relative;display:grid;gap:22px;overflow:hidden}.spatial-memory-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top left,rgba(45,157,138,.12),transparent 24%),radial-gradient(circle at 85% 18%,rgba(255,202,124,.12),transparent 18%),linear-gradient(180deg,#f7fcfab3,#eef7f31f);pointer-events:none}.spatial-memory-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);gap:20px;align-items:start;z-index:1}.spatial-memory-hero-copy,.spatial-memory-hero-status,.spatial-memory-stage,.spatial-memory-info-card,.spatial-memory-progression-note,.spatial-memory-side-note,.spatial-memory-result-feedback,.spatial-memory-session-notes,.spatial-memory-result-summary,.spatial-memory-growth-card{display:grid;gap:10px}.spatial-memory-hero-copy,.spatial-memory-hero-status>.spatial-memory-status-card,.spatial-memory-stage{padding:22px;border-radius:28px;border:1px solid rgba(190,218,209,.9);box-shadow:0 18px 42px #145b531a,0 28px 58px #145b530d}.spatial-memory-hero-copy h2,.spatial-memory-stage h3{margin:0;color:#123a34}.spatial-memory-hero-copy h2{font-size:clamp(2rem,3vw,2.7rem);line-height:.96}.spatial-memory-hero-copy p,.spatial-memory-stage-head p,.spatial-memory-info-card p,.spatial-memory-side-note p,.spatial-memory-result-feedback p{margin:0;color:#4a6962;line-height:1.55}.spatial-memory-hero-meta,.spatial-memory-stage-metrics,.spatial-memory-setup-grid,.spatial-memory-result-cards{display:grid;gap:12px}.spatial-memory-hero-meta{grid-template-columns:repeat(auto-fit,minmax(140px,max-content))}.spatial-memory-hero-copy{background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 32%),linear-gradient(135deg,#1c7d6f,#238f80 56%,#15594f);border-color:#ffffff1f;color:#fff}.spatial-memory-hero-copy .stats-section-kicker,.spatial-memory-hero-copy h2,.spatial-memory-hero-copy p{color:#fff}.spatial-memory-hero-copy p{max-width:58ch;color:#ffffffeb}.spatial-memory-chip{display:inline-flex;align-items:center;min-height:36px;justify-content:center;padding:0 14px;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:inherit;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.spatial-memory-hero-status{align-content:start;gap:14px}.spatial-memory-growth-pills{display:flex;flex-wrap:wrap;gap:10px}.spatial-memory-status-card strong{color:#143b36;font-size:1.18rem}.spatial-memory-status-card p{margin:0;color:#4b6a63;line-height:1.55}.spatial-memory-hero-status>.spatial-memory-status-card{background:linear-gradient(180deg,#fffffff5,#f3f9f6eb)}.spatial-memory-growth-card{background:radial-gradient(circle at top right,rgba(13,148,136,.12),transparent 30%),linear-gradient(180deg,#fff,#f3faf7)}.spatial-memory-status-label,.spatial-memory-stage-label,.spatial-memory-metric-label,.spatial-memory-info-label{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#5a7c75}.spatial-memory-stage{position:relative;gap:20px;background:radial-gradient(circle at top right,rgba(45,157,138,.14),transparent 30%),linear-gradient(180deg,#fbfdfc,#f4faf8)}.spatial-memory-stage[data-phase=memorize],.spatial-memory-stage[data-phase=recall]{background:radial-gradient(circle at top right,rgba(45,157,138,.16),transparent 26%),linear-gradient(180deg,#f5fbf9,#edf8f3)}.spatial-memory-stage[data-phase=result]{background:radial-gradient(circle at top right,rgba(255,193,112,.18),transparent 24%),linear-gradient(180deg,#fbfdfc,#f6faf8)}.spatial-memory-stage-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:flex-start}.spatial-memory-stage-copy{min-width:0;display:grid;gap:10px}.spatial-memory-stage-copy h3{font-size:clamp(1.34rem,2vw,1.72rem);text-wrap:balance}.spatial-memory-stage-pills{display:flex;flex-wrap:wrap;gap:8px}.spatial-memory-stage-pill{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border-radius:999px;background:#eef7f4;border:1px solid #d7e9e2;color:#295851;font-size:.82rem;font-weight:700}.spatial-memory-stage-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.spatial-memory-stage-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.spatial-memory-metric-card,.spatial-memory-info-card,.spatial-memory-result-card,.spatial-memory-progression-note{padding:16px;border-radius:20px;background:linear-gradient(180deg,#fffffff0,#f7fbf9f0);border:1px solid rgba(20,91,83,.08);box-shadow:0 10px 24px #0f4f460d}.spatial-memory-metric-card strong,.spatial-memory-info-card strong,.spatial-memory-result-card strong,.spatial-memory-side-note strong,.spatial-memory-result-feedback strong{display:block;color:#163f39}.spatial-memory-metric-card strong,.spatial-memory-result-card strong{margin-top:4px;font-size:1.28rem}.spatial-memory-metric-card span:last-child,.spatial-memory-result-card span{color:#5d7b74;font-size:.88rem}.spatial-memory-metric-card{min-height:118px}.spatial-memory-setup-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spatial-memory-progression-note{background:radial-gradient(circle at top right,rgba(13,148,136,.16),transparent 32%),linear-gradient(135deg,#ebfcf7fa,#dff7eff5);border-color:#0d948833}.spatial-memory-board-wrap,.spatial-memory-result-main{display:grid;grid-template-columns:minmax(0,760px) minmax(280px,1fr);gap:18px;align-items:start}.spatial-memory-result-primary{display:grid;gap:12px;align-content:start}.spatial-memory-board-panel,.spatial-memory-side-note,.spatial-memory-result-feedback,.spatial-memory-session-notes{padding:18px;border-radius:24px;border:1px solid rgba(20,91,83,.08)}.spatial-memory-board-panel{display:grid;gap:16px;align-content:start;background:radial-gradient(circle at top right,rgba(255,255,255,.16),transparent 28%),linear-gradient(180deg,#1b7f71,#155d52);box-shadow:0 16px 34px #0f4f4629,0 26px 54px #0f4f461a}.spatial-memory-board-panel[data-tone=preview]{background:radial-gradient(circle at 18% 14%,rgba(255,249,222,.12),transparent 24%),radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 28%),linear-gradient(135deg,#155f57,#1b7f71 46%,#207f86)}.spatial-memory-board-panel[data-tone=recall]{background:radial-gradient(circle at top right,rgba(255,255,255,.14),transparent 26%),linear-gradient(135deg,#11554f,#186f66 48%,#1d8a7d)}.spatial-memory-board-panel--result{background:radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 26%),linear-gradient(180deg,#134b45,#103d37)}.spatial-memory-board-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;color:#fff}.spatial-memory-board-head strong{display:block;margin-top:4px;font-size:1.08rem}.spatial-memory-board-head .spatial-memory-info-label{color:#ffffffb8}.spatial-memory-board-state{display:inline-flex;align-items:center;justify-content:center;min-height:34px;min-width:172px;padding:7px 12px;border-radius:999px;background:#ffffff24;border:1px solid rgba(255,255,255,.22);color:#fff;font-size:.82rem;font-weight:700;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.spatial-memory-board-progress{display:grid;gap:8px}.spatial-memory-board-progress-copy{display:flex;justify-content:space-between;gap:10px;align-items:center;color:#ffffffe0;font-size:.84rem}.spatial-memory-board-progress-copy strong{color:#fff}.spatial-memory-board-progress-track{height:12px;border-radius:999px;overflow:hidden;background:linear-gradient(180deg,#ffffff29,#ffffff14);box-shadow:inset 0 1px 4px #00000024,inset 0 1px #ffffff1a}.spatial-memory-board-progress-fill{display:block;height:100%;border-radius:inherit;background-size:200% 100%;box-shadow:0 0 16px #ffcd7040,inset 0 1px #ffffff47;animation:memory-progress-flow 2.6s linear infinite}.spatial-memory-board-progress-fill.is-preview{background-image:linear-gradient(90deg,#f5a524,#ffd34d 45%,#f59e0b)}.spatial-memory-board-progress-fill.is-recall{background-image:linear-gradient(90deg,#34d399,#8ef3c1 48%,#1ea672)}.spatial-memory-side-note,.spatial-memory-result-feedback,.spatial-memory-session-notes{background:linear-gradient(180deg,#fffffff5,#f6fbf9f0);box-shadow:0 10px 24px #0f4f460d}.spatial-memory-side-note{position:relative;overflow:hidden}.spatial-memory-side-note:before{content:"";position:absolute;inset:auto -24px -24px auto;width:120px;height:120px;border-radius:999px;background:radial-gradient(circle,rgba(36,143,128,.14),transparent 68%);pointer-events:none}.spatial-memory-result-feedback[data-tone=strong]{background:linear-gradient(135deg,#e9fcf4fa,#dcf7e9f5);border-color:#20a46e29}.spatial-memory-result-feedback[data-tone=warning]{background:linear-gradient(135deg,#fff6e9fa,#ffefdaf5);border-color:#f59e0b33}.spatial-memory-result-feedback[data-tone=steady]{background:linear-gradient(135deg,#f1f8fffa,#e8f3fcf5);border-color:#3b82f629}.spatial-cell,.pattern-cell,.spatial-cell-button,.pattern-cell-button{width:100%;aspect-ratio:1 / 1;border-radius:18px}.spatial-cell,.pattern-cell{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.09),transparent 34%),linear-gradient(180deg,#11484157,#0a312c42);box-shadow:inset 0 1px #ffffff14,inset 0 0 0 1px #ffffff0a}.spatial-cell.is-target,.pattern-cell.is-active{background:linear-gradient(180deg,#86e4cf,#5bc9b1);border-color:#effffac7;box-shadow:0 10px 24px #2eb29738,inset 0 1px #ffffff57,inset 0 0 0 1px #ffffff1f}.spatial-cell-signal{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:1px solid rgba(255,255,255,.18);background:linear-gradient(180deg,#ffffff29,#ffffff05);animation:none;pointer-events:none}.spatial-cell-button,.pattern-cell-button{display:block;padding:0;border:1px solid rgba(255,255,255,.22);background:linear-gradient(180deg,#fffffff5,#f1f9f5eb);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;box-shadow:0 10px 22px #0939331a,inset 0 1px #ffffffe6;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.spatial-cell-button.is-selected,.pattern-cell-button.is-selected{background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.2),transparent 28%),linear-gradient(145deg,#d9f4ec,#bcebdd);border-color:#2d9d8a70;box-shadow:0 12px 24px #2d9d8a2e,inset 0 1px #ffffffd1}.spatial-cell-button.is-live-hit{background:radial-gradient(circle at 34% 30%,rgba(255,255,255,.28),transparent 26%),linear-gradient(145deg,#89ead4,#54cdb0 52%,#2ca184);border-color:#e0fff4d6;box-shadow:0 14px 28px #1fa68638,inset 0 1px #ffffffeb}.spatial-cell-button.is-live-miss{background:radial-gradient(circle at 34% 30%,rgba(255,255,255,.24),transparent 26%),linear-gradient(145deg,#ffd7db,#f8a5af 54%,#ef6d81);border-color:#991b1b85;box-shadow:0 12px 24px #d63d5433,inset 0 1px #ffffffd6}.spatial-cell-button:hover{transform:translateY(-2px);border-color:#2d9d8a70;box-shadow:0 14px 28px #2d9d8a29,inset 0 1px #ffffffe0}.spatial-cell-button.is-hit{background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.28),transparent 28%),linear-gradient(145deg,#ebfff5,#c9f6df 46%,#b1ebce);border-color:#149861;box-shadow:0 14px 28px #1498612e,inset 0 1px #ffffffe6}.spatial-cell-button.is-missed{background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.22),transparent 28%),linear-gradient(145deg,#fff7de,#ffe7af 54%,#ffd97d);border-color:#f0a313;box-shadow:0 12px 24px #f0a31329,inset 0 1px #ffffffd1}.spatial-cell-button.is-false-hit{background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.2),transparent 28%),linear-gradient(145deg,#ffe8e9,#ffcfd3 52%,#ffb2bb);border-color:#d63d54;box-shadow:0 12px 24px #d63d5429,inset 0 1px #ffffffd1}@keyframes spatial-target-pulse{0%,to{transform:scale(.96);opacity:.92}50%{transform:scale(1);opacity:1}}.spatial-memory-result-shell{display:grid;gap:18px;animation:memory-result-rise .34s cubic-bezier(.4,0,.2,1)}.spatial-memory-result-summary{align-content:start;gap:14px}.spatial-memory-result-actions{margin-top:0;justify-content:flex-start}.spatial-memory-result-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.spatial-memory-session-notes p,.spatial-memory-result-feedback p,.spatial-memory-side-note p{margin:0}.spatial-memory-page .btn-primary,.spatial-memory-page .btn-secondary,.spatial-memory-page .btn-ghost{min-height:44px;border-radius:16px}.spatial-memory-page .btn-primary{box-shadow:0 12px 24px #1d7f7138,inset 0 1px #ffffff24}.spatial-memory-page .btn-primary:hover,.spatial-memory-page .btn-secondary:hover,.spatial-memory-page .btn-ghost:hover{transform:translateY(-1px)}@media(max-width:900px){.spatial-memory-hero,.spatial-memory-board-wrap,.spatial-memory-result-main{grid-template-columns:1fr}.spatial-memory-stage-metrics,.spatial-memory-result-cards,.spatial-memory-setup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spatial-memory-stage-head,.spatial-memory-board-head{grid-template-columns:1fr}}@media(max-width:640px){.spatial-memory-page{gap:16px}.spatial-memory-hero-copy,.spatial-memory-hero-status>.spatial-memory-status-card,.spatial-memory-stage{padding:16px;border-radius:20px}.spatial-memory-stage-head{grid-template-columns:1fr}.spatial-memory-stage-actions{justify-content:flex-start}.spatial-memory-stage-metrics,.spatial-memory-result-cards,.spatial-memory-setup-grid{grid-template-columns:1fr}.spatial-grid,.pattern-grid{max-width:none}.spatial-memory-board-panel,.spatial-memory-side-note,.spatial-memory-result-feedback,.spatial-memory-session-notes{padding:16px;border-radius:20px}}.training-alpha-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.training-alpha-card{display:grid;gap:6px;border:1px solid #c2ddd4;border-radius:14px;background:#f6fcfa;padding:12px;color:#143b36;text-decoration:none}.training-alpha-card:hover{border-color:#7fc6b2;transform:translateY(-1px)}.training-alpha-title{font-weight:700}.training-alpha-desc{color:#406760;font-size:.9rem}.chart-window-row{align-items:center;gap:8px;flex-wrap:wrap}.training-hub-panel{padding:24px}.training-hub-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px;padding:26px;border-radius:28px;background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 32%),linear-gradient(135deg,#145b53,#1e7f71 45%,#49b88f);color:#fff;box-shadow:0 20px 46px #145b5338;margin-bottom:0}.training-hub-hero-content{display:grid;gap:10px;align-content:start}.training-hub-kicker{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;opacity:.78;font-weight:800}.training-hub-title{margin:0;font-size:clamp(2rem,4vw,2.8rem);line-height:.96;font-weight:900;letter-spacing:-.03em}.training-hub-subtitle{margin:0;max-width:62ch;font-size:1.02rem;line-height:1.55;color:#ffffffeb}.training-hub-today-card{display:grid;gap:10px;align-content:start;padding:18px 18px 16px;border-radius:22px;background:#ffffff24;border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 1px #ffffff1f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.training-hub-today-kicker{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;opacity:.8}.training-hub-today-card h2,.training-hub-today-card p{margin:0}.training-hub-today-card h2{font-size:1.25rem;line-height:1.1}.training-hub-today-card p{line-height:1.45;color:#ffffffeb}.training-hub-today-pills{display:flex;flex-wrap:wrap;gap:8px}.training-hub-today-pill{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#ffffff29;border:1px solid rgba(255,255,255,.14);color:#ffffffeb;font-size:.8rem;font-weight:800}.training-hub-today-action{display:inline-flex;justify-self:start;align-items:center;min-height:40px;padding:0 14px;border-radius:14px;background:#ffffffeb;color:#145b53;text-decoration:none;font-weight:800;box-shadow:0 10px 22px #0d332e29;transition:transform .15s ease,box-shadow .15s ease}.training-hub-today-action:hover{transform:translateY(-2px);box-shadow:0 14px 26px #0d332e33}.training-skill-system-strip{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;border-radius:24px;border:1px solid #d8e9e3;background:linear-gradient(180deg,#fffffff5,#f7fbfa);box-shadow:inset 0 1px #fffc}.training-skill-system-copy{display:grid;gap:8px;min-width:0}.training-skill-system-copy h3,.training-skill-system-copy p,.training-skill-system-pill{margin:0}.training-skill-system-copy h3{font-size:1.18rem;color:#143b36}.training-skill-system-copy p{color:#446962;line-height:1.55}.training-skill-system-meta{display:flex;flex-wrap:wrap;gap:10px}.training-skill-system-pill{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:#ecf6f3;color:#2f5e56;font-size:.82rem;font-weight:800}.training-skill-system-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.training-skill-system-link{display:inline-flex;align-items:center;min-height:40px;color:#1b6158;text-decoration:none;font-weight:800}.training-skill-system-link:hover{text-decoration:underline}.training-skill-tabs-shell{margin-top:18px;display:grid;gap:16px}.training-skill-tabs-head{display:flex;justify-content:space-between;align-items:end;gap:16px}.training-skill-tabs-head h2,.training-main-catalog-head h2,.training-scenario-focus-head h2,.training-skill-secondary-head h3,.training-alpha-section-head h2{margin:0}.training-skill-tabs-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(172px,1fr));gap:12px}.training-skill-tab{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;min-height:92px;padding:14px 16px;border-radius:22px;border:1px solid #d5e7e0;background:linear-gradient(180deg,#fff,#f8fcfb);color:#24524b;text-align:left;font:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease}.training-skill-tab:hover{transform:translateY(-2px);border-color:var(--skill-accent, #1e7f71);box-shadow:0 14px 28px #145b5314}.training-skill-tab.is-active{background:linear-gradient(180deg,color-mix(in srgb,var(--skill-accent, #1e7f71) 14%,white),color-mix(in srgb,var(--skill-accent, #1e7f71) 8%,white));border-color:color-mix(in srgb,var(--skill-accent, #1e7f71) 56%,white);box-shadow:0 18px 36px #145b531f}.training-skill-tab-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:var(--skill-accent, #1e7f71);background:color-mix(in srgb,var(--skill-accent, #1e7f71) 12%,white);box-shadow:inset 0 1px #ffffffbf}.training-skill-tab-copy{display:grid;gap:3px;min-width:0}.training-skill-tab-label{font-size:1rem;font-weight:800;line-height:1.15}.training-skill-tab-hint{color:#63837b;font-size:.84rem;line-height:1.25}.training-skill-tab-meta{color:#7a9891;font-size:.75rem;line-height:1.3;font-weight:700}.training-skill-tab.is-active .training-skill-tab-meta{color:color-mix(in srgb,var(--skill-accent, #1e7f71) 72%,#35544d)}.training-skill-panel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:18px;padding:24px;border-radius:28px;background:linear-gradient(180deg,color-mix(in srgb,var(--skill-accent, #1e7f71) 8%,white),#f7fbfa);border:1px solid color-mix(in srgb,var(--skill-accent, #1e7f71) 24%,white);box-shadow:0 20px 42px #145b5317}.training-skill-panel-main,.training-skill-panel-side{display:grid;gap:12px;align-content:start}.training-skill-panel h3,.training-skill-panel p,.training-skill-panel-callout p,.training-skill-panel-callout strong{margin:0}.training-skill-panel h3{font-size:1.55rem;color:#143b36}.training-skill-panel-description{font-size:1rem;line-height:1.6;color:#2b5a53}.training-skill-panel-why{font-size:.95rem;line-height:1.55;color:#52726b}.training-skill-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.training-skill-route-card{display:grid;gap:5px;padding:14px 15px;border-radius:18px;background:#ffffffbd;border:1px solid rgba(20,91,83,.1);box-shadow:inset 0 1px #ffffffb3}.training-skill-route-card strong,.training-skill-route-card span{margin:0}.training-skill-route-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#688881;font-weight:800}.training-skill-route-card strong{font-size:1rem;color:#143b36}.training-skill-route-card span:last-child{font-size:.82rem;line-height:1.45;color:#52726b}.training-skill-progress{display:grid;gap:10px;margin-top:4px;padding:16px;border-radius:20px;background:#ffffffb8;border:1px solid rgba(20,91,83,.1);box-shadow:inset 0 1px #ffffffb3}.training-skill-progress-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.training-skill-progress-head strong,.training-skill-progress-head span,.training-skill-progress-note,.training-skill-progress-metric span,.training-skill-progress-metric strong{margin:0}.training-skill-progress-state{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.78rem;font-weight:800}.training-skill-progress-state.is-up{background:#e8f7ef;color:#1b7a55}.training-skill-progress-state.is-down{background:#fdf0ea;color:#b45309}.training-skill-progress-state.is-steady{background:#eef6f3;color:#3f6c63}.training-skill-progress-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.training-skill-progress-metric{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:#f7fbfa;border:1px solid #d8e9e3}.training-skill-progress-metric span{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:#67857e;font-weight:700}.training-skill-progress-metric strong{font-size:1.02rem;color:#143b36}.training-skill-progress-bar{height:10px;border-radius:999px;background:#dfeee8;overflow:hidden}.training-skill-progress-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--skill-accent, #1e7f71) 0%,color-mix(in srgb,var(--skill-accent, #1e7f71) 45%,#f2c14e) 100%)}.training-skill-progress-confidence{margin:0;font-size:.84rem;line-height:1.45;color:#64837c}.training-skill-progress-note{font-size:.92rem;line-height:1.5;color:#395f59}.training-skill-panel-callout{display:grid;gap:6px;padding:15px 16px;border-radius:20px;background:#ffffffb8;border:1px solid rgba(20,91,83,.1)}.training-skill-panel-callout.muted{background:#ffffff7a}.training-skill-start-card{display:grid;gap:8px;padding:18px;border-radius:22px;border:1px solid color-mix(in srgb,var(--scenario-color, #1e7f71) 26%,white);background:linear-gradient(180deg,color-mix(in srgb,var(--scenario-color, #1e7f71) 16%,white),#fffffff0);color:#173c36;text-decoration:none;box-shadow:0 14px 26px #145b5314;transition:transform .15s ease,box-shadow .15s ease}.training-skill-start-card:hover{transform:translateY(-2px);box-shadow:0 18px 30px #145b531f}.training-skill-start-kicker{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#5b7e76;font-weight:800}.training-skill-start-card strong{font-size:1.08rem}.training-skill-start-card p,.training-skill-start-meta,.training-skill-start-cta{margin:0}.training-skill-start-meta{color:#63837c;font-size:.92rem}.training-skill-start-cta{display:inline-flex;justify-self:start;align-items:center;padding:9px 12px;border-radius:999px;background:color-mix(in srgb,var(--scenario-color, #1e7f71) 14%,white);color:var(--scenario-color, #1e7f71);font-weight:800}.training-skill-featured{grid-column:1 / -1;display:grid;gap:14px;padding-top:10px;border-top:1px solid rgba(20,91,83,.1)}.training-skill-featured-head{display:flex;justify-content:space-between;align-items:end;gap:14px}.training-skill-featured-head h3,.training-skill-featured-head p,.training-skill-featured-pill{margin:0}.training-skill-featured-head h3{font-size:1.08rem;color:#143b36}.training-skill-featured-head p{color:#587871;font-size:.92rem;line-height:1.45}.training-skill-featured-pill{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:color-mix(in srgb,var(--skill-accent, #1e7f71) 12%,white);color:var(--skill-accent, #1e7f71);font-size:.82rem;font-weight:800;white-space:nowrap}.training-modules-grid-featured-inline{margin-top:0}.training-skill-panel-callout-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#6b8b83;font-weight:800}.training-scenario-focus,.training-main-catalog,.training-quick-actions{margin-top:20px}.training-scenario-focus-head,.training-main-catalog-head,.training-skill-secondary-head,.training-alpha-section-head,.training-quick-actions-head{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:12px}.training-main-catalog-head p,.training-alpha-section-head p,.training-quick-actions-head p{max-width:56ch}.training-scenario-focus-card{display:grid;gap:8px;padding:18px;border-radius:22px;border:1px solid color-mix(in srgb,var(--scenario-color, #1e7f71) 22%,white);background:linear-gradient(180deg,color-mix(in srgb,var(--scenario-color, #1e7f71) 8%,white),#fff);color:#173c36;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}.training-scenario-focus-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #145b531a}.training-scenario-kicker{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#5b7e76;font-weight:800}.training-scenario-focus-card strong{font-size:1.1rem}.training-scenario-focus-card p,.training-scenario-meta,.training-scenario-cta{margin:0}.training-scenario-meta{color:#63837c;font-size:.92rem}.training-scenario-cta{display:inline-flex;justify-self:start;align-items:center;padding:9px 12px;border-radius:999px;background:color-mix(in srgb,var(--scenario-color, #1e7f71) 14%,white);color:var(--scenario-color, #1e7f71);font-weight:800}.training-modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.training-modules-grid-secondary{margin-top:12px}.training-module-card{border-radius:22px;background:var(--card-bg-light, rgba(30, 127, 113, .08));border:1px solid rgba(20,91,83,.12);overflow:hidden;display:flex;flex-direction:column;min-height:100%;box-shadow:0 8px 22px #145b530d;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.training-module-card:hover{transform:translateY(-4px);box-shadow:0 18px 34px #145b531c;border-color:var(--card-color, #1e7f71)}.training-module-card.is-featured{box-shadow:0 14px 32px #145b5317}.module-card-link{display:flex;gap:16px;padding:18px;text-decoration:none;color:inherit;flex:1}.module-card-icon{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;color:#fff;flex-shrink:0;box-shadow:0 10px 20px #00000029}.module-card-content{display:grid;gap:10px;min-width:0}.module-card-priority{display:inline-flex;justify-self:start;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#ffffffdb;color:var(--card-color, #1e7f71);font-size:.76rem;font-weight:900;letter-spacing:.03em}.module-card-badges{display:flex;flex-wrap:wrap;gap:8px}.module-card-head{display:flex;align-items:start;justify-content:space-between;gap:8px}.module-card-title,.module-card-desc,.module-card-skill-line,.module-card-best-for{margin:0}.module-card-title{font-size:1.12rem;font-weight:800;color:#143b36}.module-card-time{padding:4px 8px;border-radius:999px;background:#ffffffb8;color:#557771;font-size:.78rem;font-weight:800;white-space:nowrap}.module-card-skill-line{font-size:.85rem;color:#4d6c66;font-weight:700}.module-card-desc{font-size:.92rem;color:#40655e;line-height:1.5}.module-card-scenarios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.module-card-scenario{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:#ffffffb8;border:1px solid rgba(20,91,83,.09)}.module-card-scenario.subtle{background:#ffffff85}.module-card-scenario-kicker{font-size:.72rem;line-height:1.2;text-transform:uppercase;letter-spacing:.05em;color:#6e8c85;font-weight:800}.module-card-scenario strong{font-size:.88rem;line-height:1.35;color:#173c36}.module-card-tags{display:flex;flex-wrap:wrap;gap:6px}.module-card-tag{padding:5px 9px;border-radius:999px;background:#ffffffb8;color:#486b64;font-size:.78rem;font-weight:700}.module-card-actions{margin-top:auto;padding-top:8px}.module-card-cta{display:inline-flex;align-items:center;gap:6px;font-size:.95rem;font-weight:800;color:var(--card-color, #1e7f71)}.module-card-cta .arrow{transition:transform .18s ease}.module-card-link:hover .module-card-cta .arrow{transform:translate(4px)}.module-card-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 18px 16px;border-top:1px solid rgba(20,91,83,.08);background:#ffffff73}.module-card-best-for{color:#4e716a;font-size:.82rem;line-height:1.35}.module-presession-link{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:12px;background:#fff;border:1px solid #d7e6e0;color:#43635e;font-size:.88rem;font-weight:700;text-decoration:none}.module-card-badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:999px;background:#ffffffd1;color:#305b54;border:1px solid rgba(20,91,83,.1);font-size:.76rem;font-weight:800}.module-card-badge.is-soft{background:#ffffff8f;color:#557872}.module-card-badge.locked{background:#fef3c7;color:#92400e;border:1px solid #f3c85f}.pre-session-growth-focus{display:grid;gap:10px}.pre-session-growth-pills{display:flex;flex-wrap:wrap;gap:8px}.pre-session-growth-pill{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:#0f766e14;border:1px solid rgba(15,118,110,.12);color:#24524b;font-size:.82rem;font-weight:800}.training-skill-secondary{margin-top:16px;padding-top:14px;border-top:1px solid #dbe9e4}.training-alpha-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.training-alpha-card{display:grid;gap:12px;border:1px solid #d5e7e0;border-radius:20px;background:radial-gradient(circle at top right,rgba(245,183,75,.08),transparent 30%),linear-gradient(180deg,#fbfdfc,#f5faf8);padding:16px;color:#143b36;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.training-alpha-card:hover{border-color:#a9d4c7;transform:translateY(-2px);box-shadow:0 14px 28px #145b530f}.training-alpha-topline{display:flex;align-items:start;justify-content:space-between;gap:10px}.training-alpha-meta-row{display:flex;flex-wrap:wrap;gap:8px}.training-alpha-chip{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;background:#127e7114;border:1px solid rgba(18,126,113,.14);font-size:.78rem;font-weight:700;color:#245b55}.training-alpha-title{font-weight:800;font-size:1.02rem}.training-alpha-desc{color:#406760;font-size:.9rem;line-height:1.45}.training-alpha-progress-block{display:grid;gap:8px;padding:12px 13px;border-radius:16px;background:#ffffffc7;border:1px solid rgba(188,218,208,.92)}.training-alpha-progress-head,.experimental-module-status-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.training-alpha-progress-label{font-size:.88rem;font-weight:800;color:#194841}.training-alpha-progress-value{font-size:1rem;font-weight:900;color:#0f766e}.training-alpha-progress-track{position:relative;overflow:hidden;height:11px;border-radius:999px;background:linear-gradient(180deg,#bcdad0e6,#a2cabee6);box-shadow:inset 0 1px 3px #00000014}.training-alpha-progress-fill{position:relative;display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f4b63f,#f59e0b 45%,#facc15);box-shadow:0 0 20px #f59e0b47}.training-alpha-progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.34) 50%,transparent 100%);transform:translate(-100%);animation:training-alpha-progress-shine 2.6s ease-in-out infinite}.training-alpha-progress-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 12px;font-size:.8rem;color:#53756e}.training-alpha-next-step{display:grid;gap:4px;padding:12px 13px;border-radius:16px;background:linear-gradient(180deg,#0f766e14,#0f766e08);border:1px solid rgba(15,118,110,.12)}.training-alpha-next-kicker{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#3b6a62}.training-alpha-next-step strong{font-size:.95rem;color:#163f39}.training-alpha-next-step p{margin:0;font-size:.86rem;line-height:1.45;color:#466a63}.training-alpha-next-target{font-size:.8rem;font-weight:700;color:#0f766e}.training-alpha-readiness,.experimental-module-readiness{display:grid;gap:4px;padding:12px 13px;border-radius:16px;border:1px solid rgba(20,91,83,.12);background:#ffffffd6}.training-alpha-readiness.is-not_ready,.experimental-module-readiness.is-not_ready{background:linear-gradient(180deg,#fff5e6f2,#fffaf2f2);border-color:#f59e0b38}.training-alpha-readiness.is-nearly_ready,.experimental-module-readiness.is-nearly_ready{background:linear-gradient(180deg,#eefcf5f2,#f7fffbf2);border-color:#10b98138}.training-alpha-readiness.is-ready,.experimental-module-readiness.is-ready{background:linear-gradient(180deg,#e2fcf1f5,#f3fff9f5);border-color:#05966947}.training-alpha-readiness-kicker{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#5b7068}.training-alpha-readiness strong,.experimental-module-readiness strong{font-size:.94rem;color:#173f39}.experimental-module-readiness span{font-size:.85rem;font-weight:700;color:#0f766e}.training-alpha-readiness p,.experimental-module-readiness p{margin:0;font-size:.84rem;line-height:1.45;color:#4a6b64}.experimental-module-status{display:grid;gap:10px;margin:14px 0 18px;background:linear-gradient(180deg,#f7fcfa,#eef7f4)}.experimental-module-status h3{margin:0}@keyframes training-alpha-progress-shine{0%{transform:translate(-100%)}to{transform:translate(180%)}}.training-quick-actions{padding-top:18px;border-top:1px solid #d9e8e3}.training-quick-actions-head h2,.training-quick-actions-head p{margin:0}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:14px}.quick-action-card{display:flex;flex-direction:column;align-items:start;gap:8px;padding:18px;border-radius:18px;background:linear-gradient(180deg,#f7fcfa,#eef7f4);border:1px solid #cfe4dc;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.quick-action-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px #145b5314;border-color:#9fc9bd}.quick-action-icon{font-size:1.6rem}.quick-action-title{font-size:1rem;font-weight:800;color:#143b36}.quick-action-desc{font-size:.88rem;color:#456760;line-height:1.45}@media(max-width:900px){.training-hub-hero,.training-skill-panel,.training-skill-tabs-head,.training-scenario-focus-head,.training-main-catalog-head,.training-skill-secondary-head,.training-alpha-section-head,.training-quick-actions-head{grid-template-columns:1fr;flex-direction:column;align-items:start}.training-skill-route-grid,.training-skill-progress-metrics{grid-template-columns:1fr}.module-card-link,.module-card-footer{flex-direction:column;align-items:start}}@media(max-width:700px){.training-hub-panel{padding:16px}.training-hub-hero,.training-skill-panel,.training-scenario-focus-card{padding:18px;border-radius:22px}.training-skill-tabs-row{grid-template-columns:repeat(2,minmax(0,1fr))}.training-skill-system-actions{width:100%;flex-direction:column;align-items:stretch}.training-skill-system-link,.training-hub-today-action{justify-content:center}.training-skill-tab{width:auto;min-height:84px;padding:12px 14px;justify-content:center}.training-modules-grid,.training-alpha-grid,.quick-actions-grid{grid-template-columns:1fr}}@media(max-width:520px){.training-skill-tabs-row{grid-template-columns:1fr}}.daily-training-widget{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:24px 0}.daily-training-widget.is-compact{display:flex;flex-wrap:wrap;align-items:start}.daily-training-widget.is-compact .daily-training-today,.daily-training-widget.is-compact .daily-training-streak,.daily-training-widget.is-compact .daily-training-summary,.daily-training-widget.is-compact .daily-training-heatmap{align-self:start;padding:18px}.daily-training-widget.is-compact .daily-training-today{flex:1.06 1 420px}.daily-training-widget.is-compact .daily-training-streak,.daily-training-widget.is-compact .daily-training-summary{flex:.72 1 240px}.daily-training-widget.is-compact .daily-training-heatmap{flex:1 1 100%}.daily-training-widget.is-compact .daily-training-today-header,.daily-training-widget.is-compact .daily-training-streak-title,.daily-training-widget.is-compact .daily-training-heatmap-head{margin-bottom:12px}.daily-training-widget.is-compact .daily-training-cta{padding:14px;margin-top:auto}.daily-training-widget.is-compact .daily-training-streak-value{font-size:42px}.daily-training-widget.is-compact .daily-training-streak-best{margin-top:10px;padding-top:10px}.daily-training-streak.is-compact .daily-training-streak-content{display:flex;flex:1 1 auto;flex-direction:column;justify-content:space-between;gap:10px;text-align:left}.daily-training-streak.is-compact .daily-training-streak-main{flex-direction:row;align-items:flex-end;gap:10px}.daily-training-streak.is-compact .daily-training-streak-label{margin-top:0;padding-bottom:5px}.daily-training-widget.is-compact .daily-training-heatmap-note{max-width:210px}.daily-training-today,.daily-training-streak,.daily-training-summary,.daily-training-heatmap{display:flex;flex-direction:column;background:var(--surface);border-radius:16px;padding:20px;border:2px solid var(--surface-border);box-shadow:var(--shadow-soft)}.daily-training-today-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.daily-training-today-title{display:flex;align-items:center;gap:8px;margin:0;font-size:18px;color:var(--text-primary)}.daily-training-today-title svg{color:var(--accent-main)}.daily-training-badge-complete{display:flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,#06d6a0,#04a87a);color:#fff;border-radius:20px;font-size:13px;font-weight:600}.daily-training-badge-complete svg{width:16px;height:16px}.daily-training-progress-bar{height:12px;background:#e8f5f3;border-radius:6px;overflow:hidden;margin-bottom:12px}.daily-training-progress-fill{height:100%;background:linear-gradient(90deg,#1e7f71,#2d9d8a);border-radius:6px;transition:width .4s ease}.daily-training-progress-fill.complete{background:linear-gradient(90deg,#06d6a0,#04a87a)}.daily-training-progress-info{display:flex;justify-content:space-between;margin-bottom:16px;font-size:14px}.daily-training-progress-text{color:var(--text-muted)}.daily-training-progress-percent{font-weight:700;color:var(--accent-main);font-size:16px}.daily-training-cta{background:#f8f9fa;border-radius:12px;padding:16px;text-align:center}.daily-training-cta-text{margin:0 0 12px;color:var(--text-muted);font-size:14px}.daily-training-growth-note{margin:-4px 0 12px;padding:10px 12px;border-radius:10px;background:#1e7f7114;border:1px solid rgba(30,127,113,.18);color:var(--text-primary);font-size:13px;line-height:1.45}.daily-training-cta-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#1e7f71,#2d9d8a);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:transform .2s,box-shadow .2s}.daily-training-cta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1e7f714d}.daily-training-congrats{background:linear-gradient(135deg,#fff9e6,#fff3cc);border:2px solid #ffd166;border-radius:12px;padding:16px;margin-top:auto;text-align:center;font-weight:600;color:var(--text-primary);animation:congrats-pulse 2s ease-in-out infinite}@keyframes congrats-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.daily-training-streak-title{display:flex;align-items:center;gap:8px;margin:0 0 16px;font-size:18px;color:var(--text-primary)}.daily-training-streak-title svg{color:#ef476f}.daily-training-streak-content{text-align:center}.daily-training-streak-main{display:flex;flex-direction:column;align-items:center}.daily-training-streak-value{font-size:48px;font-weight:700;background:linear-gradient(135deg,#ef476f,#ff6b6b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.daily-training-streak-label{font-size:14px;color:var(--text-muted);margin-top:4px}.daily-training-streak-best{margin-top:12px;font-size:13px;color:var(--text-muted);padding-top:12px;border-top:1px solid var(--surface-border)}.daily-training-summary-title{display:flex;align-items:center;gap:8px;margin:0 0 16px;font-size:18px;color:var(--text-primary)}.daily-training-summary-title svg{color:var(--accent-main)}.daily-training-summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.daily-training-summary-item{display:flex;flex-direction:column;align-items:center;padding:12px;background:#f8f9fa;border-radius:10px}.daily-training-summary-value{font-size:24px;font-weight:700;color:var(--accent-main)}.daily-training-summary-label{font-size:11px;color:var(--text-muted);text-align:center;margin-top:4px;line-height:1.3}.daily-training-heatmap{grid-column:1 / -1}.daily-training-heatmap-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px;align-items:stretch}.daily-training-heatmap-aside{display:grid;align-content:start;gap:10px;padding:14px;border-radius:14px;background:linear-gradient(180deg,#ffffffe6,#f6faf8f5);border:1px solid rgba(20,91,83,.08)}.daily-training-heatmap-aside-label{font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-main)}.daily-training-heatmap-stat{display:grid;gap:2px;padding:10px 12px;border-radius:12px;background:#145b530a;border:1px solid rgba(20,91,83,.08)}.daily-training-heatmap-stat strong{font-size:1.1rem;line-height:1.1;color:var(--text-primary)}.daily-training-heatmap-stat span{font-size:.78rem;line-height:1.35;color:var(--text-muted)}.daily-training-heatmap-title{margin:0;font-size:18px;color:var(--text-primary)}.daily-training-heatmap-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px}.daily-training-heatmap-note{margin:0;max-width:240px;font-size:13px;line-height:1.45;color:var(--text-muted);text-align:right}.heatmap-calendar{display:grid;gap:10px;background:linear-gradient(180deg,#fafcfbf5,#f3f8f6fa);border-radius:14px;padding:12px 12px 14px;border:1px solid rgba(20,91,83,.1)}.heatmap-empty{text-align:center;padding:40px 20px}.heatmap-empty-message{color:var(--text-muted);font-size:14px;margin:0}.heatmap-scroll{display:grid;justify-content:center;overflow-x:auto;padding-bottom:4px}.heatmap-board{--heatmap-day-size: 18px;--heatmap-gap: 5px;--heatmap-day-column: 34px;display:grid;grid-template-columns:var(--heatmap-day-column) max-content;grid-template-rows:auto auto auto;gap:8px;margin-inline:auto;min-width:max-content}.heatmap-corner{width:var(--heatmap-day-column);min-height:16px}.heatmap-corner-bottom{display:flex;align-items:center;justify-content:center;min-height:18px;font-size:.65rem;font-weight:700;letter-spacing:.04em;color:var(--text-muted)}.heatmap-month-track{display:grid;grid-template-columns:repeat(var(--heatmap-weeks),var(--heatmap-day-size));column-gap:var(--heatmap-gap);min-width:max-content;align-items:end;padding-inline:2px}.heatmap-month-label{width:0;min-width:0;font-size:11px;color:#50736c;font-weight:800;line-height:1;white-space:nowrap;justify-self:start}.heatmap-month-label-hidden{visibility:hidden}.heatmap-days{display:flex;flex-direction:column;gap:var(--heatmap-gap);padding-top:2px}.heatmap-day-label{width:20px;height:var(--heatmap-day-size);display:flex;align-items:center;justify-content:center;font-size:10px;color:#50736c;font-weight:700}.heatmap-grid{display:grid;grid-template-columns:repeat(var(--heatmap-weeks),var(--heatmap-day-size));column-gap:var(--heatmap-gap);min-width:max-content}.heatmap-week{display:grid;row-gap:var(--heatmap-gap)}.heatmap-cell{width:var(--heatmap-day-size);height:var(--heatmap-day-size);border-radius:6px;transition:transform .15s,box-shadow .15s,border-color .15s;cursor:default}.heatmap-cell-padding{opacity:.35}.heatmap-cell-clickable{cursor:pointer}.heatmap-cell-clickable:hover{transform:scale(1.2);box-shadow:0 2px 8px #00000026}.heatmap-cell-empty{background:#f0f0f0;border:1px solid #e0e0e0}.heatmap-cell-low{background:#c4e8df;border:1px solid #a8d8c8}.heatmap-cell-medium{background:#8fd4bd;border:1px solid #75c4a8}.heatmap-cell-high{background:#4fbf9a;border:1px solid #3fa885}.heatmap-cell-max{background:#1e7f71;border:1px solid #15655a}.heatmap-cell-complete{box-shadow:inset 0 0 0 2px #ffffffe6}.heatmap-date-track{display:grid;grid-template-columns:repeat(var(--heatmap-weeks),var(--heatmap-day-size));column-gap:var(--heatmap-gap);min-width:max-content;align-items:start;padding-inline:2px}.heatmap-date-marker{width:max-content;min-width:max-content;padding:2px 6px;border-radius:999px;background:#ffffffd1;border:1px solid rgba(20,91,83,.08);font-size:10px;font-weight:700;line-height:1.1;color:var(--text-muted);white-space:nowrap;justify-self:center}.heatmap-date-marker-hidden{visibility:hidden}.heatmap-guide{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;color:var(--text-muted);font-size:.76rem}.heatmap-guide span{padding:6px 10px;border-radius:999px;background:#145b530d;border:1px solid rgba(20,91,83,.08)}.heatmap-legend{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid var(--surface-border)}.heatmap-legend-label{font-size:11px;color:var(--text-muted)}.heatmap-legend-cell{width:14px;height:14px;border-radius:3px}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden}.confetti-particle{position:absolute;top:-20px;animation:confetti-fall linear forwards;border-radius:2px}@keyframes confetti-fall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.celebration-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;transition:opacity .3s ease}.celebration-overlay.animate-in{opacity:1}.celebration-overlay.animate-out{opacity:0}.celebration-modal{background:#fff;border-radius:24px;padding:40px;text-align:center;max-width:400px;box-shadow:0 20px 60px #0000004d;animation:celebration-modal-pop .4s cubic-bezier(.68,-.55,.265,1.55)}@keyframes celebration-modal-pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.celebration-icon{font-size:64px;margin-bottom:16px}.celebration-title{margin:0 0 12px;font-size:28px;color:var(--text-primary)}.celebration-message{margin:0 0 24px;color:var(--text-muted);font-size:16px;line-height:1.5}.celebration-close-btn{padding:12px 32px;background:linear-gradient(135deg,#1e7f71,#2d9d8a);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.celebration-close-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1e7f714d}.daily-training-widget-loading{text-align:center;padding:40px;color:var(--text-muted)}@media(max-width:768px){.home-priority-grid,.daily-training-widget.is-compact{flex-direction:column}.daily-training-widget{grid-template-columns:1fr}.daily-training-summary-grid{grid-template-columns:repeat(2,1fr)}.daily-training-heatmap-head{flex-direction:column}.daily-training-heatmap-layout{grid-template-columns:1fr}.daily-training-heatmap-note{max-width:none;text-align:left}.heatmap-cell{width:14px;height:14px}.heatmap-legend-cell{width:12px;height:12px}}.level-progress-widget{background:var(--surface);border-radius:16px;padding:20px;border:2px solid var(--surface-border);box-shadow:var(--shadow-soft);margin:24px 0}.level-progress-widget-home{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(248px,.78fr);align-items:start;gap:16px;padding:20px 22px;border-radius:20px;background:radial-gradient(circle at top right,rgba(255,209,102,.14),transparent 28%),linear-gradient(180deg,#fbfcfc,#f3f8f6)}.level-progress-widget-home .level-header,.level-progress-widget-home .level-progress-container{margin-bottom:16px}.level-progress-widget-loading{text-align:center;padding:40px;color:var(--text-muted)}.level-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.level-badge{display:flex;align-items:center;gap:12px}.level-badge-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:linear-gradient(135deg,#ffd166,#fbbf24);border-radius:12px;color:#fff}.level-badge-icon svg{width:28px;height:28px}.level-badge-content{display:flex;flex-direction:column}.level-badge-label{font-size:12px;color:var(--text-muted)}.level-badge-value{font-size:28px;font-weight:700;color:var(--text-primary);line-height:1}.level-xp-info{display:flex;flex-direction:column;align-items:flex-end}.level-xp-value{font-size:16px;font-weight:600;color:var(--accent-main)}.level-xp-total{font-size:12px;color:var(--text-muted)}.level-progress-container{margin-bottom:20px}.level-progress-bar{height:16px;background:#e8f5f3;border-radius:8px;overflow:hidden;margin-bottom:8px}.level-progress-fill{height:100%;background:linear-gradient(90deg,#1e7f71,#2d9d8a,#ffd166);border-radius:8px;transition:width .5s ease}.level-progress-labels{display:flex;justify-content:space-between;font-size:13px}.level-progress-current{font-weight:600;color:var(--accent-main)}.level-progress-next{color:var(--text-muted)}.level-quick-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}.level-home-main,.level-home-side{display:flex;flex-direction:column;height:100%;gap:10px}.level-home-side{justify-content:space-between}.level-home-stats{display:grid;grid-template-columns:repeat(3,minmax(0,auto));gap:8px}.level-home-stat{display:flex;align-items:center;gap:10px;padding:10px;background:#ffffffe6;border:1px solid rgba(20,91,83,.08);border-radius:14px}.level-home-stat-icon{position:relative;width:48px;height:48px;flex-shrink:0;border-radius:12px;background:linear-gradient(135deg,#1e7f7124,#ffd1662e)}.level-home-stat-icon span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:30px;line-height:1;display:block}.level-home-stat strong,.level-home-recent strong{display:block;color:var(--text-primary);font-size:15px;line-height:1.2}.level-home-stat span,.level-home-recent span{display:block;color:var(--text-muted);font-size:12px;line-height:1.35}.quick-stat{display:flex;align-items:center;gap:12px;padding:12px;background:#f8f9fa;border-radius:10px}.quick-stat-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#fff;border-radius:8px;color:var(--accent-main)}.quick-stat-icon svg{width:20px;height:20px}.quick-stat-content{display:flex;flex-direction:column;min-width:0}.quick-stat-value{font-size:20px;font-weight:700;color:var(--text-primary);line-height:1.1}.quick-stat-label{font-size:11px;color:var(--text-muted)}.level-next-reward{margin-bottom:16px;padding:12px 14px;background:linear-gradient(135deg,#2d9d8a14,#ffd1662e);border:1px solid rgba(45,157,138,.16);border-radius:12px}.level-next-reward.is-complete{background:linear-gradient(135deg,#1e7f7114,#2d9d8a2e)}.level-next-reward-home{margin-bottom:0}.level-next-reward-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}.level-next-reward-head strong{display:block;color:var(--text-primary);font-size:16px}.level-next-reward-label{display:inline-block;margin-bottom:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-main)}.level-next-reward-progress{font-size:13px;font-weight:700;color:var(--accent-main)}.level-next-reward p{margin:0 0 10px;color:var(--text-secondary);font-size:13px;line-height:1.45}.level-next-reward-track{height:10px;border-radius:999px;background:#0e53491f;overflow:hidden}.level-next-reward-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1e7f71,#2d9d8a 55%,#ffd166)}.level-next-reward-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 12px;margin-top:10px;font-size:12px;color:var(--text-muted)}.recent-achievements{margin-bottom:20px}.recent-achievements-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.recent-achievements-list{display:flex;flex-direction:column;gap:8px}.recent-achievement-item{display:flex;align-items:center;gap:12px;padding:10px;background:#f8f9fa;border-radius:8px}.recent-achievement-icon{font-size:24px}.recent-achievement-content{display:flex;flex-direction:column}.recent-achievement-title{font-size:13px;font-weight:600;color:var(--text-primary)}.recent-achievement-date{font-size:11px;color:var(--text-muted)}.level-recent-xp{margin-bottom:20px}.level-recent-xp-list{display:flex;flex-direction:column;gap:8px}.level-recent-xp-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#0e53490a;border-radius:10px}.level-recent-xp-item strong{display:block;color:var(--text-primary);font-size:13px}.level-recent-xp-item span{display:block;color:var(--text-muted);font-size:11px}.level-recent-xp-value{flex-shrink:0;font-size:14px;font-weight:700;color:var(--accent-main)!important}.level-cta{text-align:center}.level-progress-widget-home .level-cta{margin-top:0;text-align:left}.level-home-recent{margin-top:0;padding:10px 12px;border-radius:14px;background:#ffffffd6;border:1px solid rgba(20,91,83,.08)}.level-cta-btn{display:inline-block;padding:10px 20px;background:linear-gradient(135deg,#1e7f71,#2d9d8a);color:#fff;border-radius:10px;text-decoration:none;font-weight:600;font-size:14px;transition:transform .2s,box-shadow .2s}.level-cta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1e7f714d}.level-progress-widget-compact{display:flex;align-items:center;gap:12px;padding:12px 16px}.level-badge-compact{display:flex;align-items:center;gap:6px;padding:6px 10px;background:linear-gradient(135deg,#ffd166,#fbbf24);border-radius:8px;color:#fff;font-weight:700}.level-badge-compact .level-badge-icon{font-size:16px}.level-badge-compact .level-badge-value{font-size:16px;line-height:1}.level-progress-bar-compact{flex:1;height:8px;background:#e8f5f3;border-radius:4px;overflow:hidden}.level-progress-fill-compact{height:100%;background:linear-gradient(90deg,#1e7f71,#2d9d8a);transition:width .3s ease}.achievement-list-section{margin:24px 0}.achievement-stats-header{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.achievement-stat{display:flex;flex-direction:column;align-items:center;padding:16px;background:var(--surface);border-radius:12px;border:2px solid var(--surface-border)}.achievement-stat-value{font-size:32px;font-weight:700;line-height:1}.achievement-stat-value.completed{color:#06d6a0}.achievement-stat-value.in-progress{color:#ffd166}.achievement-stat-value.locked{color:var(--text-muted)}.achievement-stat-label{font-size:12px;color:var(--text-muted);margin-top:6px}.achievement-category-tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.achievement-category-tab{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#f8f9fa;border:2px solid transparent;border-radius:20px;font-size:13px;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .2s}.achievement-category-tab:hover{background:#e8f5f3}.achievement-category-tab.active{background:linear-gradient(135deg,#1e7f71,#2d9d8a);color:#fff}.tab-icon{font-size:16px}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.achievement-card{position:relative;padding:16px;background:var(--surface);border-radius:12px;border:2px solid var(--surface-border);transition:transform .2s,box-shadow .2s}.achievement-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.achievement-card.completed{border-color:#06d6a0;background:linear-gradient(135deg,#06d6a00d,#06d6a005)}.achievement-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.achievement-icon{font-size:32px}.achievement-card-title{display:flex;align-items:center;gap:8px;flex:1}.achievement-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.achievement-badge-complete{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:#06d6a0;color:#fff;border-radius:50%;font-size:12px;font-weight:700}.achievement-description{font-size:13px;color:var(--text-muted);margin:0 0 12px;line-height:1.4}.achievement-progress{margin-bottom:12px}.achievement-progress-bar{height:8px;background:#e8f5f3;border-radius:4px;overflow:hidden;margin-bottom:4px}.achievement-progress-fill{height:100%;background:linear-gradient(90deg,#ffd166,#fbbf24);border-radius:4px;transition:width .3s ease}.achievement-progress-label{font-size:11px;color:var(--text-muted);font-weight:600}.achievement-locked{display:flex;align-items:center;gap:8px;padding:12px;background:#f8f9fa;border-radius:8px;color:var(--text-muted);font-size:13px}.achievement-locked-icon{font-size:16px}.achievement-category-tag{position:absolute;top:12px;right:12px;padding:4px 8px;background:#f8f9fa;border-radius:6px;font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase}.achievements-empty{text-align:center;padding:40px;color:var(--text-muted)}.level-up-overlay{position:fixed;top:0;left:0;width:100%;height:100%;padding:24px;background:#0812119e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:10001;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.level-up-overlay.visible{opacity:1;visibility:visible}.level-up-overlay.hidden{opacity:0;visibility:hidden}.level-up-modal{width:min(100%,540px);background:linear-gradient(180deg,#fffffffc,#f5faf9fc);border:1px solid rgba(30,127,113,.14);border-radius:28px;padding:44px 40px 36px;text-align:center;max-width:540px;box-shadow:0 28px 80px #0e252238,0 12px 34px #11363029;animation:level-up-pop .5s cubic-bezier(.68,-.55,.265,1.55)}@keyframes level-up-pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.level-up-animation{margin-bottom:24px}.level-up-icon{font-size:72px;animation:star-spin 1s ease-in-out}@keyframes star-spin{0%,to{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.2)}}.level-up-levels{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px}.level-up-from,.level-up-to{font-size:48px;font-weight:700;background:linear-gradient(135deg,#ffd166,#fbbf24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.level-up-to{font-size:56px}.level-up-arrow{font-size:32px;color:var(--text-muted)}.level-up-title{font-size:28px;font-weight:700;color:var(--text-primary);margin:0 0 8px}.level-up-subtitle{font-size:16px;color:var(--text-muted);margin:0 0 18px}.level-up-next-goal{display:flex;flex-direction:column;gap:6px;margin-bottom:24px;padding:16px 18px;background:linear-gradient(135deg,#2d9d8a1f,#ffd16629),#fff;border:1px solid rgba(30,127,113,.16);border-radius:16px}.level-up-next-goal-label{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.level-up-next-goal strong{font-size:16px;line-height:1.45;color:var(--text-primary)}.level-up-rewards{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.level-up-reward{display:flex;align-items:center;gap:12px;padding:12px;background:#f8f9fa;border-radius:10px}.reward-icon{font-size:24px}.reward-text{font-size:14px;color:var(--text-primary);font-weight:600}.level-up-continue-btn{padding:14px 32px;background:linear-gradient(135deg,#1e7f71,#2d9d8a);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.level-up-continue-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1e7f714d}.achievement-toast{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:12px;padding:16px;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;border-left:4px solid #ffd166;z-index:10002;opacity:0;transform:translate(100%);transition:opacity .3s,transform .3s}.achievement-toast.visible{opacity:1;transform:translate(0)}.achievement-toast.hidden{opacity:0;transform:translate(100%)}.achievement-toast-icon{font-size:32px;animation:achievement-bounce .5s ease-in-out}@keyframes achievement-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.achievement-toast-content{display:flex;flex-direction:column}.achievement-toast-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;font-weight:700}.achievement-toast-title{font-size:15px;font-weight:600;color:var(--text-primary)}.achievement-toast-close{background:none;border:none;font-size:24px;color:var(--text-muted);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.achievement-toast-close:hover{color:var(--text-primary)}@media(max-width:768px){.level-header{flex-direction:column;align-items:flex-start;gap:16px}.level-progress-widget-home{grid-template-columns:1fr}.level-xp-info{align-items:flex-start}.level-quick-stats,.level-home-stats{grid-template-columns:1fr}.level-next-reward-head,.level-recent-xp-item{flex-direction:column;align-items:flex-start}.achievements-grid,.achievement-stats-header{grid-template-columns:1fr}.achievement-category-tabs{overflow-x:auto;flex-wrap:nowrap}.level-up-modal{margin:16px;padding:28px 22px 24px}.achievement-toast{left:16px;right:16px;bottom:16px}}.stats-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid var(--surface-border);padding-bottom:0}.stats-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;border:none;border-bottom:3px solid transparent;font-size:15px;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .2s;margin-bottom:-2px}.stats-tab:hover{color:var(--text-primary);background:#1e7f710d;border-radius:8px 8px 0 0}.stats-tab.active{color:var(--accent-main);border-bottom-color:var(--accent-main)}.achievements-tab-section{margin-top:24px}@media(max-width:768px){.stats-tabs{overflow-x:auto}.stats-tab{white-space:nowrap}}@media(max-width:900px){.training-skill-system-strip{flex-direction:column;align-items:stretch}.training-skill-system-actions{flex-wrap:wrap}}.skill-stats-loading{padding:20px 0;color:#4d6d67}.skill-stats-empty{display:grid;gap:18px;padding:22px;border-radius:24px;border:1px solid #d7e7e2;background:linear-gradient(180deg,#f9fcfb,#eef7f4)}.skill-stats-empty-head,.skill-stats-empty-head h3,.skill-stats-empty-head p,.skill-stats-empty-point strong,.skill-stats-empty-point span{margin:0}.skill-stats-empty-head{display:grid;gap:8px}.skill-stats-empty-head h3{color:#143b36;font-size:1.35rem}.skill-stats-empty-head p{color:#476761;line-height:1.6}.skill-stats-empty-points{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.skill-stats-empty-point{display:grid;gap:6px;padding:16px;border-radius:18px;background:#ffffffeb;border:1px solid #dbe9e4}.skill-stats-empty-point strong{color:#173f39}.skill-stats-empty-point span{color:#55756f;line-height:1.5}.skill-stats-empty-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.skill-stats-empty-action{display:grid;gap:6px;padding:18px;border-radius:20px;text-decoration:none;color:#173f39;background:#fffffff0;border:1px solid rgba(15,118,110,.14);box-shadow:0 12px 24px #145b530f;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.skill-stats-empty-action:hover{transform:translateY(-2px);border-color:#0f766e;box-shadow:0 16px 28px #145b531a}.skill-stats-empty-action strong{font-size:1rem}.skill-stats-empty-action span{color:#55756f;line-height:1.45}@media(max-width:900px){.skill-stats-empty{padding:18px}}@keyframes reaction-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.02);opacity:.85}}.reaction-pad.is-waiting{animation:reaction-pulse 1.5s ease-in-out infinite}@keyframes reaction-flash{0%,to{background:linear-gradient(160deg,#e8faf4,#d7f2e9)}50%{background:linear-gradient(160deg,#c8f5e4,#a8ebd4)}}.reaction-pad.is-ready{animation:reaction-flash .4s ease-in-out}.reaction-ripple{position:absolute;border-radius:50%;background:#1e7f7166;transform:scale(0);animation:reaction-ripple-animation .6s ease-out;pointer-events:none}@keyframes reaction-ripple-animation{to{transform:scale(2.5);opacity:0}}@keyframes reaction-press{0%{transform:scale(1)}50%{transform:scale(.96)}to{transform:scale(1)}}.reaction-pad.pressed,.reaction-option-btn.pressed{animation:reaction-press .15s ease-out}.reaction-particle{position:absolute;width:8px;height:8px;border-radius:50%;pointer-events:none;animation:reaction-particle-fly .8s ease-out forwards}@keyframes reaction-particle-fly{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(var(--tx),var(--ty)) scale(0);opacity:0}}@keyframes reaction-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-8px)}80%{transform:translate(8px)}}.reaction-pad.error,.reaction-option-btn.error{animation:reaction-shake .4s ease-out;border-color:var(--danger);background:linear-gradient(160deg,#fff0f0,#ffe5e5)}@keyframes reaction-success-glow{0%,to{box-shadow:0 0 #1e7f7166}50%{box-shadow:0 0 0 12px #1e7f7100}}.reaction-pad.success,.reaction-option-btn.success{animation:reaction-success-glow .5s ease-out;border-color:#1e7f71;background:linear-gradient(160deg,#e8faf4,#d7f2e9)}@keyframes reaction-progress-fill{0%{width:0%}}.reaction-progress-fill{animation:reaction-progress-fill .5s ease-out}@keyframes reaction-combo-pop{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.reaction-combo-display{animation:reaction-combo-pop .3s ease-out}@keyframes reaction-countdown-pulse{0%,to{opacity:1}50%{opacity:.6}}.reaction-countdown-active{animation:reaction-countdown-pulse .8s ease-in-out infinite}.leaderboard-widget{padding:20px;background:#fffffff2;border-radius:16px;border:2px solid #e5e7eb;box-shadow:0 4px 12px #0000000d}.leaderboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.leaderboard-header h3{margin:0;font-size:1.3rem;color:#1f2937}.leaderboard-filters{display:flex;gap:8px;flex-wrap:wrap}.period-selector{display:flex;gap:4px;background:#f3f4f6;padding:4px;border-radius:10px}.period-btn{padding:6px 12px;border:none;background:transparent;border-radius:8px;font-size:.85rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s ease}.period-btn:hover{background:#fffc;color:#1f2937}.period-btn.is-active{background:linear-gradient(145deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 8px #3b82f64d}.leaderboard-loading,.leaderboard-empty{padding:40px 20px;text-align:center;color:#6b7280}.leaderboard-loading p,.leaderboard-empty p{margin:12px 0 0;font-size:.95rem}.loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.leaderboard-table-container{overflow-x:auto;margin-bottom:16px}.leaderboard-table{width:100%;border-collapse:collapse}.leaderboard-table th{padding:12px 16px;text-align:left;font-size:.85rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb}.leaderboard-table td{padding:12px 16px;border-bottom:1px solid #f3f4f6}.leaderboard-row{transition:background .15s ease}.leaderboard-row:hover{background:linear-gradient(145deg,#f9fafb,#f3f4f6)}.leaderboard-row.is-top{background:linear-gradient(145deg,#fbbf2414,#f59e0b0d)}.rank-col{width:60px}.rank-cell{text-align:center}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-weight:900;font-size:.9rem}.name-col{min-width:180px}.participant-info{display:flex;flex-direction:column;gap:4px}.participant-name{font-weight:700;color:#1f2937;font-size:.95rem}.participant-class{font-size:.8rem;color:#6b7280;font-weight:500}.score-col,.accuracy-col,.xp-col,.trend-col{text-align:right}.score-value{font-size:1.1rem;font-weight:900;color:#1f2937}.accuracy-value{font-weight:600;color:#10b981}.xp-value{font-weight:700;color:#f59e0b}.trend-icon{font-size:1.2rem;font-weight:900;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px}.text-muted{color:#9ca3af}.leaderboard-footer{display:flex;justify-content:center;padding-top:12px;border-top:1px solid #e5e7eb}.btn-toggle-top{padding:8px 16px;border:2px solid #e5e7eb;background:#fff;border-radius:10px;font-size:.9rem;font-weight:600;color:#4b5563;cursor:pointer;transition:all .15s ease}.btn-toggle-top:hover{border-color:#3b82f6;color:#3b82f6;transform:translateY(-1px)}.live-competition{padding:24px;background:linear-gradient(135deg,#3b82f60d,#9333ea0d);border-radius:20px;border:2px solid rgba(59,130,246,.2);margin-bottom:20px}.live-competition-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}.live-competition-header h2{margin:0;font-size:1.5rem;color:#1f2937}.live-competition-timer{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border-radius:12px;border:2px solid #e5e7eb;font-weight:700;font-size:1.1rem;color:#1f2937;transition:all .3s ease}.live-competition-timer.is-urgent{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#ef4444;color:#dc2626;animation:timer-pulse 1s ease-in-out infinite}@keyframes timer-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.timer-icon{font-size:1.3rem}.timer-value{font-family:Courier New,monospace;font-size:1.2rem}.live-competition-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.live-stat-card{display:flex;align-items:center;gap:12px;padding:16px;background:#fffffff2;border-radius:14px;border:2px solid rgba(59,130,246,.15);transition:transform .2s ease,box-shadow .2s ease}.live-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #3b82f626}.live-stat-icon{font-size:2rem;line-height:1}.live-stat-value{font-size:1.5rem;font-weight:900;color:#1f2937;margin-bottom:4px}.live-stat-label{font-size:.85rem;color:#6b7280;font-weight:600}.live-competition-start{display:flex;justify-content:center;padding:20px}.btn-start-competition{padding:14px 32px;font-size:1.1rem;font-weight:800}.live-competition-active{padding:20px;background:#3b82f614;border-radius:12px;border-left:4px solid #3b82f6}.competition-instruction{margin:0 0 8px;font-size:1rem;color:#1f2937;font-weight:600}.competition-note{margin:0;font-size:.9rem;color:#6b7280}.live-competition-finished{padding:24px;background:linear-gradient(135deg,#10b9811a,#0596690d);border-radius:12px;border:2px solid #10b981;text-align:center}.live-competition-finished h3{margin:0 0 16px;font-size:1.5rem;color:#059669}.final-score,.final-rank{margin:8px 0;font-size:1.1rem;color:#1f2937}.final-score strong,.final-rank strong{font-size:1.4rem;color:#10b981}.live-leaderboard{padding:20px;background:#fffffff2;border-radius:16px;border:2px solid #e5e7eb}.live-leaderboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.live-leaderboard-header h3{margin:0;font-size:1.2rem;color:#1f2937}.last-updated{font-size:.8rem;color:#6b7280;font-weight:500}.live-leaderboard-loading,.live-leaderboard-empty{padding:32px 20px;text-align:center;color:#6b7280}.live-leaderboard-list{display:flex;flex-direction:column;gap:8px}.live-leaderboard-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(145deg,#f9fafb,#fff);border-radius:12px;border:1px solid #e5e7eb;transition:all .15s ease}.live-leaderboard-item:hover{transform:translate(4px);box-shadow:0 4px 12px #00000014;border-color:#3b82f6}.live-leaderboard-item.is-medal{background:linear-gradient(135deg,#fbbf241a,#fffffff2);border-color:#fbbf244d}.live-leaderboard-rank{width:40px;display:flex;align-items:center;justify-content:center}.medal-icon{font-size:1.5rem;line-height:1}.live-leaderboard-info{flex:1;min-width:0}.live-leaderboard-name{font-weight:700;color:#1f2937;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-leaderboard-class{font-size:.8rem;color:#6b7280;margin-top:2px}.live-leaderboard-score{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.score-value{font-size:1.2rem;font-weight:900;color:#1f2937}.score-accuracy{font-size:.8rem;color:#10b981;font-weight:600}.live-leaderboard-trend{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:900;border-radius:50%;background:#f3f4f6}.trend-up{background:#10b98126;color:#10b981}.trend-down{background:#ef444426;color:#ef4444}.trend-steady{background:#6b728026;color:#6b7280}.live-leaderboard-footer{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb;text-align:center;font-size:.85rem;color:#6b7280;font-weight:500}.class-skill-radar{padding:20px;background:#fffffff2;border-radius:16px;border:2px solid #e5e7eb;margin-bottom:20px}.skill-radar-header{margin-bottom:16px}.skill-radar-header h4{margin:0 0 8px;font-size:1.1rem;color:#1f2937}.skill-radar-subtitle{margin:0;font-size:.85rem;color:#6b7280}.skill-radar-chart{margin-bottom:16px}.skill-radar-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;padding-top:12px;border-top:1px solid #e5e7eb}.skill-legend-item{display:flex;align-items:center;gap:8px;padding:8px;background:#f9fafb;border-radius:8px;transition:background .15s ease}.skill-legend-item:hover{background:#f3f4f6}.skill-legend-color{width:12px;height:12px;border-radius:3px;flex-shrink:0}.skill-legend-label{flex:1;font-size:.85rem;font-weight:600;color:#4b5563;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.skill-legend-value{font-size:.9rem;font-weight:700;color:#1f2937;min-width:40px;text-align:right}.challenges-list{margin-bottom:24px}.challenges-list h4{margin:0 0 12px;font-size:1.1rem;color:#1f2937}.challenge-card{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px;background:linear-gradient(145deg,#8b5cf60d,#fffffff2);border:2px solid rgba(139,92,246,.2);border-radius:12px;margin-bottom:12px;transition:all .15s ease}.challenge-card:hover{border-color:#8b5cf666;box-shadow:0 4px 12px #8b5cf626;transform:translateY(-2px)}.challenge-info{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.challenge-from{font-weight:700;color:#1f2937;font-size:.95rem}.challenge-mode,.challenge-duration{font-size:.85rem;color:#6b7280;font-weight:500;display:flex;align-items:center;gap:4px}.challenge-actions{display:flex;gap:8px;flex-shrink:0}.challenge-actions .btn-primary,.challenge-actions .btn-ghost{padding:8px 16px;font-size:.9rem}.notification-bell-container{position:relative;display:inline-block}.notification-bell-btn{position:relative;width:44px;height:44px;border-radius:50%;border:2px solid transparent;background:#ffffffe6;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:all .2s ease}.notification-bell-btn:hover{background:#fff;border-color:#3b82f6;transform:scale(1.05)}.bell-icon{line-height:1}.notification-badge{position:absolute;top:-2px;right:-2px;min-width:20px;height:20px;border-radius:10px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:.7rem;font-weight:900;display:flex;align-items:center;justify-content:center;padding:0 6px;box-shadow:0 2px 8px #ef444466}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:380px;max-height:500px;background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000026;border:2px solid #e5e7eb;z-index:1000;display:flex;flex-direction:column;overflow:hidden;animation:notification-dropdown-slide .2s ease-out}@keyframes notification-dropdown-slide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notification-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:2px solid #e5e7eb;background:linear-gradient(145deg,#f9fafb,#fff)}.notification-dropdown-header h4{margin:0;font-size:1.1rem;color:#1f2937}.btn-mark-all-read{padding:6px 12px;border:none;background:transparent;color:#3b82f6;font-size:.85rem;font-weight:600;cursor:pointer;border-radius:8px;transition:background .15s ease}.btn-mark-all-read:hover{background:#3b82f61a}.notification-dropdown-content{flex:1;overflow-y:auto;max-height:400px}.notification-empty{padding:40px 20px;text-align:center;color:#6b7280}.notification-empty p{margin:0;font-size:.95rem}.notification-item{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .15s ease}.notification-item:hover{background:linear-gradient(145deg,#f9fafb,#fff)}.notification-item.is-unread{background:linear-gradient(145deg,#3b82f60d,#fffffff2);border-left:3px solid #3b82f6}.notification-icon{font-size:1.5rem;line-height:1;flex-shrink:0}.notification-content{flex:1;min-width:0}.notification-title{font-weight:700;color:#1f2937;font-size:.95rem;margin-bottom:4px}.notification-message{font-size:.85rem;color:#6b7280;margin-bottom:6px;line-height:1.4}.notification-time{font-size:.75rem;color:#9ca3af;font-weight:500}.notification-delete{width:28px;height:28px;border-radius:50%;border:none;background:#f3f4f6;color:#6b7280;font-size:1rem;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.notification-delete:hover{background:#fee2e2;color:#ef4444}.notification-dropdown-footer{padding:12px 16px;border-top:2px solid #e5e7eb;background:linear-gradient(145deg,#f9fafb,#fff);display:flex;justify-content:center}.btn-close-dropdown{padding:8px 24px;border:2px solid #e5e7eb;background:#fff;border-radius:10px;font-size:.9rem;font-weight:600;color:#4b5563;cursor:pointer;transition:all .15s ease}.btn-close-dropdown:hover{border-color:#3b82f6;color:#3b82f6;transform:translateY(-1px)}.competitions-page{padding:24px}.competitions-header{margin-bottom:24px}.competitions-header h2{margin:0 0 8px;font-size:2rem;color:#1f2937}.competitions-subtitle{margin:0;color:#6b7280;font-size:1rem}.competitions-section{margin:24px 0;padding:20px;background:linear-gradient(145deg,#f9fafb,#f3f4f6);border-radius:16px;border:2px solid #e5e7eb}.competitions-section h3{margin:0 0 16px;font-size:1.3rem;color:#1f2937}.competitions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.competition-card{display:flex;align-items:center;gap:16px;padding:16px;background:#fff;border:2px solid #e5e7eb;border-radius:14px;cursor:pointer;transition:all .2s ease}.competition-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a;border-color:#8b5cf6}.competition-card.is-selected{background:linear-gradient(145deg,#8b5cf61a,#8b5cf60d);border-color:#8b5cf6;box-shadow:0 4px 16px #8b5cf633}.competition-card-icon{font-size:2.5rem;line-height:1}.competition-card-info{flex:1}.competition-card-name{margin:0 0 4px;font-size:1.1rem;font-weight:800;color:#1f2937}.competition-card-meta,.competition-card-participants{margin:0;font-size:.85rem;color:#6b7280}.competition-card-participants{margin-top:4px}.competition-card-status{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f3f4f6;border-radius:8px;font-size:.85rem;font-weight:600;color:#6b7280}.competition-card-status.is-active{background:linear-gradient(135deg,#ef44441a,#dc26260d);color:#dc2626}.status-indicator{font-size:.7rem;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.competitions-list{display:flex;flex-direction:column;gap:12px}.competition-list-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#fff;border:2px solid #e5e7eb;border-radius:12px;transition:all .15s ease}.competition-list-item:hover{border-color:#8b5cf6;transform:translate(4px)}.competition-list-info{display:flex;align-items:center;gap:12px}.competition-list-icon{font-size:2rem;line-height:1}.competition-list-info strong{display:block;font-size:1rem;color:#1f2937;margin-bottom:4px}.competition-list-meta{margin:0;font-size:.85rem;color:#6b7280}.competition-list-status{flex-shrink:0}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;font-size:.85rem;font-weight:600}.status-badge.status-active{background:linear-gradient(135deg,#ef44441a,#dc26260d);color:#dc2626}.status-badge.status-pending{background:linear-gradient(135deg,#3b82f61a,#2563eb0d);color:#2563eb}.status-badge.status-completed{background:linear-gradient(135deg,#10b9811a,#0596690d);color:#059669}.status-badge.status-cancelled{background:linear-gradient(135deg,#6b72801a,#4b55630d);color:#4b5563}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2000;gap:16px}.loading-overlay p{color:#fff;font-size:1.1rem;font-weight:600}
