html,:root{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:clamp(16px,.92rem + .35vh,18px)}img,svg,video{max-width:100%}:root{--ion-safe-area-left:env(safe-area-inset-left,0px);--ion-safe-area-right:env(safe-area-inset-right,0px);--ion-safe-area-top:env(safe-area-inset-top,0px);--ion-safe-area-bottom:env(safe-area-inset-bottom,0px);--app-section-gap:clamp(16px, 2.2vh, 28px);--app-item-min-height:clamp(62px, 7.5vh, 76px);--app-card-padding:clamp(14px, 2vh, 22px);--app-thumbnail-size:clamp(60px, 7.2vh, 72px);--ion-color-primary:#0073aa;--ion-color-primary-rgb:0, 115, 170;--ion-color-primary-contrast:#fff;--ion-color-primary-contrast-rgb:255, 255, 255;--ion-color-primary-shade:#006596;--ion-color-primary-tint:#1a81b3;--ion-color-warning:#d94f00;--ion-color-warning-rgb:217, 79, 0;--ion-color-warning-contrast:#fff;--ion-color-warning-contrast-rgb:255, 255, 255;--ion-color-warning-shade:#bf4600;--ion-color-warning-tint:#dd611a;--ion-color-danger:#d63638;--ion-color-danger-rgb:214, 54, 56;--ion-color-danger-contrast:#fff;--ion-color-danger-contrast-rgb:255, 255, 255;--ion-color-danger-shade:#bc3031;--ion-color-danger-tint:#da4a4c;--ion-color-success:#00a32a;--ion-color-success-rgb:0, 163, 42;--ion-color-success-contrast:#fff;--ion-color-success-contrast-rgb:255, 255, 255;--ion-color-success-shade:#008f25;--ion-color-success-tint:#1aac3f;--ion-color-tertiary:#8224e3;--ion-color-tertiary-rgb:130, 36, 227;--ion-color-tertiary-contrast:#fff;--ion-color-tertiary-contrast-rgb:255, 255, 255;--ion-color-tertiary-shade:#7220c8;--ion-color-tertiary-tint:#8f3ae6}ion-toolbar{--padding-start:var(--ion-safe-area-left,0);--padding-end:var(--ion-safe-area-right,0)}.custom-filter-popover{--width:280px;--max-height:400px}.custom-filter-popover ion-list{background:var(--ion-background-color,#fff)}.custom-filter-popover ion-radio{--padding-start:12px;--padding-end:12px;font-size:.9rem}@media (prefers-color-scheme:dark){:root,:root.ios,:root.md{--ion-color-step-50:var(--ion-background-color-step-50,#141416);--ion-color-step-100:var(--ion-background-color-step-100,#1e1e22);--ion-color-step-150:var(--ion-background-color-step-150,#28282e);--ion-color-step-200:var(--ion-background-color-step-200,#32323a);--ion-color-step-250:var(--ion-background-color-step-250,#3c3c46);--ion-color-step-300:var(--ion-background-color-step-300,#464652);--ion-color-step-400:var(--ion-background-color-step-400,#5a5a68);--ion-color-step-500:var(--ion-background-color-step-500,#737382);--ion-color-step-600:var(--ion-background-color-step-600,#8e8e9e);--ion-color-step-650:var(--ion-background-color-step-650,#9d9db0);--ion-color-step-700:var(--ion-background-color-step-700,#adadb8);--ion-color-step-750:var(--ion-background-color-step-750,#bdbdc4);--ion-color-step-800:var(--ion-background-color-step-800,#cdccd0);--ion-color-step-850:var(--ion-background-color-step-850,#dddddc);--ion-color-step-900:var(--ion-background-color-step-900,#eee)}}:root{--app-safe-area-top:env(safe-area-inset-top,0px);--app-safe-area-bottom:env(safe-area-inset-bottom,0px);--app-safe-area-left:env(safe-area-inset-left,0px);--app-safe-area-right:env(safe-area-inset-right,0px);--dame-card-radius:12px;--dame-card-border:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,rgba(var(--ion-text-color-rgb,0, 0, 0), .12)));--dame-card-shadow:0 2px 8px #0000000f;--dame-item-radius:8px}.dame-container{box-sizing:border-box;width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}.dame-container--narrow{max-width:800px}.dame-container--full{max-width:100%}.dame-flex-center{justify-content:center;align-items:center;display:flex}.dame-flex-between{justify-content:space-between;align-items:center;display:flex}.dame-text-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dame-text-muted{color:var(--ion-color-medium)}.multiline-large-title{word-wrap:break-word;width:100%;padding-bottom:8px;line-height:1.2;display:block;white-space:normal!important}.dame-panel{background:var(--ion-card-background,var(--ion-item-background,#fff));border-radius:var(--dame-card-radius,12px);border:var(--dame-card-border);box-shadow:var(--dame-card-shadow);box-sizing:border-box;padding:16px}.dame-panel ion-card-title,.dame-panel .dame-panel-title{align-items:center;gap:8px;margin-top:0;margin-bottom:8px;font-size:1.1rem;font-weight:700;display:flex}.dame-panel ion-card-title ion-icon,.dame-panel .dame-panel-title ion-icon{font-size:1.25rem}.dame-list-item{content-visibility:auto;contain-intrinsic-size:auto 64px;border-radius:var(--dame-item-radius,8px);margin-bottom:4px;transition:background-color .15s;position:relative}.dame-list-item:hover{--background:var(--ion-background-color-step-50,var(--ion-color-step-50,rgba(var(--ion-text-color-rgb,0, 0, 0), .04)))}.dame-btn-large{--min-height:48px;--border-radius:var(--dame-item-radius,10px);font-size:15px;font-weight:600}.dame-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:32px 16px;display:flex}.dame-meta-card{background:var(--ion-card-background,var(--ion-item-background,#fff));border-radius:var(--dame-card-radius,12px);box-shadow:var(--dame-card-shadow);border:var(--dame-card-border);margin-bottom:6px;padding:10px 14px}.dame-stat-grid{text-align:center;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px;display:grid}.dame-stat-grid--2col{grid-template-columns:repeat(2,1fr)}.dame-stat-grid--3col{grid-template-columns:repeat(3,1fr)}.dame-stat-box{background:var(--ion-background-color-step-50,var(--ion-card-background,var(--ion-color-light,#f4f5f8)));border-radius:var(--dame-item-radius,8px);border:var(--dame-card-border);box-sizing:border-box;flex-direction:column;padding:10px;display:flex}.dame-stat-box .dame-stat-label{color:var(--ion-color-medium);text-transform:uppercase;margin-bottom:4px;font-size:.72rem;font-weight:600}.dame-stat-box .dame-stat-value{color:var(--ion-text-color,var(--ion-color-dark,#000));font-size:1.1rem;font-weight:700;line-height:1.2}.dame-banner{border-radius:var(--dame-item-radius,8px);box-sizing:border-box;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:.88rem;font-weight:500;display:flex}.dame-banner ion-icon{flex-shrink:0;font-size:1.3rem}.dame-banner p{margin:0;line-height:1.35}.dame-banner--primary{background:rgba(var(--ion-color-primary-rgb,0, 115, 170), .12);border:1px solid var(--ion-color-primary);color:var(--ion-text-color,var(--ion-color-dark))}.dame-banner--warning{background:var(--ion-color-warning);color:var(--ion-color-warning-contrast)}.dame-banner--success{background:rgba(var(--ion-color-success-rgb,0, 163, 42), .15);border:1px solid var(--ion-color-success);color:var(--ion-color-success-shade,var(--ion-color-success))}@media (prefers-color-scheme:dark){.dame-banner--success{color:var(--ion-color-success-tint,#1aac3f)}}.dame-banner--danger{background:rgba(var(--ion-color-danger-rgb,214, 54, 56), .15);border:1px solid var(--ion-color-danger);color:var(--ion-color-danger-shade,var(--ion-color-danger))}@media (prefers-color-scheme:dark){.dame-banner--danger{color:var(--ion-color-danger-tint,#da4a4c)}}.dame-banner--block{text-align:center;flex-direction:column;justify-content:center;padding:20px}.dame-brand-header{align-items:center;padding-left:12px;display:flex}.dame-brand-header .brand-logo{height:22px;margin-right:8px;display:block}.dame-brand-header .brand-name{letter-spacing:.5px;color:var(--ion-text-color,var(--ion-color-dark));font-weight:800}.dame-badge-group{align-items:center;gap:8px;display:flex}.dame-list-chevron{opacity:.6;font-size:1.1rem}.badge--dimmed,.icon--dimmed{opacity:.7}.full-width{width:100%}.segment-label-wrapper{justify-content:center;align-items:center;gap:6px;display:inline-flex}.segment-badge{border-radius:10px;padding:2px 6px;font-size:10px;font-weight:700;line-height:1.2}.news-subtitle-row{justify-content:space-between;align-items:center;display:flex}.news-unread-badge{border-radius:8px;padding:2px 6px;font-size:10px;font-weight:700}.dame-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-block}.dame-badge--admin{background-color:rgba(var(--ion-color-danger-rgb,235, 68, 90), .18);color:var(--ion-color-danger,#eb445a)}.dame-badge--rep{background-color:rgba(var(--ion-color-warning-rgb,255, 196, 9), .2);color:var(--ion-color-warning-shade,#b58000)}.dame-badge--member{background-color:rgba(var(--ion-color-primary-rgb,56, 128, 255), .18);color:var(--ion-color-primary,#3880ff)}.dame-datatable-container{flex-direction:column;width:100%;display:flex}.loading-wrapper{color:var(--ion-color-medium);padding:40px 0}.loading-text{margin-top:10px;font-size:.9rem}.table-responsive{border:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,#00000014));border-radius:8px;width:100%;overflow-x:auto}.dame-table{border-collapse:collapse;text-align:left;background:var(--ion-card-background,var(--ion-item-background,#fff));width:100%;color:var(--ion-text-color,#1f2937);font-size:.9rem}.dame-table th{background:var(--ion-background-color-step-100,var(--ion-color-step-100,#f4f5f8));color:var(--ion-text-color,#1f2937);border-bottom:2px solid var(--ion-background-color-step-200,var(--ion-color-step-200,#0000001f));-webkit-user-select:none;user-select:none;white-space:nowrap;padding:12px 16px;font-weight:600}.dame-table th.sortable{cursor:pointer}.dame-table th.sortable:hover{background:var(--ion-background-color-step-150,var(--ion-color-step-150,#e8e9ec))}.dame-table td{border-bottom:1px solid var(--ion-background-color-step-100,var(--ion-color-step-150,#0000000f));color:var(--ion-text-color,#1f2937);padding:12px 16px}.header-cell-content{align-items:center;gap:6px;display:flex}.sort-indicator{color:var(--ion-color-primary);font-size:.9rem;display:inline-flex}.sort-idle{color:var(--ion-color-medium);opacity:.4}.table-row{content-visibility:auto;contain-intrinsic-size:auto 48px;transition:background-color .15s ease-in-out}.table-row:nth-child(2n){background:var(--ion-background-color-step-50,#00000004)}.table-row.clickable{cursor:pointer}.table-row.clickable:hover{background:rgba(var(--ion-color-primary-rgb,56, 128, 255), .08)}.mobile-list-item{content-visibility:auto;contain-intrinsic-size:auto 64px}.desktop-grid-view{display:block}.mobile-list-view{display:none}@media (max-width:768px){.desktop-grid-view{display:none}.mobile-list-view{display:block}}.empty-state{color:var(--ion-color-medium);padding:48px 16px}.datatable-toolbar{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.toolbar-search{width:100%}.custom-searchbar{--background:var(--ion-item-background,var(--ion-background-color-step-100,#f4f5f8));--color:var(--ion-text-color,#1f2937);--border-radius:8px;padding:0}.toolbar-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.toolbar-filters{flex:1;min-width:240px}.filter-item{--padding-start:8px;--padding-end:8px;--min-height:48px;--background:var(--ion-item-background,var(--ion-background-color-step-50,#fff));--color:var(--ion-text-color,#1f2937);border:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,#00000014));border-radius:8px}.custom-select{width:100%;font-size:.875rem}.toolbar-buttons{align-items:center;gap:8px;display:flex}.export-btn{--border-radius:8px;margin:0;font-weight:600}.datatable-pagination{border-top:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,#00000014));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;padding-bottom:12px;font-size:.875rem;display:flex}.text-subtle{color:var(--ion-color-medium)}.pagination-controls{align-items:center;gap:16px;display:flex}.size-select{--padding-start:8px;--padding-end:8px;font-size:.85rem}.page-buttons{align-items:center;gap:4px;display:flex}.page-indicator{color:var(--ion-text-color,var(--ion-color-dark));padding:0 8px;font-weight:600}.stacked-icon{margin-left:-8px}.dame-chessboard-wrapper{width:100%;height:100%;display:block;position:relative}.dame-chessboard-wrapper.is-zoomable{cursor:zoom-in;touch-action:pan-y}.dame-zoom-overlay{z-index:99999;background:#000000ad;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.dame-zoom-modal{background:var(--ion-card-background,#fff);border-radius:14px;flex-direction:column;width:90%;max-width:440px;animation:.18s ease-out zoomModalFadeIn;display:flex;overflow:hidden;box-shadow:0 12px 36px #00000061}@keyframes zoomModalFadeIn{0%{opacity:0}to{opacity:1}}.dame-zoom-header{background:var(--ion-background-color-step-100,var(--ion-color-step-100,#f4f5f8));color:var(--ion-text-color,var(--ion-color-dark));border-bottom:1px solid var(--ion-background-color-step-150,var(--ion-color-step-200,#e0e0e0));justify-content:space-between;align-items:center;padding:12px 18px;font-size:1rem;font-weight:600;display:flex}.dame-zoom-close-btn{color:var(--ion-color-step-600,#666);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.8rem;line-height:1;transition:color .15s}.dame-zoom-close-btn:hover{color:var(--ion-text-color,var(--ion-color-dark))}.dame-zoom-board-container{aspect-ratio:1;box-sizing:border-box;width:100%;padding:16px}.content-unified-header{width:100%}.header-card{border-radius:8px;margin-bottom:6px;box-shadow:0 1px 3px #0000000d}.meta-card-content{padding:6px 10px}.meta-title{color:var(--ion-text-color,var(--ion-color-dark,#111827));margin-bottom:2px;font-size:.95rem;font-weight:700;line-height:1.2}.meta-bottom-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.meta-type{color:var(--ion-color-primary,#3880ff);font-size:.8rem;font-weight:600}.meta-chapitre-niveau{color:var(--ion-color-medium-shade,#666);font-size:.8rem;font-weight:500}.consigne-card-content{padding:6px 10px}.consigne-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.consigne-text{color:var(--ion-text-color,var(--ion-color-dark,#222));flex:1;font-size:.88rem;font-weight:500;line-height:1.25}.step-badge{white-space:pre-line;text-align:center;border-radius:10px;flex-shrink:0;padding:3px 8px;font-size:.78rem;line-height:1.25}.split-master-detail{width:100%;display:block}.split-master-detail__detail{display:none}@media (min-width:1024px),(min-width:768px) and (min-height:600px) and (orientation:landscape){.split-master-detail{grid-template-columns:minmax(320px,1fr) 2fr;align-items:start;gap:1.25rem;display:grid}.split-master-detail__master{height:100%}.split-master-detail__detail{background:var(--ion-card-background,var(--ion-background-color,#fff));border:1px solid rgba(var(--ion-text-color-rgb,0, 0, 0), .08);border-radius:16px;max-height:calc(100vh - 140px);padding:1.5rem;display:block;position:sticky;top:0;overflow-y:auto;box-shadow:0 4px 16px #0000000f}.split-master-detail__detail-content{animation:.2s ease-in-out fadeIn}.split-master-detail__empty-state{text-align:center;color:var(--ion-color-medium);flex-direction:column;justify-content:center;align-items:center;padding:3rem 1.5rem;display:flex}.split-master-detail__empty-state .empty-icon{opacity:.6;margin-bottom:1rem;font-size:3rem}.split-master-detail__empty-state h3{color:var(--ion-text-color);margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.split-master-detail__empty-state p{margin:0;font-size:.9rem}}.series-card-footer-container{box-sizing:border-box;flex-direction:column;gap:6px;width:100%;max-width:600px;margin:0 auto;display:flex}.feedback-row{box-sizing:border-box;border-radius:6px;align-items:center;gap:8px;min-height:32px;padding:6px 12px;font-size:.85rem;font-weight:600;transition:opacity .2s,background-color .2s,border-color .2s;display:flex}.feedback-empty{visibility:hidden;border:1px solid #0000}.feedback-icon{flex-shrink:0;font-size:1.1rem}.feedback-message{flex:1;line-height:1.2}.feedback-success{background:var(--ion-color-success,#2dd36f);color:var(--ion-color-success-contrast,#fff);border:1px solid var(--ion-color-success-shade,#28ba62)}.feedback-danger{background:var(--ion-color-danger,#eb445a);color:var(--ion-color-danger-contrast,#fff);border:1px solid var(--ion-color-danger-shade,#cf3c4f)}.feedback-warning{background:var(--ion-color-warning,#ffc409);color:var(--ion-color-warning-contrast,#000);border:1px solid var(--ion-color-warning-shade,#e0ac08)}.feedback-info{background:var(--ion-color-primary,#3880ff);color:var(--ion-color-primary-contrast,#fff);border:1px solid var(--ion-color-primary-shade,#3171e0)}.series-card-footer{background:var(--ion-color-step-50,#f8f9fa);border:1px solid var(--ion-color-step-200,#e9ecef);box-sizing:border-box;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;height:40px;padding:4px 12px;display:flex}.card-badge{letter-spacing:.3px;border-radius:6px;flex-shrink:0;padding:4px 8px;font-size:.8rem;font-weight:600}.action-zone{flex:1;justify-content:flex-end;align-items:center;min-width:0;display:flex}.footer-course-btn{--border-radius:6px;flex-shrink:0;height:30px;margin:0;font-size:.8rem;font-weight:600}.next-card-btn{--border-radius:6px;height:30px;margin:0;font-size:.85rem;font-weight:600}.next-card-btn[disabled],.next-card-btn.button-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.success-resolu-badge{letter-spacing:.3px;font-size:.82rem;font-weight:700}.next-exercise-btn{font-weight:700;animation:1.4s ease-in-out infinite pulseScale}@keyframes pulseScale{0%{filter:brightness();transform:scale(1)}50%{filter:brightness(1.2);transform:scale(1.08)}to{filter:brightness();transform:scale(1)}}.pending-hint{color:var(--ion-color-medium-shade,#888);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-style:italic;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.signature-pad-container{width:100%;margin-top:15px}.signature-pad-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.signature-label{color:var(--ion-text-color,var(--ion-color-dark,#333));font-size:.95em;font-weight:600}.canvas-wrapper{border:2px dashed var(--ion-color-step-300,#b0b0b0);touch-action:none;background:#fff;border-radius:8px;width:100%;height:160px;position:relative;overflow:hidden}.canvas-wrapper canvas{width:100%;height:100%;display:block}.canvas-placeholder{color:var(--ion-color-step-400,#888);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.9em;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.offline-container{flex-direction:column;justify-content:center;align-items:center;margin-top:50px;display:flex}.spinner-container,.error-container,.empty-container{flex-direction:column;justify-content:center;align-items:center;min-height:250px;padding:32px 16px;display:flex}.content,.detail-body{font-size:.95rem;line-height:1.65}.content p,.detail-body p{margin-bottom:12px;line-height:1.6}.content img,.detail-body img{border-radius:var(--dame-item-radius,8px);max-width:100%;height:auto}.content table,.detail-body table{border-collapse:collapse;width:100%;margin-bottom:16px}.content th,.content td,.detail-body th,.detail-body td{border:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,rgba(var(--ion-text-color-rgb,0, 0, 0), .12)));text-align:left;padding:8px}.content .wp-block-stackable-feature-grid,.content .stk-block-feature-grid,.content .stk-block-columns,.content .wp-block-stackable-columns,.detail-body .wp-block-stackable-feature-grid,.detail-body .stk-block-feature-grid,.detail-body .stk-block-columns,.detail-body .wp-block-stackable-columns{border-radius:var(--dame-card-radius,12px);box-sizing:border-box;margin-bottom:20px;overflow:hidden}.content .stk-row,.detail-body .stk-row{gap:var(--stk-columns-spacing,4px);box-sizing:border-box;flex-flow:wrap;width:100%;display:flex}.content .wp-block-stackable-column,.content .stk-block-column,.content .stk-column,.detail-body .wp-block-stackable-column,.detail-body .stk-block-column,.detail-body .stk-column{box-sizing:border-box;flex-direction:column;flex:280px;min-width:0;display:flex}@media (max-width:689px){.content .wp-block-stackable-column:not(:has(p,h1,h2,h3,h4,h5,h6,img,a,iframe,ion-button,button)){display:none}.content .stk-block-column:not(:has(p,h1,h2,h3,h4,h5,h6,img,a,iframe,ion-button,button)){display:none}.content .stk-column:not(:has(p,h1,h2,h3,h4,h5,h6,img,a,iframe,ion-button,button)){display:none}.detail-body .wp-block-stackable-column:not(:has(p,h1,h2,h3,h4,h5,h6,img,a,iframe,ion-button,button)){display:none}.detail-body .stk-block-column:not(:has(p,h1,h2,h3,h4,h5,h6,img,a,iframe,ion-button,button)){display:none}.detail-body .stk-column:not(:has(p,h1,h2,h3,h4,h5,h6,img,a,iframe,ion-button,button)){display:none}}.content .stk-column-wrapper,.content .stk-container,.detail-body .stk-column-wrapper,.detail-body .stk-container{background-color:var(--ion-card-background,var(--ion-item-background,#fff));color:var(--ion-text-color,#1e1e1e);padding:var(--stk-container-padding,20px);border-radius:var(--stk-container-border-radius,8px);box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}.content .stk-block-content,.content .stk-inner-blocks,.detail-body .stk-block-content,.detail-body .stk-inner-blocks{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}.content .stk-block-heading h1,.content .stk-block-heading h2,.content .stk-block-heading h3,.content .stk-block-heading h4,.content .stk-block-heading h5,.content .stk-block-heading h6,.detail-body .stk-block-heading h1,.detail-body .stk-block-heading h2,.detail-body .stk-block-heading h3,.detail-body .stk-block-heading h4,.detail-body .stk-block-heading h5,.detail-body .stk-block-heading h6{margin-top:0}.content .wp-block-stackable-button-group,.content .stk-block-button-group,.content .stk-button-group,.detail-body .wp-block-stackable-button-group,.detail-body .stk-block-button-group,.detail-body .stk-button-group{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px;display:flex}.content .wp-block-stackable-button,.content .stk-block-button,.detail-body .wp-block-stackable-button,.detail-body .stk-block-button{display:inline-block}.content .wp-block-stackable-button .stk-button,.content .stk-block-button .stk-button,.detail-body .wp-block-stackable-button .stk-button,.detail-body .stk-block-button .stk-button{background-color:var(--ion-color-primary,#3880ff);color:var(--ion-color-primary-contrast,#fff);border-radius:var(--dame-item-radius,8px);justify-content:center;align-items:center;padding:12px 20px;font-size:.95rem;font-weight:600;text-decoration:none;transition:opacity .2s;display:inline-flex}.content .wp-block-stackable-button .stk-button:hover,.content .stk-block-button .stk-button:hover,.detail-body .wp-block-stackable-button .stk-button:hover,.detail-body .stk-block-button .stk-button:hover{opacity:.9}.content .wp-block-brad-border-box,.detail-body .wp-block-brad-border-box{justify-content:center;width:100%;margin-top:16px;display:flex}.content .wp-block-brad-border-box ion-button,.detail-body .wp-block-brad-border-box ion-button{width:100%;max-width:320px}.content .wp-block-columns,.detail-body .wp-block-columns{flex-wrap:wrap;gap:16px;margin-bottom:16px;display:flex}@media (min-width:782px){.content .wp-block-columns,.detail-body .wp-block-columns{flex-wrap:nowrap}}.content .wp-block-columns .wp-block-column,.detail-body .wp-block-columns .wp-block-column{flex:1 1 0;min-width:0}@media (max-width:781px){.content .wp-block-columns .wp-block-column,.detail-body .wp-block-columns .wp-block-column{flex-basis:100%}}.detail-image{object-fit:cover;border-radius:var(--dame-card-radius,12px);width:100%;max-height:280px;margin-bottom:16px}.detail-header{margin-bottom:16px}.detail-header h1{margin:0 0 8px;font-size:1.5rem;font-weight:700;line-height:1.25}.detail-header .detail-date{color:var(--ion-color-medium);align-items:center;gap:6px;font-size:.85rem;display:flex}.detail-lead{color:var(--ion-text-color,var(--ion-color-step-800,#333));border-bottom:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,rgba(var(--ion-text-color-rgb,0, 0, 0), .12)));margin-bottom:16px;padding-bottom:12px;font-size:1.05rem;font-weight:500;line-height:1.5}.safe-area-wrapper{padding-left:var(--ion-safe-area-left,0);padding-right:var(--ion-safe-area-right,0);width:100%}ion-tab-bar{--border:0;height:clamp(56px,6.5vh,64px)}ion-tab-bar ion-tab-button{--padding-start:0px;--padding-end:0px;min-width:0}ion-tab-bar ion-tab-button ion-icon{font-size:clamp(24px,3vh,28px)}ion-tab-bar ion-tab-button ion-label{letter-spacing:-.1px;white-space:nowrap;font-size:clamp(11.5px,1.4vh,13px);font-weight:600}.login-container,.register-container{width:100%;max-width:420px;margin:30px auto}.login-header,.register-header{text-align:center;margin-bottom:24px}.login-header .auth-logo,.register-header .auth-logo{height:60px;margin-bottom:10px}.login-header h2,.register-header h2{margin-bottom:6px;font-size:1.5rem;font-weight:700}.login-header p,.register-header p{color:var(--ion-color-medium);margin:0}.banner-huge-icon{font-size:3rem}.selection-container{width:100%;max-width:480px;margin:20px auto}.selection-header{text-align:center;margin-bottom:24px}.selection-header .header-large-icon{font-size:3rem}.form-list{background:0 0}.profile-container{flex-direction:column;align-items:stretch;gap:16px;margin-bottom:24px;display:flex}.system-panel{margin-top:24px;margin-bottom:32px}.login-prompt{flex-direction:column;align-items:stretch;padding:40px 20px;display:flex}.prompt-header{text-align:center;flex-direction:column;align-items:center;margin-bottom:32px;display:flex}.prompt-header .prompt-icon{color:var(--ion-color-primary);margin-bottom:20px;font-size:72px}.prompt-header h2{margin-bottom:10px;font-size:1.4rem;font-weight:700}.prompt-header p{color:var(--ion-color-medium);max-width:340px;margin:0;line-height:1.5}.prompt-actions{flex-direction:column;gap:10px;width:100%;max-width:360px;margin:0 auto;display:flex}.agenda-calendar-view{-webkit-user-select:none;user-select:none;flex-direction:column;gap:14px;display:flex}.calendar-month-panel{background:var(--ion-card-background,var(--ion-item-background,#fff));border-radius:var(--dame-card-radius,12px);border:var(--dame-card-border);box-shadow:var(--dame-card-shadow,0 2px 8px #0000000a);padding:10px}.calendar-header{justify-content:space-between;align-items:center;padding:4px 0 8px;display:flex}.month-title-wrapper{align-items:center;gap:8px;display:flex}.month-title-wrapper .month-title{color:var(--ion-text-color,var(--ion-color-dark,#222));margin:0;font-size:1.15rem;font-weight:700}.month-title-wrapper .today-button{height:28px;font-size:.8rem;font-weight:600}.month-nav-buttons{align-items:center;gap:4px;display:flex}.month-nav-buttons ion-button{--padding-start:4px;--padding-end:4px;height:32px}.calendar-weekdays{text-align:center;border-bottom:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,rgba(var(--ion-text-color-rgb,0, 0, 0), .12)));grid-template-columns:repeat(7,1fr);margin-bottom:6px;padding-bottom:6px;display:grid}.weekday-cell{color:var(--ion-color-medium);text-transform:uppercase;font-size:.75rem;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.selected-day-events{background:var(--ion-card-background,var(--ion-item-background,#fff));border-radius:var(--dame-card-radius,12px);border:var(--dame-card-border);box-shadow:var(--dame-card-shadow,0 2px 8px #0000000a);padding:12px 14px}.selected-day-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.selected-day-header h3{color:var(--ion-text-color,var(--ion-color-dark,#222));text-transform:capitalize;margin:0;font-size:1rem;font-weight:700}.day-events-scrollable{max-height:340px;overflow-y:auto}.day-event-list{background:0 0;padding:0}.home-section{background:0 0;margin:0}.pre-inscription-card{border-radius:var(--dame-card-radius,12px);border:var(--dame-card-border);box-shadow:var(--dame-card-shadow,0 2px 8px #0000000a);margin-bottom:16px}.pre-inscription-title{color:var(--ion-color-primary);align-items:center;gap:8px;font-size:1.15em;font-weight:700;display:flex}.pre-inscription-btn{--border-radius:var(--dame-item-radius,8px);font-weight:600}.news-card{border-radius:var(--dame-card-radius,12px);box-shadow:var(--dame-card-shadow,0 4px 12px #00000014);border:var(--dame-card-border);overflow:hidden}.news-card .featured-image{object-fit:cover;width:100%;height:200px}.news-card-header{padding-bottom:6px}.news-card-title{font-size:1.15rem;font-weight:700;line-height:1.3}.cta-container{color:var(--ion-color-primary);align-items:center;margin-top:12px;font-weight:600;display:flex}.cta-container .cta-text{margin-right:5px}.news-detail-content{width:100%}.survey-action-container .survey-action-title{margin-top:0}.survey-action-container .survey-action-desc{opacity:.8;font-size:.9em}.agenda-items-list{background:0 0;margin-top:8px}.finished-item{opacity:.75}.agenda-date-badge{background:rgba(var(--ion-color-primary-rgb,56, 128, 255), .15);border-radius:var(--dame-item-radius,8px);flex-direction:column;justify-content:center;align-items:center;min-width:44px;margin-right:12px;padding:4px;display:flex}.agenda-date-badge .badge-day{color:var(--ion-color-primary,#3880ff);font-size:1.1rem;font-weight:700;line-height:1}.agenda-date-badge .badge-month{text-transform:uppercase;color:var(--ion-color-primary-shade,#2f6cdb);margin-top:2px;font-size:.7rem;font-weight:600;line-height:1}.day-cell{border-radius:var(--dame-item-radius,8px);cursor:pointer;min-height:42px;color:var(--ion-text-color,inherit);flex-direction:column;justify-content:flex-start;align-items:center;padding:4px 2px;transition:background-color .15s;display:flex;position:relative}.day-cell.other-month{opacity:.35}.day-cell.is-today{font-weight:700}.day-cell.is-today .day-number{color:var(--ion-color-primary,#3880ff)}.day-cell.is-selected{background:var(--ion-color-primary,#3880ff)!important;color:#fff!important}.day-cell.is-selected .day-number{font-weight:700;color:#fff!important}.day-cell.is-selected .event-dot{background:#fff!important}.day-cell.has-events:not(.is-selected){background:var(--ion-background-color-step-100,var(--ion-color-step-100,rgba(var(--ion-text-color-rgb,0, 0, 0), .06)))}.day-cell .day-number-wrapper{justify-content:center;align-items:center;display:flex}.day-cell .day-number{color:inherit;font-size:.85rem;line-height:1}.event-dots-container{justify-content:center;align-items:center;gap:2px;min-height:6px;margin-top:3px;display:flex}.event-dot{background:var(--ion-color-primary,#3880ff);border-radius:50%;width:5px;height:5px}.event-count-badge{color:var(--ion-color-medium);background:var(--ion-background-color-step-100,var(--ion-color-step-100,rgba(var(--ion-text-color-rgb,0, 0, 0), .08)));border-radius:12px;padding:3px 8px;font-size:.75rem;font-weight:600}.past-event{opacity:.75}.past-event h2{font-weight:400}.upcoming-title{color:var(--ion-color-primary,#3880ff)}.day-event-item{border-radius:var(--dame-item-radius,8px);margin-bottom:4px;position:relative}.list-category-indicator,.category-color-bar{z-index:2;border-radius:2px;width:4px;position:absolute;top:6px;bottom:6px;left:0}.event-title{margin:0 0 2px;font-size:.95rem;font-weight:600}.event-time-location{color:var(--ion-color-medium);margin:0;font-size:.8rem}.agenda-detail-content{width:100%}.poll-ended-msg{color:var(--ion-color-medium);font-size:.95rem}.tournament-card{border-radius:var(--dame-card-radius,12px);box-shadow:var(--dame-card-shadow,0 4px 12px #00000014);border:var(--dame-card-border);overflow:hidden}.tournament-card .card-icon-container{margin-bottom:8px;font-size:2.2rem}.tournaments-list{background:0 0}.tournament-detail-content{width:100%}.profile-header{text-align:center;flex-direction:column;align-items:center;margin:10px 0 4px;display:flex}.profile-header .avatar-container{margin-bottom:6px}.profile-header .avatar-icon{color:var(--ion-color-medium);font-size:60px}.profile-header h2{margin:0 0 2px;font-size:20px;font-weight:700}.profile-header .email{color:var(--ion-color-medium);margin:0 0 6px;font-size:13px}.admin-access-content{align-items:center;gap:14px;display:flex}.admin-access-content h3{color:var(--ion-color-primary);margin:0 0 2px;font-size:15px;font-weight:700}.admin-access-content p{color:var(--ion-color-medium);margin:0;font-size:12px}.admin-icon{color:var(--ion-color-primary);flex-shrink:0;font-size:28px}.card-title{align-items:center;gap:8px;margin-top:0;margin-bottom:12px;font-size:15px;font-weight:600;display:flex}.card-title ion-icon{font-size:18px}.member-icon{color:var(--ion-color-medium)}.actions-container{flex-direction:column;gap:12px;margin-top:4px;display:flex}.system-info{align-items:center;gap:12px;display:flex}.system-icon{color:var(--ion-color-medium);flex-shrink:0;font-size:26px}.system-title{color:var(--ion-text-color,var(--ion-color-dark,#222));margin:0 0 2px;font-size:14px;font-weight:600}.system-version{color:var(--ion-color-medium);margin:0;font-size:12px}.system-actions{flex-direction:column;gap:8px;display:flex}.chess-theme-customizer{background:var(--ion-card-background,var(--ion-item-background,#fff));border-radius:var(--dame-card-radius,14px);border:var(--dame-card-border);box-shadow:var(--dame-card-shadow,0 2px 8px #0000000a);flex-direction:column;gap:14px;padding:16px;display:flex}.customizer-header{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;margin-bottom:0}.header-title{align-items:center;gap:12px;display:flex}.header-title h3{color:var(--ion-text-color,var(--ion-color-dark,#1f1f1f));margin:0;font-size:15px;font-weight:700}.header-text{flex:1}.header-text p{color:var(--ion-color-medium);margin:4px 0 0;font-size:12px;line-height:1.35}.header-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.header-icon{flex-shrink:0;font-size:24px}.chevron-icon{color:var(--ion-color-medium);font-size:18px;transition:transform .25s}.chevron-icon.is-rotated{transform:rotate(180deg)}.summary-text{font-size:12.5px}.summary-pill{color:var(--ion-color-primary);font-weight:600}.customizer-body{flex-direction:column;gap:14px;padding-top:4px;animation:.2s ease-in-out customizerFadeIn;display:flex}@keyframes customizerFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.wheel-picker-wrapper{box-sizing:border-box;background:var(--ion-background-color-step-50,var(--ion-card-background,var(--ion-color-light,#f4f5f8)));border:var(--dame-card-border);border-radius:var(--dame-item-radius,10px);width:100%;padding:8px 10px;position:relative;overflow:hidden}.wheel-headers{justify-content:space-around;margin-bottom:4px;padding:0 10px;display:flex}.wheel-header-item{color:var(--ion-text-color,#444);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.badge-num{background:var(--ion-color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:9.5px;font-weight:700;display:inline-flex}.wheel-columns-container{align-items:center;height:108px;display:flex;position:relative;-webkit-mask-image:linear-gradient(#0000 0%,#000 25% 75%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 25% 75%,#0000 100%)}.wheel-highlight-lens{background:rgba(var(--ion-color-primary-rgb,56, 128, 255), .15);border-radius:var(--dame-item-radius,8px);border:1px solid rgba(var(--ion-color-primary-rgb,56, 128, 255), .3);pointer-events:none;z-index:1;height:36px;position:absolute;top:36px;left:0;right:0}.wheel-divider{background:var(--ion-background-color-step-200,var(--ion-color-step-200,rgba(var(--ion-text-color-rgb,0, 0, 0), .15)));z-index:2;width:1px;height:70%}.wheel-scroll-col{scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;z-index:2;flex:1;height:100%;overflow-y:scroll}.wheel-scroll-col::-webkit-scrollbar{display:none}.wheel-padding-top,.wheel-padding-bottom{flex-shrink:0;height:36px}.wheel-item{height:36px;color:var(--ion-color-medium);scroll-snap-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;justify-content:center;align-items:center;font-size:13.5px;font-weight:500;transition:all .2s;display:flex}.wheel-item.is-active{color:var(--ion-color-primary);font-size:14.5px;font-weight:700;transform:scale(1.04)}.preview-container{justify-content:center;align-items:center;width:100%;display:flex}.board-wrapper{aspect-ratio:1;width:100%;box-shadow:var(--dame-card-shadow,0 4px 12px #00000014);border-radius:var(--dame-item-radius,10px);border:var(--dame-card-border);pointer-events:none;-webkit-user-select:none;user-select:none;background:#f0d9b5;overflow:hidden}.board-wrapper cg-board{border-radius:0!important}.actions-section{flex-direction:column;gap:8px;width:100%;display:flex}.secondary-actions-row{justify-content:center;display:flex}.input-item{--background:var(--ion-color-light);--border-radius:var(--dame-item-radius,8px);border-radius:var(--dame-item-radius,8px);margin-bottom:15px}.error-message{text-align:center;margin-top:10px;font-size:.9em}.identity-select-card ion-select,.identity-select-card .full-width-select{width:100%}.pdf-card-title{font-size:1.1em}.optin-item{--background:transparent;margin-top:-5px;margin-bottom:5px}.optin-checkbox{--size:18px;--border-radius:4px;font-size:.85em}.optin-text{white-space:normal;color:var(--ion-color-medium);margin-left:8px;font-size:.9em;line-height:1.3;display:block}.postal-code-input{max-width:120px}.consent-checkbox{--size:20px}.consent-item--spacing{margin-top:10px}.consent-item--rules{margin-top:15px}.foyer-up-to-date{margin-top:40px}.foyer-up-to-date .foyer-success-icon{font-size:5rem}.foyer-up-to-date .foyer-title{margin-top:15px;font-weight:600}.foyer-up-to-date .foyer-desc{color:var(--ion-color-step-600);margin:15px 0;line-height:1.5}.slot-time-block{flex-direction:column;display:flex}.slot-time-block .slot-count{opacity:.7;font-size:.8em}.eg-media-container{width:100%;margin:18px 0}.eg-viewer{aspect-ratio:4/3;background:#0f0f11;border-radius:12px;flex-direction:column;width:100%;height:auto;max-height:80vh;display:flex;position:relative;overflow:hidden}@media (min-width:768px){.eg-viewer{aspect-ratio:16/9}}.eg-viewer__main{cursor:pointer;background:radial-gradient(circle,#1a1a24 0%,#0a0a0d 100%);flex:auto;justify-content:center;align-items:center;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.eg-viewer__main-image{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.eg-viewer__track-container{background:#141416;border-top:1px solid #232329;flex:0 0 clamp(60px,12%,80px);justify-content:space-between;align-items:center;height:clamp(60px,12%,80px);padding:0 12px;display:flex;position:relative}.eg-viewer__arrow{color:#fff;cursor:pointer;z-index:5;background:#ffffff1a;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:24px;line-height:1;transition:transform .2s,background .2s;display:flex}.eg-viewer__arrow:hover{background:var(--ion-color-primary,#ffcd00);color:#000;transform:scale(1.08)}.eg-viewer__thumbnails{scrollbar-width:thin;flex:1;align-items:center;height:100%;margin:0 10px;display:flex;overflow-x:auto}.eg-viewer__track{gap:8px;height:80%;display:flex}.eg-viewer__thumbnail{cursor:pointer;opacity:.6;border:2px solid #0000;border-radius:6px;flex-shrink:0;height:100%;transition:opacity .2s,border-color .2s;overflow:hidden}.eg-viewer__thumbnail img{object-fit:cover;width:100%;height:100%}.eg-viewer__thumbnail:hover{opacity:.85}.eg-viewer__thumbnail--active{opacity:1;border-color:var(--ion-color-primary,#ffcd00)}.eg-viewer__justified-grid{box-sizing:border-box;flex-wrap:wrap;gap:8px;width:100%;display:flex}@media (min-width:768px){.eg-viewer__justified-grid{gap:12px}}.eg-viewer__justified-item{cursor:pointer;box-sizing:border-box;border-radius:8px;height:135px;transition:transform .25s,opacity .2s;position:relative;overflow:hidden}@media (min-width:768px){.eg-viewer__justified-item{height:190px}}.eg-viewer__justified-item img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.eg-viewer__justified-item:hover{opacity:.95}.eg-viewer__justified-item:hover img{transform:scale(1.04)}.eg-viewer__load-more-container{justify-content:center;width:100%;margin:16px 0 8px;display:flex}.eg-viewer__load-more-btn{background:var(--ion-color-step-150,#0000000f);border:1px solid var(--ion-color-step-250,#0000001f);color:var(--ion-text-color,#1f1f1f);cursor:pointer;border-radius:20px;padding:10px 20px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.eg-viewer__load-more-btn:hover{background:var(--ion-color-primary,#ffcd00);color:#000;transform:scale(1.02)}.eg-lightbox{z-index:99999;-webkit-user-select:none;user-select:none;touch-action:pan-y;background:#000000f0;flex-direction:column;justify-content:space-between;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.eg-lightbox__header{color:#ffffffd9;z-index:10;justify-content:space-between;align-items:center;padding:16px 20px;font-size:14px;display:flex}.eg-lightbox__counter{background:#ffffff1f;border-radius:12px;padding:4px 10px;font-weight:600}.eg-lightbox__caption{text-overflow:ellipsis;white-space:nowrap;opacity:.8;margin-left:12px;overflow:hidden}.eg-lightbox__close{color:#fff;cursor:pointer;z-index:20;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:28px;line-height:1;transition:background .2s,transform .2s;display:flex;position:absolute;top:14px;right:16px}.eg-lightbox__close:hover{background:#ffffff4d;transform:scale(1.08)}.eg-lightbox__stage{flex:1;justify-content:center;align-items:center;min-height:0;padding:8px 16px;display:flex;overflow:hidden}.eg-lightbox__image{object-fit:contain;border-radius:4px;max-width:95vw;max-height:80vh;box-shadow:0 8px 32px #0009}.eg-lightbox__nav{color:#fff;cursor:pointer;z-index:15;background:#ffffff1f;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:32px;transition:background .2s,transform .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.eg-lightbox__nav:hover{background:var(--ion-color-primary,#ffcd00);color:#000;transform:translateY(-50%)scale(1.08)}.eg-lightbox__nav--prev{left:16px}.eg-lightbox__nav--next{right:16px}@media (max-width:600px){.eg-lightbox__nav{width:40px;height:40px;font-size:26px}}.eg-lightbox__thumbnails{scrollbar-width:thin;z-index:10;background:#0006;flex:0 0 68px;align-items:center;gap:8px;padding:8px 16px;display:flex;overflow-x:auto}.eg-lightbox__thumb-item{aspect-ratio:4/3;cursor:pointer;opacity:.5;border:2px solid #0000;border-radius:4px;flex-shrink:0;height:48px;transition:opacity .2s,border-color .2s;overflow:hidden}.eg-lightbox__thumb-item img{object-fit:cover;width:100%;height:100%}.eg-lightbox__thumb-item--active{opacity:1;border-color:var(--ion-color-primary,#ffcd00)}.contenu-ion-content .safe-area-wrapper,.learning-layout .safe-area-wrapper{max-width:800px;margin:0 auto}.exercise-viewer-layout{flex-direction:column;flex:1;align-items:center;width:100%;min-height:100%;display:flex}.exercise-stage{box-sizing:border-box;flex-direction:column;flex:1;align-items:center;width:100%;max-width:600px;min-height:100%;display:flex}.etape-container{flex-direction:column;flex:1;gap:8px;width:100%;max-width:500px;min-height:100%;margin:0 auto;display:flex}.stage-pgn-wrapper,.stage-qcm-wrapper,.main-branch-wrapper{flex-direction:column;flex:1;gap:6px;width:100%;min-height:100%;display:flex}.spinner-container,.empty-container,.error-container{flex-direction:column;justify-content:center;align-items:center;min-height:250px;display:flex}.hub-container{flex-direction:column;gap:20px;margin-top:10px;display:flex}.courses-wrapper,.list-container{flex-direction:column;gap:16px;display:flex}.playlist-container{max-width:600px;margin:0 auto}.lecon-reader-wrapper{flex-direction:column;width:100%;display:flex}.video-reader-wrapper{flex-direction:column;width:100%;max-width:800px;margin:0 auto;padding-bottom:24px;display:flex}.diagram-viewer-container{width:100%;max-width:400px;margin:16px auto}.exercice-type-100commandements,.exercice-type-associ-plan,.exercice-type-parcours,.exercice-type-partie-heros{flex-direction:column;flex:1;width:100%;max-width:500px;min-height:100%;margin:0 auto;display:flex}.phase-container{width:100%;animation:.3s ease-out learningFadeIn}.phase-container.matching-phase{padding-bottom:60px}.pgn-card-wrapper{width:100%;max-width:600px;margin:0 auto}.learning-board-grid-2col{box-sizing:border-box;grid-template-columns:repeat(2,1fr);gap:8px;width:100%;margin:6px 0;display:grid}.learning-board-grid-2col>.learning-board-card:last-child:nth-child(odd){grid-column:1/-1;width:100%;max-width:calc(50% - 4px);margin:0 auto}.matching-container{box-sizing:border-box;width:100%;padding:8px 8px 120px}.matching-rows-list{flex-direction:column;gap:16px;margin-bottom:24px;display:flex}.matching-row{align-items:flex-start;gap:16px;width:100%;display:flex}@media (max-width:768px){.matching-row{gap:8px}}.board-column{flex-direction:column;flex:0 0 44%;max-width:220px;display:flex}.desc-column{flex-direction:column;flex:1;min-width:0;display:flex}.columns-layout{grid-template-columns:1fr 1fr;gap:12px;width:100%;display:grid}.column{flex-direction:column;min-width:0;display:flex}.column-content{flex-direction:column;gap:8px;display:flex}.vision-viewer-wrapper{flex-direction:column;flex:1;width:100%;min-height:100%;display:flex}.vision-main-layout{gap:12px;width:100%;display:flex}@media (max-width:768px){.vision-main-layout{flex-direction:column}}@media (min-width:769px){.vision-main-layout{flex-direction:row;align-items:flex-start}}.description-panel{border:1px solid var(--ion-color-light-shade,#e0e0e0);background:var(--ion-card-background,#fff);box-sizing:border-box;border-radius:8px;width:100%;padding:10px}@media (min-width:769px){.description-panel{flex:0 0 38%;max-width:400px}}.board-panel{flex:1;width:100%;min-width:0}.pieces-container{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}@media (max-width:360px){.pieces-container{grid-template-columns:repeat(3,1fr)}}@media (min-width:769px){.pieces-container{grid-template-columns:repeat(2,1fr)}}.piece-row{background:var(--ion-color-light-tint,#f4f5f8);border:1px solid var(--ion-color-light-shade,#e0e0e0);box-sizing:border-box;border-radius:6px;justify-content:center;align-items:center;gap:6px;height:32px;padding:2px 6px;display:flex}.jugement-final-layout{flex-direction:column;align-items:center;width:100%;display:flex}.observation-stage{flex-direction:column;gap:20px;width:100%;max-width:900px;display:flex}@media (min-width:769px){.observation-stage{flex-direction:row;align-items:flex-start}}.main-board-wrapper{flex-direction:column;flex:50%;align-items:center;width:100%;display:flex}.scenarios-container{flex-direction:column;flex:50%;gap:16px;width:100%;display:flex}.traces-palette-section{box-sizing:border-box;width:100%;margin:12px auto 0}.buttons-container{flex-direction:column;gap:8px;display:flex}.finish-container{width:100%;max-width:500px;margin-top:16px}.validation-container{justify-content:center;margin-top:16px;display:flex}@media (orientation:landscape) and (min-width:768px),(min-width:992px){.exercise-stage--split{flex-direction:row;justify-content:center;align-items:flex-start;gap:24px;max-width:960px;padding:12px 16px}.exercise-stage:has(.chessboard-container+.exercise-card){flex-direction:row;justify-content:center;align-items:flex-start;gap:24px;max-width:960px;padding:12px 16px}.exercise-stage:has(.chessboard-container+.qcm-choices){flex-direction:row;justify-content:center;align-items:flex-start;gap:24px;max-width:960px;padding:12px 16px}.exercise-stage:has(.chessboard-container+.learning-callout){flex-direction:row;justify-content:center;align-items:flex-start;gap:24px;max-width:960px;padding:12px 16px}.exercise-stage--split>.chessboard-container{flex:none;width:min(65vh,480px);max-width:480px;margin:0}.exercise-stage:has(.chessboard-container+.exercise-card)>.chessboard-container{flex:none;width:min(65vh,480px);max-width:480px;margin:0}.exercise-stage:has(.chessboard-container+.qcm-choices)>.chessboard-container{flex:none;width:min(65vh,480px);max-width:480px;margin:0}.exercise-stage:has(.chessboard-container+.learning-callout)>.chessboard-container{flex:none;width:min(65vh,480px);max-width:480px;margin:0}.exercise-stage--split>:not(.chessboard-container){flex:1;width:100%;min-width:0;margin:0}.exercise-stage:has(.chessboard-container+.exercise-card)>:not(.chessboard-container){flex:1;width:100%;min-width:0;margin:0}.exercise-stage:has(.chessboard-container+.qcm-choices)>:not(.chessboard-container){flex:1;width:100%;min-width:0;margin:0}.exercise-stage:has(.chessboard-container+.learning-callout)>:not(.chessboard-container){flex:1;width:100%;min-width:0;margin:0}}.contenu-ion-content{--padding-top:16px;--padding-bottom:16px;--padding-start:max(16px, var(--ion-safe-area-left,0px));--padding-end:max(16px, var(--ion-safe-area-right,0px))}.contenu-ion-content.has-series-footer{--padding-bottom:calc(140px + env(safe-area-inset-bottom,0px) + var(--ion-safe-area-bottom,0px))}.exercice-container{width:100%;max-width:600px;margin:0 auto}.exercise-ion-footer{background:var(--ion-background-color,#fff);border-top:1px solid var(--ion-color-step-150,#e0e0e0);padding-top:8px;padding-bottom:max(16px, 12px + env(safe-area-inset-bottom,0px), 12px + var(--ion-safe-area-bottom,0px));padding-left:max(12px, 12px + env(safe-area-inset-left,0px), 12px + var(--ion-safe-area-left,0px));padding-right:max(12px, 12px + env(safe-area-inset-right,0px), 12px + var(--ion-safe-area-right,0px));box-sizing:border-box;box-shadow:0 -2px 10px #0000000a}.exercise-ion-footer[style*="display: none"]{display:none!important}.exercise-footer-portal{width:100%}.landscape-wrapper{max-width:100%!important}.game-layout{flex-direction:column;justify-content:flex-start;height:100%;display:flex;overflow:hidden}.analysis-layout{flex-direction:column;justify-content:flex-start;min-height:100%;padding-bottom:24px;display:flex}@media (min-width:768px),(orientation:landscape){.analysis-layout{height:100%;min-height:0;padding-bottom:10px;overflow:hidden}}.main-container{flex-direction:column;flex:1;width:100%;min-height:0;margin:0 auto;display:flex}@media (min-width:768px),(orientation:landscape){.main-container{flex-direction:row;justify-content:center;align-items:flex-start;gap:24px;display:flex}}.main-container.landscape-mode{flex-direction:row;flex:1;justify-content:center;align-items:center;gap:30px;width:100%;min-height:0;display:flex;max-width:100%!important;margin:0!important}.board-section{width:100%;padding:6px 0 10px;display:block}@media (min-width:768px),(orientation:landscape){.board-section{flex:none;justify-content:center;align-items:center;width:auto;height:100%;padding:0;display:flex}}.board-container{aspect-ratio:1;border-radius:var(--dame-item-radius,8px);flex-shrink:0;width:100%;max-width:100%;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000014}@media (min-width:768px),(orientation:landscape){.board-container{width:min(72vh,48vw);height:auto;max-height:calc(100vh - 140px)}}.board-wrapper-with-bar{width:100%;position:relative}.side-section{flex-direction:column;flex:1;width:100%;min-width:0;max-width:100%;min-height:0;display:flex}@media (min-width:768px),(orientation:landscape){.side-section{min-width:280px;max-width:440px;height:100%}}.landscape-mode .side-section{min-width:250px;height:100%}.analysis-controls{flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.history-controls{background:var(--ion-color-light);border-radius:var(--dame-card-radius,12px);flex-direction:column;flex:1;min-height:0;padding:5px;display:flex}.history-controls ion-grid{width:100%;max-width:300px;flex:none!important;margin:0 auto!important;padding:0!important}.history-controls ion-row{justify-content:center}.history-controls ion-col{flex:1;justify-content:center;display:flex;padding:0 2px!important}.history-controls ion-button{--padding-top:0;--padding-bottom:0;margin:0;height:36px!important}.move-history-container{background:var(--ion-card-background,var(--ion-item-background,#fff));border-radius:var(--dame-item-radius,8px);border:var(--dame-card-border);min-height:0;margin-top:5px;padding:5px;overflow-y:auto;flex:1!important}@media (min-width:768px) and (orientation:portrait){.board-container{max-width:min(680px,58vh)}.board-section{padding:14px 0}}@media (max-width:767px) and (orientation:portrait){.board-section{padding-bottom:5px!important}.analysis-controls{padding-top:0!important}}.landscape-mode .main-wrap{justify-content:center!important;align-items:center!important;width:100%!important;max-width:none!important;height:100%!important;display:flex!important}.landscape-mode .board-section{flex-direction:column;flex:none;justify-content:center;width:auto;height:100%;padding:0;display:flex}.landscape-mode .board-container{flex-direction:column;max-width:100%;display:flex;aspect-ratio:1!important;width:min(72vh,48vw)!important;height:auto!important;margin:0 auto!important;padding:0!important}.landscape-mode .side-section{max-width:400px;max-height:85vh}.landscape-mode .analysis-controls{padding:0}@media (max-height:500px) and (orientation:landscape){ion-header{display:none!important}.analysis-layout{height:100%!important;padding-top:2px!important}.main-container.landscape-mode{gap:15px;align-items:center!important;padding-bottom:2px!important}.landscape-mode .board-container{aspect-ratio:1!important;width:min(75vh,48vw)!important;height:auto!important}.side-section{max-height:none;min-width:180px!important;height:75vh!important}.history-controls{padding:2px!important}.history-controls ion-grid{flex:0 0 32px!important;margin-bottom:2px!important}.history-controls ion-button{height:28px!important;margin:0!important}.move-history-container{margin-top:2px;font-size:.75rem!important}.move-group{padding:4px 2px!important;font-size:.8rem!important}.move-num{white-space:nowrap!important;width:26px!important}}.chessboard-container{aspect-ratio:1;flex-shrink:0;width:100%;max-width:min(100%,38dvh,440px);margin:0 auto 6px;position:relative;overflow:hidden;box-shadow:none!important;border-radius:0!important}.chessboard-container--small{aspect-ratio:1;flex-shrink:0;width:100%;max-width:340px;margin:0 auto 6px;overflow:hidden;box-shadow:none!important;border-radius:0!important}.chessboard-container--mini{aspect-ratio:1;box-sizing:border-box;flex-shrink:0;width:100%;max-width:280px;margin:0 auto 4px;position:relative;overflow:hidden;box-shadow:none!important;border-radius:0!important}.chessboard-container--mini .main-wrap{display:block;width:100%!important;height:100%!important}.chessboard-container--mini .main-board{width:100%!important;height:100%!important;padding-bottom:0!important}.chessboard-container--mini cg-board{width:100%!important;height:100%!important}.chessboard-panel{width:100%;margin:4px 0}.main-board-container{aspect-ratio:1;width:100%;max-width:480px;box-shadow:none;border-radius:0;margin:0 auto;overflow:hidden}.board-caption{color:var(--ion-color-primary,#3880ff);text-align:center;margin-top:8px;font-size:.95rem;font-weight:600}.main-wrap.viewingHistory{filter:none!important}.learning-board-card{background:var(--ion-card-background,#fff);border:2px solid var(--ion-color-step-200,#e0e0e0);box-sizing:border-box;cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;width:100%;padding:6px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;position:relative;box-shadow:0 2px 6px #0000000d}.learning-board-card:hover{border-color:var(--ion-color-step-400,#b0b0b0)}.learning-board-card.is-selected{transform:translateY(-2px);border-color:var(--ion-color-primary,#3880ff)!important;box-shadow:0 0 0 2px #3880ff4d,0 4px 12px #3880ff33!important}.learning-board-card.is-swap-selected{transform:translateY(-2px)scale(1.02);border-color:var(--ion-color-primary,#3880ff)!important;box-shadow:0 0 0 3px #3880ff66,0 4px 14px #3880ff40!important}.learning-board-card.is-linked,.learning-board-card.is-valid{background:var(--ion-color-success-tiny,#2dd36f0a);border-color:var(--ion-color-success,#2dd36f)!important}.learning-board-card.is-disabled{opacity:.8;cursor:default}.learning-board-card__badge{background:var(--ion-color-primary,#3880ff);color:#fff;z-index:10;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.82rem;font-weight:700;display:flex;position:absolute;top:6px;left:6px;box-shadow:0 2px 4px #00000040}.learning-board-card__indicator{z-index:10;position:absolute;top:6px;right:6px}.learning-board-card__indicator .check-mark{background:var(--ion-color-primary,#3880ff);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:800;display:flex;box-shadow:0 2px 6px #3880ff66}.learning-board-card__indicator .empty-circle{border:2px solid var(--ion-color-step-400,#bbb);background:#fff;border-radius:50%;width:22px;height:22px;display:inline-block}.board-wrapper-card{box-sizing:border-box;background:var(--ion-color-step-50,#fcfcfc);border:3px solid var(--ion-color-step-200,#e0e0e0);cursor:pointer;border-radius:12px;flex-direction:column;align-items:stretch;width:100%;height:auto;padding:10px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000000d}.board-wrapper-card:hover{box-shadow:0 6px 16px #00000014}.board-wrapper-card.selected{transform:none;border-color:#111827!important;box-shadow:0 0 0 3px #fff,0 0 16px #ffffffd9!important}.board-wrapper-card.selected .board-num{font-weight:900;color:#111827!important}.board-wrapper-card.linked{border-color:var(--ion-color-success,#2dd36f)}.board-wrapper-card.correct-locked{opacity:.85;cursor:not-allowed}.selection-dot{background-color:#111827;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.2s ease-in-out infinite pulseDot;box-shadow:0 0 0 2px #fff}@keyframes pulseDot{0%{opacity:.7;transform:scale(.85)}50%{opacity:1;transform:scale(1.25)}to{opacity:.7;transform:scale(.85)}}.correct-badge{background-color:var(--ion-color-success,#2dd36f)!important;color:#fff!important}.correct-text{color:var(--ion-color-success-shade,#24a858)!important}.board-header-bar{box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;height:24px;min-height:24px;margin-bottom:6px;padding:0 2px;display:flex}.board-num{color:var(--ion-color-step-600,#555);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:700;line-height:1;overflow:hidden}.link-indicator{background-color:var(--ion-color-success-tiny,#2dd36f26);color:var(--ion-color-success-shade,#24a858);border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:600}.description-card{border:2px solid var(--ion-color-step-200,#e0e0e0);cursor:pointer;background:var(--ion-color-step-50,#fcfcfc);border-radius:12px;flex-direction:column;height:auto;min-height:100%;margin:0;transition:all .25s;display:flex;box-shadow:0 4px 12px #0000000d}.description-card.active-for-selection:hover{border-color:var(--ion-color-primary-tint,#50c8ff);transform:translate(4px)}.description-card.linked{border-color:var(--ion-color-success,#2dd36f);background:var(--ion-color-success-tiny,#2dd36f08)}.description-card.linked .desc-letter-badge{background-color:var(--ion-color-success,#2dd36f);color:#fff}.description-card.correct-locked{opacity:.85;cursor:not-allowed}.desc-card-content{flex-direction:column;flex-grow:1;justify-content:space-between;gap:8px;padding:14px;display:flex;position:relative}@media (max-width:768px){.desc-card-content{padding:8px 10px}}.desc-letter-badge{text-transform:uppercase;background-color:var(--ion-color-step-200,#e0e0e0);color:var(--ion-color-step-800,#333);letter-spacing:.5px;border-radius:12px;align-self:flex-start;padding:2px 8px;font-size:.75rem;font-weight:800}.desc-text-content{color:var(--ion-color-step-800,#333);word-break:break-word;flex-grow:1;margin:6px 0;font-size:.88rem;font-weight:500;line-height:1.45;display:block}@media (max-width:768px){.desc-text-content{font-size:.85rem}}.desc-link-badge{color:var(--ion-color-success-shade,#24a858);align-self:flex-end;margin-top:4px;font-size:.75rem;font-weight:700}.learning-callout{box-sizing:border-box;background:var(--ion-color-step-100,#f4f5f8);border-left:4px solid var(--ion-color-step-400,#9e9e9e);width:100%;color:var(--ion-color-step-900,#111827);border-radius:8px;margin:6px 0;padding:8px 12px;font-size:.9rem;line-height:1.45;box-shadow:0 1px 4px #0000000a}.learning-callout p,.learning-callout span{margin:0}.learning-callout__title{text-transform:uppercase;letter-spacing:.4px;align-items:center;gap:6px;margin-bottom:4px;font-size:.82rem;font-weight:700;display:flex}.learning-callout-text{width:100%;color:var(--ion-color-step-800,#333);white-space:pre-line;margin:0;font-size:.88rem;line-height:1.45}.learning-callout--info{background:var(--ion-color-step-100,#f4f5f8);border-left-color:var(--ion-color-primary,#0073aa)}.learning-callout--info .learning-callout__title{color:var(--ion-color-primary,#0073aa)}.learning-callout--tip{background:var(--ion-color-step-100,#f4f5f8);border-left-color:#f57f17}.learning-callout--tip .learning-callout__title{color:#f57f17}.learning-callout--quote{background:var(--ion-color-step-100,#f4f5f8);border-left-color:#4338ca}.learning-callout--quote .learning-callout__title{color:#4338ca}.learning-callout--success{background:var(--ion-color-step-100,#f4f5f8);border-left-color:var(--ion-color-success,#00a32a)}.learning-callout--success .learning-callout__title{color:var(--ion-color-success,#00a32a)}.learning-callout--error{background:var(--ion-color-step-100,#f4f5f8);border-left-color:var(--ion-color-danger,#d63638)}.learning-callout--error .learning-callout__title{color:var(--ion-color-danger,#d63638)}.learning-callout--warning{background:var(--ion-color-step-100,#f4f5f8);border-left-color:#ff9800}.learning-callout--warning .learning-callout__title{color:#ff9800}.learning-instruction-bar,.qcm-instruction-bar{background:var(--ion-color-step-100,#f4f5f8);box-sizing:border-box;text-align:center;border:1px solid var(--ion-color-step-200,#e0e0e0);width:100%;color:var(--ion-text-color,var(--ion-color-dark));border-radius:8px;justify-content:center;align-items:center;margin:4px 0 2px;padding:8px 12px;font-size:.95rem;font-weight:600;display:flex}.learning-instruction-bar p,.learning-instruction-bar span,.qcm-instruction-bar p,.qcm-instruction-bar span{margin:0}.section-instruction{text-align:center;color:var(--ion-color-step-800,#333);margin-bottom:8px;font-size:.95rem;font-weight:600}.target-piece-container{justify-content:center;align-items:center;margin-top:8px;display:flex}.target-piece-chip{background:var(--ion-color-light-tint,#f4f5f8);border:1px solid var(--ion-color-light-shade,#e0e0e0);border-radius:20px;align-items:center;gap:8px;height:auto;padding:4px 12px;display:inline-flex;box-shadow:0 1px 3px #0000000d}.target-piece-chip .piece-chip-label{color:var(--ion-text-color,var(--ion-color-dark));font-size:.95rem;font-weight:600}.exercise-card,.interaction-card{background:var(--ion-card-background,var(--ion-item-background,#fff));box-sizing:border-box;border:none;border-radius:8px;width:100%;max-width:500px;margin:0 auto 6px;box-shadow:0 1px 3px #0000000d}.exercise-card ion-card-content,.interaction-card ion-card-content{--padding-top:8px;--padding-bottom:8px;--padding-start:8px;--padding-end:8px}.consigne-card{border-radius:12px;width:100%;max-width:900px;margin:0 0 16px;box-shadow:0 4px 16px #00000014}.consigne-title{text-align:center;font-size:1.15rem;font-weight:600}.exercise-card-header{text-align:center;color:var(--ion-color-step-900,#222);font-size:1rem;font-weight:600;line-height:1.3}.qcm-choices{flex-direction:column;gap:6px;width:100%;max-width:500px;margin:0 auto;display:flex}.choice-btn{--border-radius:6px;--padding-top:6px;--padding-bottom:6px;text-transform:none;white-space:normal;height:38px;min-height:38px;margin:0;font-size:.92rem;font-weight:600}.choice-btn::part(native){white-space:normal;text-align:center;height:38px;min-height:38px;padding:0 12px}.choice-btn--multiline{height:auto;min-height:38px}.choice-btn--multiline::part(native){height:auto;min-height:38px;padding:6px 12px}.choice-text{text-align:left;flex:1}.exercise-action-btn{--border-radius:6px;width:100%;max-width:320px;height:38px;min-height:38px;margin:8px auto 0;font-size:.92rem;font-weight:700;display:block}.action-btn{cursor:pointer;touch-action:manipulation;border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:.9rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.action-btn--primary{background:var(--ion-color-primary,#3880ff);color:#fff;box-shadow:0 2px 6px #3880ff4d}.action-btn--primary:hover:not(:disabled){opacity:.92}.action-btn--neutral{background:var(--ion-color-step-100,#f3f4f6);color:var(--ion-color-step-800,#1f2937);border:1px solid var(--ion-color-step-250,#d1d5db)}.action-btn--neutral:hover:not(:disabled){background:var(--ion-color-step-150,#e5e7eb)}.action-btn--peek{color:#6d28d9;background:#ede9fe;border:1px solid #c4b5fd;border-radius:6px;padding:5px 12px;font-size:.84rem}.action-btn--peek:hover:not(:disabled){background:#ddd6fe}.validate-btn{--border-radius:8px;width:100%;max-width:320px;height:44px;min-height:44px;font-size:.95rem;font-weight:700}.neutral-toggle{background:var(--ion-color-step-100,#f1f3f5);border:1px solid var(--ion-color-step-200,#e0e0e0);-webkit-user-select:none;user-select:none;border-radius:24px;flex-shrink:0;align-items:center;gap:3px;padding:2px 3px;display:inline-flex}.neutral-toggle .toggle-btn{color:var(--ion-color-step-600,#6b7280);cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:18px;outline:none;justify-content:center;align-items:center;gap:4px;min-height:32px;padding:4px 12px;font-size:.82rem;font-weight:700;transition:all .15s;display:inline-flex}.neutral-toggle .toggle-btn--oui.is-selected{background:var(--ion-color-success,#198754)!important;color:#fff!important}.neutral-toggle .toggle-btn--non.is-selected{background:var(--ion-color-danger,#dc3545)!important;color:#fff!important}.neutral-toggle .toggle-btn--custom.is-selected{background:var(--ion-color-primary,#3880ff)!important;color:#fff!important}.neutral-toggle .toggle-btn:disabled{opacity:.8;cursor:default}.neutral-toggle--large{border-radius:28px;gap:4px;padding:3px 4px}.neutral-toggle--large .toggle-btn{border-radius:22px;min-height:36px;padding:6px 18px;font-size:.88rem}.learning-piece-palette,.piece-palette{box-sizing:border-box;background:var(--ion-card-background,var(--ion-item-background,#fff));border:1px solid var(--ion-color-step-150,#e0e0e0);border-radius:8px;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;width:100%;margin:0 auto;padding:6px;display:grid;box-shadow:0 1px 3px #0000000d;background-image:none!important}.learning-piece-palette :-webkit-any(piece,.piece){pointer-events:none;background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important;width:100%!important;height:100%!important;display:block!important;position:relative!important;top:0!important;left:0!important}.learning-piece-palette :is(piece,.piece){pointer-events:none;background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important;width:100%!important;height:100%!important;display:block!important;position:relative!important;top:0!important;left:0!important}.piece-palette :-webkit-any(piece,.piece){pointer-events:none;background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important;width:100%!important;height:100%!important;display:block!important;position:relative!important;top:0!important;left:0!important}.piece-palette :is(piece,.piece){pointer-events:none;background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important;width:100%!important;height:100%!important;display:block!important;position:relative!important;top:0!important;left:0!important}.setup-palette{box-sizing:border-box;background:var(--ion-card-background,var(--ion-item-background,#fff));border:1px solid var(--ion-color-step-150,#e0e0e0);border-radius:8px;width:100%;margin:0 auto;padding:6px;display:block;box-shadow:0 1px 3px #0000000d;background-image:none!important}.setup-palette :-webkit-any(piece,.piece){pointer-events:none;background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important;width:100%!important;height:100%!important;display:block!important;position:relative!important;top:0!important;left:0!important}.setup-palette :is(piece,.piece){pointer-events:none;background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important;width:100%!important;height:100%!important;display:block!important;position:relative!important;top:0!important;left:0!important}.setup-palette-grid{box-sizing:border-box;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;width:100%;display:grid}@media (min-width:400px){.setup-palette-grid{gap:8px}}.piece-btn,.palette-btn{aspect-ratio:1;box-sizing:border-box;border:1px solid var(--ion-color-step-200,#ddd);background:var(--ion-color-step-50,#fafafa);cursor:pointer;touch-action:manipulation;border-radius:8px;justify-content:center;align-items:center;width:100%;min-width:0;padding:4px;transition:transform .15s,border-color .15s,background-color .15s;display:flex;position:relative}.piece-btn:hover,.palette-btn:hover{border-color:var(--ion-color-primary,#3880ff);background:var(--ion-color-primary-tint,#e8f0fe);transform:scale(1.04)}.piece-btn.is-selected,.palette-btn.is-selected{border-color:var(--ion-color-primary,#3880ff);background:var(--ion-color-primary-tint,#e8f0fe);box-shadow:0 0 0 2px var(--ion-color-primary,#3880ff)}.piece-btn:disabled,.palette-btn:disabled{cursor:default;opacity:.85;pointer-events:none}.palette-btn--erase{aspect-ratio:auto;grid-area:1/7/span 2;justify-content:center;align-items:center;height:100%;display:flex}.palette-btn--erase .erase-icon{font-size:1.35rem;line-height:1}.palette-btn--erase.is-selected{background:#dc35451a;border-color:#dc3545;box-shadow:0 0 0 2px #dc35454d}.piece-icon-box,cg-board.piece-icon-box{flex-shrink:0;width:28px;height:28px;display:block;position:relative;background:0 0!important}.piece-icon-box piece,.piece-icon-box .piece,cg-board.piece-icon-box piece,cg-board.piece-icon-box .piece{background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}.learning-pgn-bar,.navigation-controls{justify-content:center;align-items:center;gap:10px;margin-top:4px;display:flex}.learning-pgn-btn,.nav-btn{--border-radius:50%;--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;width:44px;height:44px;margin:0}.learning-pgn-btn ion-icon,.nav-btn ion-icon{font-size:1.3rem}.learning-comment-box,.comment-container{background:var(--ion-color-step-100,#f4f5f8);border-left:4px solid var(--ion-color-primary,#3880ff);box-sizing:border-box;border-radius:8px;align-items:flex-start;width:100%;min-height:42px;max-height:120px;margin-top:6px;padding:8px 12px;display:flex;overflow-y:auto;box-shadow:0 1px 4px #0000000a}.learning-comment-box.comment-empty,.learning-comment-box--empty,.comment-container.comment-empty,.comment-container--empty{visibility:hidden;box-shadow:none;background:0 0;border-left-color:#0000;height:42px;min-height:42px}.comment-text{width:100%;color:var(--ion-color-step-800,#333);white-space:pre-line;margin:0;font-size:.88rem;line-height:1.4}.hub-panel-card{border-radius:16px;margin:0;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 4px 16px #00000014}.hub-panel-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f}.dev-ribbon-wrapper{pointer-events:none;z-index:10;width:110px;height:110px;position:absolute;top:0;right:0;overflow:hidden}.dev-ribbon{color:#fff;text-transform:uppercase;letter-spacing:.5px;text-align:center;background:linear-gradient(135deg,#f59e0b,#d97706);width:140px;padding:4px 0;font-size:.72rem;font-weight:800;position:absolute;top:22px;right:-32px;transform:rotate(45deg);box-shadow:0 2px 6px #00000040}.card-in-dev{border:1px dashed #f59e0b66}.dev-notice{background:#f59e0b14;border-left:3px solid #f59e0b}.dev-status-tag{color:#b45309;align-items:center;gap:6px;margin-bottom:6px;font-size:.92rem;display:flex}.dev-desc{color:var(--ion-color-step-700,#444);margin:0;font-size:.86rem;line-height:1.4}.panel-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.panel-icon-wrapper{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.6rem;display:flex}.cours-icon{background:rgba(var(--ion-color-tertiary-rgb,112, 68, 255), .15);color:var(--ion-color-tertiary,#7044ff)}.play-icon{background:rgba(var(--ion-color-primary-rgb,56, 128, 255), .15);color:var(--ion-color-primary,#3880ff)}.panel-title{margin-top:4px;font-size:1.35rem;font-weight:700}.panel-subtitle{color:var(--ion-color-step-600,#666);margin-top:2px;font-size:.9rem}.mini-lock{vertical-align:-1px;font-size:.8rem}.action-link{color:var(--ion-color-primary,#3880ff);align-items:center;gap:6px;margin-top:10px;font-weight:600;display:flex}.play-features-chips{flex-wrap:wrap;gap:8px;display:flex}.feature-chip{background:var(--ion-color-step-100,#f4f5f8);color:var(--ion-color-step-800,#222);border-radius:20px;padding:4px 10px;font-size:.8rem}.feature-chip.disabled{opacity:.6;font-style:italic}.panel-status-locked{background:var(--ion-color-step-50,#fafafa);color:var(--ion-color-step-700,#555);border-radius:8px;padding:12px;font-size:.9rem}.assigned-section{margin-bottom:8px}.section-title-wrapper{align-items:center;gap:8px;margin-bottom:4px;display:flex}.section-title{color:var(--ion-text-color,#1d2327);align-items:center;gap:6px;margin:0;font-size:1.15rem;font-weight:700;display:flex}.section-icon{color:var(--ion-color-primary,#0073aa);font-size:1.25rem}.section-badge{background:var(--ion-color-primary,#0073aa);color:#fff;border-radius:12px;padding:2px 8px;font-size:.75rem;font-weight:700}.section-subtitle{color:var(--ion-color-step-600,#666);margin:0 0 10px;font-size:.85rem}.cours-card{border-radius:12px;margin:0;transition:transform .2s,opacity .2s}.cours-card:not(.locked):active{transform:scale(.98)}.cours-card.locked{opacity:.6;filter:grayscale(80%);cursor:not-allowed}.cours-header-wrapper{justify-content:space-between;align-items:center;display:flex}.assigned-tag{background:#ffffff59;border:1px solid #fff9;border-radius:4px;margin-right:6px;padding:1px 6px;font-size:.75rem;font-weight:700;display:inline-block}.progress-pill{background:#ffffff59;border:1px solid #ffffff80;border-radius:12px;flex-shrink:0;margin-left:8px;padding:3px 8px;font-size:.8rem;font-weight:700}.lock-icon{color:var(--ion-color-step-600,#666);flex-shrink:0;margin-left:8px;font-size:1.5rem}.cours-meta-card{background:var(--ion-color-light);text-align:center;border-radius:12px}.cours-meta-card h2{margin:0 0 10px;font-weight:700}.chapitre-badge{color:#fff;border-radius:20px;padding:4px 12px;font-size:.9rem;font-weight:600;display:inline-block}.playlist-list{background:0 0}.playlist-item{--background:var(--ion-background-color);--border-radius:8px;margin-bottom:8px}.type-subtitle{color:var(--ion-color-medium);margin:2px 0 0;font-size:.85rem}.roi-bloc-fen,.roi-bloc-pgn{width:100%;max-width:400px;margin:16px auto;display:block}.roi-bloc-fen .board-container,.roi-bloc-pgn .board-container{box-shadow:none!important;border-radius:0!important}.lecon-content-wrapper{color:var(--ion-text-color,var(--ion-color-dark));margin-bottom:24px;font-size:1rem;line-height:1.6}.video-reader-container{background:var(--ion-card-background,#fff);border-radius:12px;flex-direction:column;width:100%;margin-top:4px;transition:all .25s ease-in-out;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 16px #00000014}.video-reader-container.is-pseudo-fullscreen{z-index:999999!important;background:#000!important;border-radius:0!important;justify-content:center!important;align-items:center!important;width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;margin:0!important;position:fixed!important;top:0!important;bottom:0!important;left:0!important;right:0!important}.video-reader-container.is-pseudo-fullscreen .video-responsive-wrapper{width:100vw;height:100vh;padding-bottom:0}.video-reader-container.is-pseudo-fullscreen .video-iframe{width:100%;height:100%}:-webkit-full-screen .video-reader-container{background:#000;border-radius:0;justify-content:center;align-items:center;max-width:100vw;height:100vh}:fullscreen .video-reader-container{background:#000;border-radius:0;justify-content:center;align-items:center;max-width:100vw;height:100vh}.video-reader-container:-webkit-full-screen{background:#000;border-radius:0;justify-content:center;align-items:center;max-width:100vw;height:100vh}.video-reader-container:fullscreen{background:#000;border-radius:0;justify-content:center;align-items:center;max-width:100vw;height:100vh}:-webkit-full-screen .video-responsive-wrapper{width:100vw;height:100vh;padding-bottom:0}:fullscreen .video-responsive-wrapper{width:100vw;height:100vh;padding-bottom:0}.video-reader-container:-webkit-full-screen .video-responsive-wrapper{width:100vw;height:100vh;padding-bottom:0}.video-reader-container:fullscreen .video-responsive-wrapper{width:100vw;height:100vh;padding-bottom:0}.floating-exit-fullscreen-btn{top:max(12px, env(safe-area-inset-top,12px));right:max(12px, env(safe-area-inset-right,12px));z-index:100000;color:#fff;cursor:pointer;background:#000000d1;border:1px solid #ffffff4d;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;box-shadow:0 2px 10px #0006}.floating-exit-fullscreen-btn:active{background:#000000d9;transform:scale(.96)}.exit-icon{font-size:18px}.video-responsive-wrapper{background:#000;width:100%;height:0;padding-bottom:56.25%;position:relative}.video-iframe{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.video-placeholder{color:#888;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.placeholder-icon{margin-bottom:8px;font-size:48px}.video-actions-bar{background:var(--ion-color-step-50,#f8f9fa);border-bottom:1px solid var(--ion-color-step-150,#e9ecef);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.video-badge-duree{color:var(--ion-color-medium,#6c757d);background:var(--ion-color-step-100,#e9ecef);border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:12px;font-weight:600;display:inline-flex}.duree-icon{font-size:14px}.fullscreen-toggle-btn{--border-radius:8px;margin:0;font-size:12px}.video-fallback-notice{color:var(--ion-color-warning-shade,#e0a800);align-items:center;gap:6px;padding-top:8px;padding-bottom:8px;font-size:12px;display:flex}.video-accompanying-text{color:var(--ion-text-color,#212529);font-size:15px;line-height:1.6}.cap-ou-pas-cap-viewer-wrapper{width:100%}.qcm-multiple-panel{flex-direction:column;gap:6px;display:flex}.proposition-row{background:var(--ion-color-step-50,#f9fafb);border:1px solid var(--ion-color-step-150,#eef0f2);box-sizing:border-box;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.proposition-text{color:var(--ion-color-step-850,#1f2937);flex:1;font-size:.88rem;font-weight:600;line-height:1.3}.qcm-oui-non-panel{flex-direction:column;align-items:center;gap:14px;padding:6px 4px;display:flex}.question-header{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.question-text{color:var(--ion-color-step-900,#111827);margin-bottom:16px;font-size:1rem;font-weight:600;line-height:1.4}.move-panel{text-align:center;padding:8px}.move-hint{color:var(--ion-color-step-650,#4b5563);justify-content:center;align-items:center;gap:8px;font-size:.92rem;font-weight:500;display:flex}.move-hint-icon{font-size:1.25rem}.move-success-hint{color:#198754;justify-content:center;align-items:center;gap:8px;font-size:.95rem;font-weight:600;display:flex}.move-success-icon{font-size:1.2rem;font-weight:700}.multi-move-status{flex-direction:column;align-items:center;gap:6px;display:flex}.multi-move-badge{background:var(--ion-color-primary,#3880ff);color:#fff;border-radius:14px;padding:4px 12px;font-size:.85rem;font-weight:700;display:inline-block}.multi-move-instruction{color:var(--ion-color-step-700,#374151);font-size:.9rem;font-weight:500}.multi-move-success{color:#198754;font-size:.95rem;font-weight:700}.found-moves-chips{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:8px;display:flex}.move-chip{color:#198754;background:#1987541f;border:1px solid #198754;border-radius:6px;padding:3px 8px;font-size:.82rem;font-weight:700}.clic-panel{flex-direction:column;align-items:center;gap:8px;padding:6px 4px;display:flex}.materiel-actions{margin-bottom:6px}.clic-hint{color:var(--ion-color-step-650,#4b5563);text-align:center;justify-content:center;align-items:center;gap:8px;font-size:.9rem;font-weight:500;display:flex}.clic-hint-icon{font-size:1.2rem}.setup-panel{flex-direction:column;gap:8px;padding:4px 2px;display:flex}.setup-memorize-panel{flex-direction:column;align-items:center;gap:10px;padding:8px;display:flex}.setup-hint{color:var(--ion-color-step-850,#1f2937);text-align:center;margin:0;font-size:.95rem;font-weight:600}.setup-top-actions{justify-content:center;margin-bottom:6px;display:flex}.setup-instruction{color:var(--ion-color-step-600,#4b5563);text-align:center;margin:4px 0 0;font-size:.82rem}.notation-panel{flex-direction:column;gap:8px;padding:4px 2px;display:flex}.notation-piece-row{background:var(--ion-color-step-50,#f9fafb);border:1.5px solid var(--ion-color-step-150,#eef0f2);box-sizing:border-box;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.notation-piece-row.is-valid{background:#1987540d;border-color:#198754}.notation-piece-row.is-invalid{background:#dc35450d;border-color:#dc3545}.piece-info{flex:1;align-items:center;gap:8px;display:flex}.piece-label{color:var(--ion-color-step-850,#1f2937);font-size:.88rem;font-weight:600;line-height:1.2}.notation-input-wrapper{flex-shrink:0;align-items:center;width:110px;display:flex;position:relative}.notation-input{border:1.5px solid var(--ion-color-step-250,#d1d5db);width:100%;height:34px;color:var(--ion-text-color,var(--ion-color-dark));background:var(--ion-item-background,var(--ion-card-background,#fff));text-align:center;box-sizing:border-box;border-radius:6px;outline:none;padding:4px 26px 4px 8px;font-family:inherit;font-size:.95rem;font-weight:700;transition:border-color .2s,box-shadow .2s}.notation-input:focus{border-color:var(--ion-color-primary,#3880ff);box-shadow:0 0 0 2px rgba(var(--ion-color-primary-rgb,56, 128, 255), .2)}.notation-input:disabled{background:var(--ion-background-color-step-100,var(--ion-color-step-100,#f3f4f6));color:var(--ion-color-medium,#888);cursor:default}.notation-status-icon{pointer-events:none;font-size:1rem;font-weight:800;position:absolute;right:8px}.success-icon{color:var(--ion-color-success,#00a32a)}.error-icon{color:var(--ion-color-danger,#d63638)}.piece-square{color:var(--ion-text-color,var(--ion-color-dark));font-family:monospace,Courier;font-size:.95rem;font-weight:700}.scenario-card{cursor:pointer;background:var(--ion-card-background,var(--ion-item-background,#fff));border:2px solid #0000;border-radius:12px;width:100%;max-width:400px;margin:0 auto;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 10px #0000000f}.scenario-card:hover,.scenario-card:active{border-color:var(--ion-color-primary,#3880ff);transform:translateY(-2px);box-shadow:0 6px 18px #0000001f}.scenario-header{justify-content:space-between;align-items:center;padding:10px 14px 6px;display:flex}.scenario-badge{color:var(--ion-color-primary,#3880ff);font-size:.9rem;font-weight:700}.scenario-hint{color:var(--ion-color-step-600,#666);font-size:.8rem}.column-header{text-align:center;margin-bottom:8px}.column-title{color:var(--ion-text-color,var(--ion-color-dark));margin:0 0 2px;font-size:.95rem;font-weight:700}.column-subtitle{color:var(--ion-color-step-500);text-transform:uppercase;letter-spacing:.4px;font-size:.72rem}.theme-title{color:var(--ion-color-primary);font-size:1.1rem;font-weight:700}.phase-title{text-align:center;margin-bottom:12px;font-size:1.1rem;font-weight:600}.variant-indicator-bar{background:rgba(var(--ion-color-warning-rgb,217, 79, 0), .15);border:1px solid var(--ion-color-warning,#d94f00);color:var(--ion-text-color,var(--ion-color-dark));border-radius:8px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:.88rem;display:flex}.variant-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.return-btn{--border-radius:6px;height:28px;margin:0;font-size:.78rem;font-weight:600}.variant-finish-action{margin-top:8px}.animate-fade-in{animation:.2s ease-in-out learningFadeIn}@keyframes learningFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.game-meta-card,.analysis-meta-card{background:var(--ion-card-background,#fff);border-radius:var(--dame-card-radius,12px);box-shadow:var(--dame-card-shadow,0 1px 4px #0000000d);border:var(--dame-card-border,1px solid var(--ion-color-step-100,#e9ecef));margin-bottom:6px;padding:10px 14px}.meta-main{justify-content:space-between;align-items:center;display:flex}.meta-left{flex-direction:column;display:flex}.player-title{color:var(--ion-text-color,#111827);letter-spacing:-.2px;margin:0;font-size:1.05rem;font-weight:700}.game-type-subtitle{color:var(--ion-color-primary,#3880ff);margin:2px 0 0;font-size:.78rem;font-weight:600}.meta-right{flex-direction:column;align-items:flex-end;display:flex}.elo-badge{background:var(--ion-color-primary,#3880ff);color:#fff;letter-spacing:.3px;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:700}.elo-badge.local-badge{background:var(--ion-color-secondary,#3dc2ff)}.level-label{color:var(--ion-color-step-600,#6b7280);margin-top:2px;font-size:.72rem;font-weight:500}.message-zone{justify-content:center;align-items:center;min-height:38px;display:flex}.status-banner{border-radius:20px;padding:6px 14px;font-size:.85rem;font-weight:600;box-shadow:0 1px 4px #00000014}.status-banner.warning{background:rgba(var(--ion-color-warning-rgb,255, 196, 9), .15);color:#b45309;border:1px solid rgba(var(--ion-color-warning-rgb,255, 196, 9), .4)}.status-banner.danger{background:rgba(var(--ion-color-danger-rgb,235, 68, 90), .12);color:var(--ion-color-danger,#eb445a);border:1px solid rgba(var(--ion-color-danger-rgb,235, 68, 90), .3)}.status-banner.medium{background:var(--ion-color-step-100,#f3f4f6);color:var(--ion-color-step-800,#1f2937);border:1px solid var(--ion-color-step-200,#e5e7eb)}.status-placeholder{color:var(--ion-color-step-600,#6b7280);background:var(--ion-color-step-50,#f9fafb);border:1px solid var(--ion-color-step-100,#f3f4f6);border-radius:16px;align-items:center;gap:8px;padding:4px 12px;font-size:.85rem;font-weight:500;display:inline-flex}.turn-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.turn-dot.white{background:#fff;border:1.5px solid #4b5563}.turn-dot.black{background:#111827;border:1.5px solid #111827}.actions-container{width:100%;overflow:hidden}.actions-row{width:calc(100% + 6px);margin:0 -3px}.actions-row ion-col{padding:0 3px}.game-action-btn{--border-radius:8px;--padding-start:4px;--padding-end:4px;width:100%;min-width:0;max-width:100%;height:36px;margin:0;font-size:.76rem;font-weight:600}.game-action-btn ion-icon{flex-shrink:0;margin-right:3px;font-size:.95rem}.game-action-btn span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.btn-counter-badge{border-radius:8px;flex-shrink:0;margin-left:2px;padding:1px 4px;font-size:.62rem;line-height:1.2}@media (max-width:400px){.actions-row{width:calc(100% + 4px);margin:0 -2px}.actions-row ion-col{padding:0 2px}.game-action-btn{--padding-start:2px;--padding-end:2px;height:34px;font-size:.7rem}.game-action-btn ion-icon{margin-right:2px;font-size:.85rem}.btn-counter-badge{margin-left:1px;padding:1px 3px;font-size:.58rem}}.landscape-mode .actions-row{width:100%;margin:0}.landscape-mode .actions-row ion-col{padding:3px 0}.ply-badge{background:var(--ion-color-tertiary,#7044ff);color:#fff;letter-spacing:.3px;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:700}.move-table{flex-direction:column;width:100%;display:flex}.move-table-row{border-bottom:1px solid var(--ion-color-light);display:flex}.move-table-row:last-child{border-bottom:none}.move-group{border-right:1px solid var(--ion-color-light);flex:1;align-items:center;padding:8px 4px;font-family:monospace;font-size:.9rem;display:flex}.move-group:last-child{border-right:none}.move-num{color:var(--ion-color-medium);text-align:right;width:25px;margin-right:4px;font-size:.75rem;font-weight:700}.move-san{cursor:pointer;text-align:center;white-space:nowrap;border-radius:4px;flex:1;padding:2px 4px}.move-san.active-move{background:var(--ion-color-tertiary);color:#fff;font-weight:700}.move-san.empty{cursor:default}.chess-piece-symbol{vertical-align:middle;font-size:1.3em!important;font-weight:700!important}.success-card{border-left:5px solid var(--ion-color-success);background:var(--ion-card-background,var(--ion-item-background,#fff));border-radius:var(--dame-item-radius,8px);margin-top:16px}.success-title{color:var(--ion-color-success);font-size:1.25rem;font-weight:700}.success-subtitle{color:var(--ion-color-step-600,#666);margin:0;font-size:1rem}.action-buttons{flex-direction:column;gap:8px;display:flex}.next-btn{font-weight:600}.lecon-content{background:var(--ion-card-background,var(--ion-item-background,#fff));border-radius:var(--dame-item-radius,8px);font-size:1.1rem;line-height:1.6}.learning-full-width{width:100%}.learning-step-resolution{justify-content:center;width:100%;display:flex}.exercise-action-wrapper{width:100%;max-width:320px;margin-top:12px}.empty-placeholder{aspect-ratio:1;width:100%;color:var(--ion-color-step-400);justify-content:center;align-items:center;display:flex}.empty-icon{margin-bottom:4px;font-size:1.5rem;display:block}.learning-interaction-column{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.learning-interaction-instruction{margin:4px 0;font-size:.9rem;font-weight:600}.board-wrapper-with-eval{flex-direction:row;justify-content:center;align-items:center;gap:8px;width:100%;max-width:100%;height:auto;max-height:100%;display:flex}.board-wrapper-with-eval .board-container{aspect-ratio:1;flex-direction:column;flex:0 auto;justify-content:center;align-items:center;width:min(72vh,100%);max-width:100%;display:flex}.board-wrapper-with-eval .analysis-eval-bar-container+.board-container{max-width:calc(100% - 36px)}.analysis-eval-bar-container{background:var(--ion-color-step-100,#222);border:1px solid var(--ion-color-step-200,#333);border-radius:6px;flex-direction:column;justify-content:space-between;align-self:stretch;align-items:center;width:28px;padding:4px 2px;display:flex;overflow:hidden}.move-start-row{margin-bottom:6px;display:flex}.start-position-btn{width:100%;color:var(--ion-color-step-600,#666);background:var(--ion-color-step-50,#f8f9fa);border:1px solid var(--ion-color-step-150,#e9ecef);border-radius:var(--dame-button-radius,6px);cursor:pointer;align-items:center;gap:6px;padding:5px 8px;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}@media (prefers-color-scheme:dark){.start-position-btn{color:var(--ion-text-color,#e2e8f0)}}.start-position-btn ion-icon{color:inherit;font-size:.95rem}.start-position-btn:hover{background:var(--ion-color-step-100,#e9ecef);color:var(--ion-text-color,#212529)}.start-position-btn.active-move{background:var(--ion-color-primary,#3880ff);border-color:var(--ion-color-primary,#3880ff);color:#fff!important}.start-position-btn.active-move ion-icon{color:#fff!important}.analysis-eval-bar{background:#2b2b2b;border-radius:4px;flex-direction:column;flex:1;justify-content:flex-end;width:12px;display:flex;position:relative;overflow:hidden}.analysis-eval-fill{width:100%;height:var(--eval-percent,50%);background:#fff;transition:height .3s}.analysis-eval-label{text-align:center;color:var(--ion-text-color,#fff);margin-top:4px;font-size:.7rem;font-weight:700;line-height:1}.eval-badge{letter-spacing:.3px;border-radius:6px;margin-left:6px;padding:3px 8px;font-size:.75rem;font-weight:700}.eval-badge.is-white{color:#111827;background:#fff;border:1px solid #d1d5db}.eval-badge.is-black{color:#fff;background:#111827}.engine-status-indicator{border-radius:var(--dame-pill-radius,12px);background:var(--ion-color-step-100,#0000000d);color:var(--ion-text-color-step-400,#555);align-items:center;gap:6px;padding:3px 8px;font-size:.75rem;font-weight:600;transition:all .25s;display:inline-flex}.engine-status-indicator .status-dot{background:#888;border-radius:50%;flex-shrink:0;width:8px;height:8px;transition:background .3s,box-shadow .3s}.engine-status-indicator.engine-status-ready{color:var(--ion-color-success-shade,#24aa5a);background:#2dd36f1f}.engine-status-indicator.engine-status-ready .status-dot{background:var(--ion-color-success,#2dd36f);box-shadow:0 0 6px #2dd36f99}.engine-status-indicator.engine-status-searching{color:var(--ion-color-danger-shade,#cf3c4f);background:#eb445a1f}.engine-status-indicator.engine-status-searching .status-dot{background:var(--ion-color-danger,#eb445a);animation:1s ease-in-out infinite alternate status-pulse-danger;box-shadow:0 0 8px #eb445acc}.engine-status-indicator.engine-status-loading{color:var(--ion-color-warning-shade,#d4a007);background:#ffc40926}.engine-status-indicator.engine-status-loading .status-dot{background:var(--ion-color-warning,#ffc409);animation:.8s ease-in-out infinite alternate status-pulse-warning;box-shadow:0 0 6px #ffc40999}.engine-status-indicator.engine-status-error{color:var(--ion-color-danger,#eb445a);background:#eb445a26}.engine-status-indicator.engine-status-error .status-dot{background:var(--ion-color-danger,#eb445a)}.engine-status-indicator.engine-status-stopping{color:var(--ion-color-medium,#92949c);background:#92949c26}.engine-status-indicator.engine-status-stopping .status-dot{background:var(--ion-color-medium,#92949c)}.engine-status-indicator.engine-status-uninitialized{color:var(--ion-color-medium,#92949c);background:#92949c1a}.engine-status-indicator.engine-status-uninitialized .status-dot{background:#aaa}.engine-status-indicator.is-clickable{cursor:pointer}.engine-status-indicator.is-clickable:hover{filter:brightness(.92);transform:translateY(-1px)}@keyframes status-pulse-danger{0%{opacity:.7;transform:scale(.9);box-shadow:0 0 2px #eb445a66}to{opacity:1;transform:scale(1.25);box-shadow:0 0 10px #eb445ae6}}@keyframes status-pulse-warning{0%{opacity:.7;transform:scale(.9)}to{opacity:1;transform:scale(1.2)}}.analysis-actions-toolbar{gap:6px;width:100%;margin-bottom:8px;display:flex}.analysis-actions-toolbar ion-button{--border-radius:8px;flex:1;height:34px;margin:0;font-size:.75rem;font-weight:600}.analysis-actions-toolbar ion-button ion-icon{margin-right:4px;font-size:.95rem}.analysis-review-progress{background:var(--ion-color-step-50,#f8f9fa);border:1px solid var(--ion-color-step-150,#e9ecef);border-radius:8px;width:100%;margin-bottom:8px;padding:6px 10px}.analysis-review-progress .review-progress-text{color:var(--ion-color-primary);justify-content:space-between;margin-bottom:4px;font-size:.8rem;font-weight:600;display:flex}.analysis-review-progress ion-progress-bar{--progress-background:var(--ion-color-primary);border-radius:3px;height:6px}.analysis-pv-info{color:var(--ion-color-step-600,#666);background:var(--ion-color-step-50,#f4f5f8);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;margin-bottom:6px;padding:4px 8px;font-size:.75rem;overflow:hidden}.analysis-pv-info strong{color:var(--ion-text-color,#333)}.judgement-badge{border-radius:4px;margin-left:4px;padding:1px 4px;font-size:.65rem;font-weight:800;line-height:1.1;display:inline-block}.judgement-badge.judgement-brilliant{color:#fff;background:#1ba6ac}.judgement-badge.judgement-best{color:#fff;background:#689f38}.judgement-badge.judgement-excellent{color:#fff;background:#8bc34a}.judgement-badge.judgement-good{color:#333;background:#c5e1a5}.judgement-badge.judgement-inaccuracy{color:#333;background:#ffb74d}.judgement-badge.judgement-mistake{color:#fff;background:#ff7043}.judgement-badge.judgement-blunder{color:#fff;background:#d32f2f}.judgement-badge.judgement-missed-win{color:#fff;background:#e91e63}.analysis-hint-message{color:var(--ion-color-secondary-shade);background:rgba(var(--ion-color-secondary-rgb,56, 128, 255), .12);border:1px solid var(--ion-color-secondary);border-radius:8px;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;font-size:.82rem;font-weight:600;display:flex}.analysis-hint-message ion-icon{flex-shrink:0;font-size:1.1rem}.analysis-review-card{background:var(--ion-card-background,#fff);border:1px solid var(--ion-color-step-150,#e2e8f0);border-radius:var(--dame-card-radius,12px);margin-bottom:8px;padding:10px 12px;box-shadow:0 2px 8px #0000000d}.analysis-review-card .review-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.analysis-review-card .review-header h3{color:var(--ion-text-color,#1a202c);margin:0;font-size:.9rem;font-weight:700}.analysis-review-card .accuracy-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.analysis-review-card .accuracy-grid .accuracy-box{border-radius:8px;flex-direction:column;align-items:center;padding:6px 8px;display:flex}.analysis-review-card .accuracy-grid .accuracy-box.white-box{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1}@media (prefers-color-scheme:dark){.analysis-review-card .accuracy-grid .accuracy-box.white-box{color:#f8fafc;background:#334155;border-color:#475569}}.analysis-review-card .accuracy-grid .accuracy-box.black-box{color:#fff;background:#1e293b;border:1px solid #0f172a}@media (prefers-color-scheme:dark){.analysis-review-card .accuracy-grid .accuracy-box.black-box{color:#f8fafc;background:#0f172a;border-color:#1e293b}}.analysis-review-card .accuracy-grid .accuracy-box .acc-title{text-transform:uppercase;letter-spacing:.4px;opacity:.85;font-size:.7rem;font-weight:600}.analysis-review-card .accuracy-grid .accuracy-box .acc-value{margin-top:2px;font-size:1.2rem;font-weight:800}.analysis-review-card .judgement-summary-grid{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.analysis-review-card .judgement-summary-grid .judgement-pill{border-radius:6px;align-items:center;gap:3px;padding:2px 6px;font-size:.72rem;font-weight:700;display:inline-flex}.analysis-move-card{background:var(--ion-card-background,#fff);border:1px solid var(--ion-color-step-150,#e2e8f0);border-radius:var(--dame-card-radius,12px);margin-bottom:8px;padding:10px 12px;box-shadow:0 2px 8px #0000000d}.analysis-move-card .move-card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.analysis-move-card .move-card-header .move-title-group{align-items:center;gap:8px;display:flex}.analysis-move-card .move-card-header .move-title-group .move-label{color:var(--ion-text-color,#1a202c);font-size:.95rem;font-weight:800}.analysis-move-card .move-card-header .move-nav-mini{gap:4px;display:flex}.analysis-move-card .move-card-header .move-nav-mini .mini-nav-btn{background:var(--ion-color-step-100,#f1f5f9);border:1px solid var(--ion-color-step-200,#cbd5e1);color:var(--ion-text-color,#333);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:4px 6px;transition:background-color .15s;display:inline-flex}.analysis-move-card .move-card-header .move-nav-mini .mini-nav-btn:disabled{opacity:.4;cursor:not-allowed}.analysis-move-card .move-card-header .move-nav-mini .mini-nav-btn:not(:disabled):hover{background:var(--ion-color-step-200,#e2e8f0)}.analysis-move-card .move-card-header .move-nav-mini .mini-nav-btn ion-icon{color:var(--ion-text-color,#333);font-size:.9rem}.analysis-move-card .move-details-grid{background:var(--ion-color-step-50,#f8fafc);border:1px solid var(--ion-color-step-150,#e2e8f0);border-radius:8px;flex-direction:column;gap:6px;margin-bottom:8px;padding:8px 10px;display:flex}.analysis-move-card .move-details-grid .move-detail-row{justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.analysis-move-card .move-details-grid .move-detail-row .detail-label{color:var(--ion-color-step-600,#64748b);font-weight:600}@media (prefers-color-scheme:dark){.analysis-move-card .move-details-grid .move-detail-row .detail-label{color:#94a3b8}}.analysis-move-card .move-details-grid .move-detail-row .detail-move{color:var(--ion-text-color,#1e293b);align-items:center;gap:6px;font-weight:700;display:inline-flex}.analysis-move-card .move-details-grid .move-detail-row .detail-move .chess-piece-symbol{color:inherit}.analysis-move-card .move-details-grid .move-detail-row .detail-move .arrow-indicator{font-size:1rem;line-height:1}.analysis-move-card .move-details-grid .move-detail-row .detail-move .arrow-indicator.arrow-green{color:#2e7d32}@media (prefers-color-scheme:dark){.analysis-move-card .move-details-grid .move-detail-row .detail-move .arrow-indicator.arrow-green{color:#4ade80}}.analysis-move-card .move-details-grid .move-detail-row .detail-move .arrow-indicator.arrow-red{color:#d32f2f}@media (prefers-color-scheme:dark){.analysis-move-card .move-details-grid .move-detail-row .detail-move .arrow-indicator.arrow-red{color:#f87171}}.analysis-move-card .move-details-grid .move-detail-row .detail-move .arrow-indicator.arrow-yellow{color:#d97706}@media (prefers-color-scheme:dark){.analysis-move-card .move-details-grid .move-detail-row .detail-move .arrow-indicator.arrow-yellow{color:#fbbf24}}.analysis-move-card .move-details-grid .move-detail-row .detail-move .arrow-indicator.arrow-blue{color:#0288d1}@media (prefers-color-scheme:dark){.analysis-move-card .move-details-grid .move-detail-row .detail-move .arrow-indicator.arrow-blue{color:#38bdf8}}.analysis-move-card .move-comment{color:var(--ion-color-step-700,#475569);margin-bottom:8px;font-size:.8rem;font-style:italic}@media (prefers-color-scheme:dark){.analysis-move-card .move-comment{color:#cbd5e1}}.analysis-move-card .move-toggle-actions{gap:6px;display:flex}.analysis-move-card .move-toggle-actions .step-toggle-btn{border:1px solid var(--ion-color-step-200,#cbd5e1);background:var(--ion-color-step-50,#f8fafc);color:var(--ion-color-step-700,#475569);cursor:pointer;border-radius:6px;flex:1;padding:6px 10px;font-size:.78rem;font-weight:600;transition:all .15s}@media (prefers-color-scheme:dark){.analysis-move-card .move-toggle-actions .step-toggle-btn{color:#cbd5e1}}.analysis-move-card .move-toggle-actions .step-toggle-btn.is-active{background:var(--ion-color-primary,#3880ff);border-color:var(--ion-color-primary,#3880ff);color:#fff!important}.analysis-move-card .move-toggle-actions .step-toggle-btn:not(.is-active):hover{background:var(--ion-color-step-100,#f1f5f9)}ion-menu{--width:280px}.menu-item{--border-radius:8px;--color:var(--ion-text-color);margin:8px}.menu-item.active{--background:rgba(var(--ion-color-primary-rgb,0, 115, 170), .15);--color:var(--ion-color-primary);color:var(--ion-color-primary)}.menu-footer{background:var(--ion-background-color,#fff);border-top:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,#00000014));padding:16px;position:absolute;bottom:0;left:0;right:0}.dashboard-section{margin-top:10px;margin-bottom:24px}.organization-name{color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.05em;font-size:.9em}.contact-gender{color:var(--ion-color-medium);margin-top:4px;font-size:.85em}.contact-name{color:var(--ion-text-color,var(--ion-color-dark));margin:4px 0;font-size:1.4em;font-weight:700}.role-name{color:var(--ion-color-primary);font-size:1em;font-weight:500}.form-container{max-width:680px;margin:0 auto;padding-bottom:40px}.section-title{color:var(--ion-color-primary);border-bottom:2px solid var(--ion-background-color-step-100,var(--ion-color-step-100,#e0e0e0));margin-top:25px;margin-bottom:12px;padding-bottom:6px;font-size:1.25em;font-weight:700}.health-info-box{background:var(--ion-background-color-step-50,var(--ion-color-step-50,#f4f5f8));border-radius:var(--dame-item-radius,8px);color:var(--ion-text-color,#444);margin-bottom:15px;padding:12px;font-size:.9em}.radio-group-container{width:100%;padding:10px 0}.input-label{color:var(--ion-color-medium);margin-bottom:8px;font-size:.9em;display:block}.radio-options{flex-wrap:wrap;gap:15px;display:flex}.radio-options.vertical{flex-direction:column;gap:10px;display:flex}.radio-options label{cursor:pointer;color:var(--ion-text-color,#222);align-items:center;gap:6px;font-size:.95em;display:flex}.consent-text{color:var(--ion-text-color,var(--ion-color-dark));font-size:.85em;line-height:1.4}.consent-item{--padding-start:0;border-left:3px solid var(--ion-color-primary);background:var(--ion-background-color-step-50,var(--ion-color-step-50,#f9f9f9));border-radius:4px;padding-left:8px}.signature-section{background:var(--ion-background-color-step-50,var(--ion-color-step-50,#fafafa));border-radius:var(--dame-item-radius,8px);border:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,#e5e5e5));padding:12px}.identity-select-card{--background:var(--ion-card-background,var(--ion-item-background,#f4f5f8));border-left:4px solid var(--ion-color-primary)}.copy-adh-container{justify-content:flex-end;display:flex}.legal-rep-prevention-note{background:var(--ion-background-color-step-50,var(--ion-color-step-50,#f9f9f9));color:var(--ion-color-medium);border-radius:4px;padding:8px 16px;font-style:italic}.suggestions-outer-container{background:var(--ion-card-background,var(--ion-item-background,#fff));border-left:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,#ccc));border-right:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,#ccc));border-bottom:1px solid var(--ion-background-color-step-150,var(--ion-color-step-150,#ccc));z-index:100;margin-top:-1px;position:relative}.suggestions-list{max-height:200px;margin:0;padding:0;list-style:none;overflow-y:auto}.suggestions-list li{cursor:pointer;border-bottom:1px solid var(--ion-background-color-step-50,var(--ion-color-step-50,#eee));color:var(--ion-text-color,var(--ion-color-dark));padding:12px 16px;font-size:.95em}.suggestions-list li:hover{background:var(--ion-background-color-step-100,var(--ion-color-step-50,#f0f0f0))}.pdf-buttons{flex-direction:column;gap:10px;display:flex}.success-icon{margin-bottom:12px;font-size:4rem}.privacy-disclaimer{color:var(--ion-color-medium);text-align:center;margin-top:12px;font-size:.82em;line-height:1.4}.admin-event-categories{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.admin-event-category-badge{--background:var(--event-cat-color,var(--ion-color-primary));--color:#fff;white-space:nowrap;border-radius:4px;align-items:center;padding:4px 8px;font-size:.75rem;font-weight:600;display:inline-flex}
