@font-face{font-family:Neue Haas Grotesk Text Pro;src:url(/fonts/NeueHaasGroteskTextPro-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Neue Haas Grotesk Text Pro;src:url(/fonts/NeueHaasGroteskTextPro-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Neue Haas Grotesk Text Pro;src:url(/fonts/NeueHaasGroteskTextPro-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}:root{--tec-blue: #00377B;--tec-turquoise: #06B5CD;--tec-turquoise-light: #61C0CE;--tec-grey: #C2D0D7;--tec-white: #FFFFFF;--bg-primary: #FFFFFF;--bg-secondary: #FFFFFF;--bg-tertiary: #F4F7F9;--bg-elevated: #FFFFFF;--bg-hover: #F4F7F9;--bg-active: #E7EDF1;--bg-inverted: #00377B;--border: #C2D0D7;--border-light: #E0E7EB;--border-focus: #06B5CD;--text-primary: #00377B;--text-secondary: #3D5A7E;--text-muted: #7A8FA3;--text-inverse: #FFFFFF;--accent: #06B5CD;--accent-light: #61C0CE;--accent-dim: rgba(6, 181, 205, .12);--accent-glow: rgba(6, 181, 205, .25);--success: #2E8540;--success-dim: rgba(46, 133, 64, .12);--warning: #E4A800;--warning-dim: rgba(228, 168, 0, .14);--error: #C8102E;--error-dim: rgba(200, 16, 46, .12);--danger: #C8102E;--font: "Neue Haas Grotesk Text Pro", "Helvetica Neue", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-mono: "SF Mono", "Fira Code", ui-monospace, monospace;--sidebar-width: 260px;--header-height: 64px;--radius: 0;--radius-sm: 0;--radius-lg: 0;--radius-pill: 999px;--transition: .12s cubic-bezier(.2, 0, 0, 1);--transition-slow: .2s cubic-bezier(.2, 0, 0, 1);--hover-brightness: .92;--press-brightness: .85}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font);background:var(--bg-primary);color:var(--text-primary);line-height:1.55;overflow:hidden;height:100vh}.tec-dot:before{content:".";color:var(--tec-turquoise);font-weight:400;font-family:inherit}.tec-wordmark{white-space:nowrap;letter-spacing:-.02em;font-family:var(--font)}.tec-wordmark b{font-weight:700}.tec-wordmark .dot{color:var(--tec-turquoise);font-weight:400}.tec-wordmark .light{font-weight:400}.eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--tec-turquoise);font-weight:700}button{font-family:var(--font);cursor:pointer;border:none;background:none;color:inherit;font-size:inherit}input{font-family:var(--font);border:none;background:none;color:inherit;font-size:inherit;outline:none}#app{display:flex;height:100vh}.sidebar{width:var(--sidebar-width);background:var(--tec-blue);color:var(--tec-white);border-right:0;display:flex;flex-direction:column;transition:transform var(--transition-slow);z-index:100}.sidebar-header{padding:28px 22px 22px;border-bottom:1px solid rgba(255,255,255,.08)}.logo{display:flex;align-items:center;gap:12px;color:var(--tec-white)}.logo-wordmark{font-size:22px;letter-spacing:-.02em;line-height:1;white-space:nowrap;color:var(--tec-white);font-family:var(--font)}.logo-wordmark b{font-weight:700}.logo-wordmark .dot{color:var(--tec-turquoise);font-weight:400}.logo-wordmark .light{font-weight:400}.logo h1{font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--tec-white)}.logo-sub{display:block;font-size:10px;color:var(--tec-turquoise);font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-top:6px}.sidebar nav{padding:14px 10px;flex:1;display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:0;font-size:13px;font-weight:400;color:#ffffffb8;transition:all var(--transition);width:100%;text-align:left;border-left:3px solid transparent}.nav-item:hover{background:#ffffff0f;color:var(--tec-white)}.nav-item.active{background:#06b5cd1f;color:var(--tec-white);border-left-color:var(--tec-turquoise);font-weight:700}.nav-item svg{flex-shrink:0;opacity:.85}.nav-item.active svg{opacity:1;color:var(--tec-turquoise)}.sidebar-footer{padding:16px 22px;border-top:1px solid rgba(255,255,255,.08)}.branch-badge{display:flex;align-items:center;gap:8px;font-size:11px;color:#ffffff8c;letter-spacing:.04em}.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.header{height:var(--header-height);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 28px;gap:16px;flex-shrink:0;background:var(--bg-secondary)}.menu-toggle{display:none;padding:4px;color:var(--text-secondary)}.header-content{display:flex;align-items:center;justify-content:space-between;flex:1}.header h2{font-size:22px;font-weight:700;letter-spacing:-.01em;color:var(--tec-blue);text-transform:lowercase}.header-actions{display:flex;gap:8px}.content{flex:1;overflow-y:auto;padding:24px}.tab-panel{display:none;animation:fadeIn .2s ease}.tab-panel.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.toolbar{display:flex;align-items:center;gap:12px;margin-bottom:20px}.search-box{flex:1;max-width:400px;display:flex;align-items:center;gap:10px;background:var(--tec-white);border:1px solid var(--border);border-radius:var(--radius-pill);padding:0 18px;height:40px;transition:border-color var(--transition)}.search-box:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-dim)}.search-box svg{color:var(--text-muted);flex-shrink:0}.search-box input{flex:1;height:100%;font-size:13px}.search-box input::placeholder{color:var(--text-muted)}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:var(--radius-pill);font-size:13px;font-weight:700;transition:filter var(--transition);white-space:nowrap;border:0;line-height:1}.btn-primary{background:var(--tec-turquoise);color:var(--tec-white)}.btn-primary:hover{filter:brightness(var(--hover-brightness))}.btn-primary:active{filter:brightness(var(--press-brightness))}.btn-secondary{background:var(--tec-blue);border:0;color:var(--tec-white)}.btn-secondary:hover{filter:brightness(var(--hover-brightness))}.btn-secondary:active{filter:brightness(var(--press-brightness))}.btn-ghost{color:var(--tec-blue);background:transparent;border:1.5px solid var(--tec-blue);padding:8.5px 18.5px}.btn-ghost:hover{background:var(--tec-blue);color:var(--tec-white)}.btn-success{background:var(--success);color:var(--tec-white)}.btn-success:hover{filter:brightness(var(--hover-brightness))}.btn-danger,.btn-destructive{background:var(--danger);color:var(--tec-white)}.btn-danger:hover,.btn-destructive:hover{filter:brightness(var(--hover-brightness))}.confirm-typed{margin:16px 0 4px}.confirm-typed-label{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--error);margin-bottom:6px}.confirm-typed-hint{font-size:12px;color:var(--text-muted);margin-bottom:8px}.confirm-typed-hint code{background:var(--bg-tertiary);padding:1px 6px;font-family:var(--font-mono);font-size:11px;color:var(--error)}.btn-sm{padding:7px 14px;font-size:12px}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.table-container{background:var(--bg-secondary);border:1px solid var(--border);border-radius:0;overflow:hidden}table{width:100%;border-collapse:collapse}thead th{text-align:left;padding:14px 18px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--tec-turquoise);background:var(--tec-white);border-bottom:2px solid var(--tec-blue);position:sticky;top:0;z-index:1}tbody td{padding:14px 18px;font-size:13px;border-bottom:1px solid var(--border-light);vertical-align:middle;color:var(--text-primary)}tbody tr{transition:background var(--transition)}tbody tr:hover{background:var(--bg-hover)}tbody tr:last-child td{border-bottom:none}.user-cell{display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;border-radius:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;background:var(--tec-blue);color:var(--tec-white);letter-spacing:.02em}.user-info{display:flex;flex-direction:column;min-width:0}.user-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;letter-spacing:.04em}.status-active{background:var(--success-dim);color:var(--success)}.status-inactive{background:var(--error-dim);color:var(--error)}.actions-cell{display:flex;gap:4px}.empty-state{padding:60px 24px;text-align:center;color:var(--text-muted)}.empty-state svg{margin-bottom:12px;opacity:.4}.empty-state p{font-size:14px}.empty-state .sub{font-size:12px;margin-top:4px}.loading-state{padding:80px 24px;text-align:center;color:var(--text-muted)}.spinner{width:28px;height:28px;border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 12px}@keyframes spin{to{transform:rotate(360deg)}}.loading-state p{font-size:13px}.modal-overlay{position:fixed;inset:0;background:#00377b8c;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:all var(--transition-slow)}.modal-overlay.open{opacity:1;visibility:visible}.modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:0;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;transform:scale(.98) translateY(6px);transition:transform var(--transition-slow);box-shadow:0 12px 32px #00377b29;border-top:4px solid var(--tec-turquoise)}.modal-overlay.open .modal{transform:scale(1) translateY(0)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border)}.modal-header h3{font-size:18px;font-weight:700;color:var(--tec-blue);letter-spacing:-.01em}.modal-close{padding:4px;color:var(--text-muted);border-radius:0;transition:all var(--transition)}.modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.modal-body{padding:24px}.modal-footer{padding:16px 24px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:11px;font-weight:700;color:var(--tec-turquoise);margin-bottom:6px;text-transform:uppercase;letter-spacing:.12em}.form-input{width:100%;height:40px;padding:0 16px;background:var(--tec-white);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:13px;color:var(--text-primary);transition:all var(--transition);font-family:var(--font)}textarea.form-input{height:auto;min-height:140px;padding:12px 18px;border-radius:0}.form-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.form-input::placeholder{color:var(--text-muted)}.form-select{width:100%;height:40px;padding:0 36px 0 16px;background:var(--tec-white);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:13px;color:var(--text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%2300377B' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;transition:all var(--transition)}.form-select:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column-reverse;gap:8px;z-index:2000}.toast{display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:0;font-size:13px;font-weight:700;min-width:280px;max-width:420px;animation:toastIn .2s ease forwards;box-shadow:0 8px 24px #00377b29;border-left:4px solid var(--tec-turquoise);background:var(--tec-white);color:var(--tec-blue)}.toast.removing{animation:toastOut .2s ease forwards}.toast-success{background:var(--tec-white);color:var(--success);border-left-color:var(--success)}.toast-error{background:var(--tec-white);color:var(--error);border-left-color:var(--error)}.toast-info{background:var(--tec-white);color:var(--tec-blue);border-left-color:var(--tec-turquoise)}@keyframes toastIn{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.95)}}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.course-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:0;padding:20px;transition:all var(--transition)}.course-card:hover{border-color:var(--tec-blue);box-shadow:0 4px 12px #00377b1a}.course-name{font-weight:600;font-size:14px;margin-bottom:4px;line-height:1.3}.course-meta{font-size:12px;color:var(--text-muted);margin-bottom:12px}.course-actions{display:flex;gap:6px}.group-members{margin-top:12px}.member-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-light);font-size:13px}.member-row:last-child{border-bottom:none}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;background:var(--bg-hover);color:var(--text-secondary)}@media (max-width: 768px){.sidebar{position:fixed;top:0;left:0;height:100vh;transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:10px 0 40px #00377b66}.menu-toggle{display:block}.content{padding:16px}.toolbar{flex-direction:column;align-items:stretch}.search-box{max-width:none}.course-grid{grid-template-columns:1fr}table{font-size:12px}thead th,tbody td{padding:10px 12px}}.template-selector{display:grid;grid-template-columns:1fr 1fr;gap:8px}.template-option{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;transition:all var(--transition);background:var(--bg-tertiary)}.template-option:hover{border-color:var(--text-muted);background:var(--bg-hover)}.template-option.selected{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.template-option input[type=radio]{display:none}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-light);transition:background var(--transition)}.toggle-row:hover{background:var(--bg-hover)}.toggle-row:last-child{border-bottom:none}.toggle-info{flex:1;min-width:0}.toggle-name{font-weight:500;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toggle-meta{font-size:11px;color:var(--text-muted);margin-top:2px}.toggle-switch{position:relative;width:44px;height:24px;flex-shrink:0;margin-left:16px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:0;transition:all var(--transition)}.toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:2px;bottom:2px;background:var(--text-muted);border-radius:50%;transition:all var(--transition)}.toggle-switch input:checked+.toggle-slider{background:var(--accent-dim);border-color:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px);background:var(--accent)}.admin-stats{display:flex;gap:12px;margin-bottom:16px}.stat-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;flex:1}.stat-value{font-size:24px;font-weight:700;letter-spacing:-.5px}.stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin-top:2px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.sub-tabs{background:var(--tec-white)!important;border:1px solid var(--border)!important;border-radius:0!important;padding:0!important}.sub-tab{background:transparent;color:var(--text-secondary);border-radius:0!important;font-weight:700!important;letter-spacing:.02em;border-bottom:3px solid transparent!important;padding:10px 22px!important}.sub-tab:hover{background:var(--bg-hover);color:var(--tec-blue)}.sub-tab.active{background:transparent;color:var(--tec-blue);border-bottom-color:var(--tec-turquoise)!important;box-shadow:none}.reg-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;background:var(--accent-dim);color:var(--accent-light);margin-left:8px}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.template-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:0;padding:22px;transition:all var(--transition);cursor:pointer;position:relative;overflow:hidden}.template-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--tec-turquoise);opacity:0;transition:opacity var(--transition)}.template-card:hover{border-color:var(--tec-blue);box-shadow:0 4px 12px #00377b1a}.template-card:hover:before{opacity:1}.template-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.template-card-name{font-weight:600;font-size:14px;line-height:1.3;flex:1}.template-card-subject{font-size:12px;color:var(--text-secondary);margin-bottom:12px;display:flex;align-items:center;gap:6px}.template-card-preview{font-size:12px;color:var(--text-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:14px;min-height:54px}.template-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid var(--border-light)}.template-card-meta{font-size:11px;color:var(--text-muted)}.template-cat-pill{display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.template-cat-inscripcion{background:var(--accent-dim);color:var(--tec-turquoise)}.template-cat-confirmacion{background:var(--success-dim);color:var(--success)}.template-cat-recordatorio{background:var(--warning-dim);color:var(--warning)}.template-cat-bienvenida{background:#00377b1a;color:var(--tec-blue)}.template-cat-custom{background:#c2d0d74d;color:var(--text-muted)}.tpl-editor{width:100%;min-height:240px;padding:14px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:12px;color:var(--text-primary);resize:vertical;line-height:1.6;transition:border-color var(--transition)}.tpl-editor:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.tpl-var-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:500;background:var(--accent-dim);color:var(--accent-light);cursor:pointer;transition:all var(--transition);user-select:none}.tpl-var-chip:hover{background:var(--accent-glow);filter:brightness(var(--hover-brightness))}.tpl-preview-frame{background:var(--bg-elevated);border:1px solid var(--border);border-radius:0;padding:24px;color:var(--text-primary);font-size:13px;line-height:1.7;max-height:400px;overflow-y:auto}.admin-only{display:none!important}.course-row{transition:background .15s}.course-row[open]{background:var(--bg-secondary)}.course-row summary::-webkit-details-marker{display:none}.course-row summary::marker{content:""}.course-row summary:before{content:"▸";display:inline-block;margin-right:6px;transition:transform .15s;color:var(--text-muted)}.course-row[open] summary:before{transform:rotate(90deg)}.units-table{width:100%;border-collapse:collapse}.units-table th{font-size:11px;font-weight:600;color:var(--text-muted);border-bottom:1px solid var(--border)}.units-table td{border-bottom:1px solid var(--border)}.units-table tr:last-child td{border-bottom:none}.elig-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;margin-left:8px}.elig-yes{background:var(--success);color:var(--tec-white)}.elig-no{background:var(--warning-dim);color:var(--warning)}.score-inline{font-size:11px;color:var(--text-muted);margin-right:8px}.progress-bar-with-marker{position:relative}.progress-bar-with-marker .threshold-marker{pointer-events:none}.report-toolbar{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-end;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-light)}.report-toolbar-left{flex:1;min-width:280px}.report-toolbar-right{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.report-section-title{font-size:18px;font-weight:700;letter-spacing:-.005em;color:var(--tec-blue);margin-bottom:6px}.report-section-sub{font-size:13px;color:var(--text-secondary);max-width:60ch}.report-grid{display:grid;gap:20px}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.kpi-card{position:relative;display:flex;align-items:flex-start;gap:14px;background:var(--tec-white);border:1px solid var(--border);border-radius:0;padding:22px 24px;overflow:hidden;transition:border-color var(--transition),box-shadow var(--transition);border-top:3px solid var(--tec-turquoise)}.kpi-card:before{display:none}.kpi-card:hover{border-color:var(--tec-blue);border-top-color:var(--tec-turquoise);box-shadow:0 4px 12px #00377b1a}.kpi-blue{--kpi-icon-bg: rgba(0, 55, 123, .1);--kpi-icon-color: var(--tec-blue)}.kpi-cyan{--kpi-icon-bg: rgba(6, 181, 205, .12);--kpi-icon-color: var(--tec-turquoise)}.kpi-green{--kpi-icon-bg: var(--success-dim);--kpi-icon-color: var(--success)}.kpi-orange{--kpi-icon-bg: var(--warning-dim);--kpi-icon-color: var(--warning)}.kpi-icon{width:40px;height:40px;border-radius:0;background:var(--kpi-icon-bg, var(--tec-white));color:var(--kpi-icon-color, var(--tec-blue));display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;position:relative;z-index:1}.kpi-body{flex:1;min-width:0;position:relative;z-index:1}.kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-weight:500}.kpi-value{font-size:28px;font-weight:700;letter-spacing:-.02em;margin:4px 0 6px;line-height:1.1}.kpi-sub{font-size:12px;color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}.kpi-delta{font-size:11px;font-weight:600;padding:2px 6px;border-radius:var(--radius-pill)}.kpi-delta.delta-up{color:var(--success);background:var(--success-dim)}.kpi-delta.delta-down{color:var(--error);background:var(--error-dim)}.kpi-bar{height:4px;background:var(--bg-tertiary);border-radius:0;overflow:hidden;margin-top:10px}.kpi-bar-fill{height:100%;background:var(--kpi-icon-color, var(--accent));border-radius:0;transition:width var(--transition-slow)}.report-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 24px}.report-card-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.report-card-title{font-size:15px;font-weight:600;margin-bottom:4px;letter-spacing:-.005em}.report-card-sub{font-size:12.5px;color:var(--text-secondary);margin-bottom:18px;line-height:1.5}.funnel{display:flex;flex-direction:column;gap:14px}.funnel-step-meta{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px;color:var(--text-secondary)}.funnel-step-value{color:var(--text-primary);font-weight:500}.funnel-step-value em{font-style:normal;color:var(--text-muted);font-weight:400;margin-left:6px}.funnel-step-bar{height:28px;background:var(--bg-tertiary);border-radius:0;overflow:hidden}.funnel-step-fill{height:100%;border-radius:0;transition:width .6s cubic-bezier(.4,0,.2,1)}.time-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.time-stat{background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:0;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.time-stat-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.time-stat-value{font-size:18px;font-weight:600;letter-spacing:-.01em}.time-stat-value.time-stat-warn{color:var(--warning)}.time-stat-value.time-stat-good{color:var(--success)}.dist-chart{display:flex;flex-direction:column;gap:8px}.dist-row{display:grid;grid-template-columns:90px 1fr 100px;gap:12px;align-items:center;font-size:12.5px}.dist-label{color:var(--text-secondary);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dist-bar-wrap{height:22px;background:var(--bg-tertiary);border-radius:0;overflow:hidden}.dist-bar{height:100%;border-radius:0;transition:width .6s cubic-bezier(.4,0,.2,1)}.dist-bar-excellent{background:var(--success)}.dist-bar-good{background:var(--tec-blue)}.dist-bar-mid{background:var(--tec-grey)}.dist-bar-bad{background:var(--error)}.dist-bar-idle{background:var(--tec-grey)}.dist-tag{display:inline-block;margin-left:8px;padding:1px 6px;border-radius:var(--radius-pill);font-size:10px;font-weight:600;letter-spacing:.02em;vertical-align:middle;text-transform:uppercase}.dist-tag-excellent{background:var(--warning-dim);color:var(--warning)}.dist-tag-good{background:var(--success-dim);color:var(--success)}.dist-tag-bad{background:var(--error-dim);color:var(--error)}.topu-table .rank-num{width:40px;text-align:center;font-weight:700;color:var(--text-muted);font-feature-settings:"tnum"}.topu-table tr.rank-top3 .rank-num{color:var(--warning);font-size:16px;font-weight:700}.topu-table tr.rank-top10 .rank-num{color:var(--tec-turquoise)}.topu-bar-wrap{width:100%;max-width:240px;margin-left:auto;height:6px;background:var(--bg-tertiary);border-radius:0;overflow:hidden;margin-bottom:4px}.topu-bar{height:100%;background:var(--tec-turquoise);border-radius:0;transition:width .6s cubic-bezier(.2,0,0,1)}.topu-bar-label{font-size:12px;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.topu-bar-label strong{color:var(--success);font-weight:700}.meta-warn{color:var(--warning)}.company-pill{display:inline-block;padding:3px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;background:#06b5cd26;color:var(--accent-light);letter-spacing:.01em;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}.company-pill.company-personal{background:var(--bg-elevated);color:var(--text-muted);font-weight:500;font-style:italic}.company-pill.company-unknown{background:transparent;color:var(--text-muted);border:1px dashed var(--border)}.flag-cell{font-size:18px;text-align:center;width:50px}.country-flag.muted{font-size:12px;color:var(--text-muted)}.rel-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;letter-spacing:.02em;white-space:nowrap;margin-left:6px;vertical-align:middle}.rel-us{background:#06b5cd2e;color:var(--accent-light);border:1px solid rgba(6,181,205,.4)}.rel-competitor{background:var(--error-dim);color:var(--error);border:1px solid rgba(200,16,46,.4)}.rel-partner{background:#2e854026;color:var(--success);border:1px solid rgba(46,133,64,.4)}.rel-row-us td,.rel-row-competitor td,.rel-row-partner td{background:transparent}.sections-overview{display:flex;flex-direction:column;gap:12px}.section-row{display:grid;grid-template-columns:minmax(220px,1.4fr) 2fr 180px;gap:16px;align-items:center;padding:12px 14px;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:0}.section-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.section-sub{font-size:11.5px;color:var(--text-muted);margin-top:3px}.section-bar-stack{display:flex;height:14px;border-radius:0;overflow:hidden;background:var(--bg-tertiary);border:1px solid var(--border)}.section-bar-stack .seg{height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.seg-ok{background:var(--success)}.seg-warn{background:var(--warning)}.seg-skip{background:var(--error)}.seg-aban{background:var(--tec-grey)}.section-rates{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.meta-mute{color:var(--text-muted);font-size:11px;margin-left:6px}@media (max-width: 760px){.section-row{grid-template-columns:1fr;gap:10px}.section-rates{justify-content:flex-start}}.report-card-gtw{background:var(--tec-white);border-top:3px solid var(--tec-turquoise)}.gtw-col{background:transparent}.report-table th.gtw-col,.report-table td.gtw-col{border-left:1px solid var(--border-light);border-right:1px solid var(--border-light)}.muted-dash{color:var(--text-muted);font-style:italic}.gtw-breakdown{display:flex;gap:12px;margin-top:14px;flex-wrap:wrap}.gtw-stat{flex:1;min-width:120px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:0;display:flex;flex-direction:column;gap:4px;align-items:center;text-align:center}.gtw-stat-num{font-size:22px;font-weight:700;letter-spacing:-.01em;color:var(--accent-light)}.gtw-stat span:last-child{font-size:12px;color:var(--text-secondary)}.competitor-companies{display:flex;flex-direction:column;gap:8px}.competitor-company{display:flex;gap:12px;align-items:center;padding:8px 12px;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:0;flex-wrap:wrap}.competitor-company .company-pill{background:var(--error-dim);color:var(--error);border:1px solid rgba(200,16,46,.4);border-radius:var(--radius-pill)}.cc-stats{margin-left:auto;font-size:12px;color:var(--text-secondary);font-feature-settings:"tnum"}.gtw-competitor-details{margin-top:14px}.gtw-competitor-details summary{cursor:pointer;padding:8px 12px;background:var(--bg-elevated);border-radius:0;font-size:13px;color:var(--text-secondary);user-select:none}.gtw-competitor-details summary:hover{background:var(--bg-hover)}.cohort-grid{display:grid;grid-template-columns:1fr 40px 1fr;gap:16px;align-items:stretch;margin-top:8px}.cohort-card{background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:0;padding:18px 20px;display:flex;flex-direction:column;gap:8px}.cohort-card.cohort-gtw{border-top:3px solid var(--tec-blue)}.cohort-card.cohort-self{border-top:3px solid var(--tec-turquoise)}.cohort-label{font-size:11px;font-weight:700;color:var(--tec-turquoise);text-transform:uppercase;letter-spacing:.12em}.cohort-num{font-size:32px;font-weight:700;letter-spacing:-.02em;line-height:1}.cohort-sub{font-size:12px;color:var(--text-muted);margin-bottom:6px}.cohort-rates{display:flex;flex-direction:column;gap:8px;padding-top:8px;border-top:1px solid var(--border-light);margin-top:auto}.cohort-rates>div{display:flex;justify-content:space-between;align-items:center;font-size:13px}.cohort-rate-label{color:var(--text-secondary)}.cohort-vs{display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--text-muted);font-size:14px;text-transform:uppercase}.cohort-takeaway{margin-top:16px;padding:12px 14px;background:var(--bg-elevated);border-radius:0;font-size:13px;color:var(--text-secondary);line-height:1.6}@media (max-width: 720px){.cohort-grid{grid-template-columns:1fr}.cohort-vs{padding:8px 0}}.report-card-comp{background:var(--tec-white);border-top:3px solid var(--error)}.comp-table-details{margin-top:14px}.comp-table-details summary{cursor:pointer;padding:8px 12px;background:var(--bg-elevated);border-radius:0;font-size:13px;color:var(--text-secondary);font-weight:500;user-select:none;list-style:revert}.comp-table-details summary:hover{background:var(--bg-hover)}.comp-table-details[open] summary{margin-bottom:12px}.comp-table{display:flex;flex-direction:column;gap:6px}.comp-row{display:grid;grid-template-columns:minmax(220px,1.4fr) 2fr 130px;gap:14px;align-items:center;padding:8px 12px;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:0}.comp-name{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comp-domain{font-size:11px;color:var(--text-muted);margin-top:2px;font-family:var(--font-mono)}.comp-bar-wrap{height:14px;background:var(--bg-tertiary);border-radius:0;overflow:hidden;border:1px solid var(--border)}.comp-bar{height:100%;background:var(--success);border-radius:0;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative}.comp-bar-active{height:100%;background:var(--error);border-radius:0}.comp-counts{text-align:right;font-feature-settings:"tnum";display:flex;flex-direction:column;gap:2px;align-items:flex-end}.comp-count-total{font-size:16px;font-weight:700;letter-spacing:-.01em}.comp-count-detail{display:flex;gap:6px;font-size:11px}.comp-active{color:var(--error);font-weight:600}.comp-inactive{color:var(--success);font-weight:600}@media (max-width: 720px){.comp-row{grid-template-columns:1fr}.comp-counts{text-align:left;flex-direction:row}}.report-card-hot{background:var(--tec-white);border-top:3px solid var(--warning)}.big-stat{text-align:center;padding:8px 0 16px;border-bottom:1px solid var(--border-light);margin-bottom:14px}.big-stat-num{font-size:38px;font-weight:700;letter-spacing:-.02em;color:var(--accent-light);line-height:1}.big-stat-sub{font-size:12px;color:var(--text-secondary);margin-top:6px}.hot-stat-row{display:flex;gap:12px}.hot-stat-row>div{flex:1;display:flex;flex-direction:column;gap:2px;padding:10px;background:var(--bg-elevated);border-radius:0;text-align:center}.hot-stat-num{font-size:20px;font-weight:700;color:var(--text-primary)}.hot-stat-row>div span:last-child{font-size:11px;color:var(--text-muted)}.timeline-chart{display:flex;align-items:flex-end;height:140px;gap:1px;padding:12px 4px 4px;background:var(--bg-elevated);border-radius:0;border:1px solid var(--border-light);overflow-x:auto;margin-bottom:16px}.timeline-bar{flex:1 0 6px;min-width:6px;height:100%;display:flex;flex-direction:column-reverse;position:relative;cursor:help;transition:opacity var(--transition)}.timeline-bar:hover{opacity:.7}.timeline-bar-segment{width:100%;border-radius:0}.seg-customer{background:var(--accent-light)}.seg-unknown{background:var(--text-muted);opacity:.6}.seg-competitor{background:var(--error)}.timeline-bar.is-peak{outline:2px solid var(--warning);outline-offset:1px;border-radius:0}.timeline-peak-num{position:absolute;top:-16px;left:50%;transform:translate(-50%);font-size:10px;font-weight:700;color:var(--warning);white-space:nowrap}.peak-list{background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:0;padding:14px 16px}.peak-list-title{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-weight:600;margin-bottom:10px}.peak-rows{display:flex;flex-direction:column;gap:8px}.peak-row{display:grid;grid-template-columns:200px 60px 1fr;gap:12px;align-items:center;font-size:13px;padding:6px 8px;background:var(--bg-tertiary);border-radius:0}.peak-date{color:var(--text-primary);font-weight:500}.peak-num{font-size:18px;font-weight:700;color:var(--warning);text-align:right}.peak-detail{font-size:11px;color:var(--text-secondary)}.dow-chart{display:flex;flex-direction:column;gap:8px}.dow-row{display:grid;grid-template-columns:100px 1fr 60px;gap:12px;align-items:center;font-size:13px}.dow-label{color:var(--text-secondary)}.dow-bar-wrap{height:18px;background:var(--bg-elevated);border-radius:0;overflow:hidden}.dow-bar{height:100%;background:var(--accent);border-radius:0;transition:width .6s ease}.dow-count{text-align:right;font-feature-settings:"tnum";font-weight:500}.rel-customer{background:#2e85401f;color:var(--success);border:1px solid rgba(46,133,64,.3)}.rel-unknown{background:var(--bg-elevated);color:var(--text-muted);border:1px solid var(--border-light)}.abandoned-note{font-size:11.5px;color:var(--warning);background:var(--warning-dim);padding:8px 12px;border-radius:0;margin:8px 0 12px;border:1px solid rgba(228,168,0,.3)}@media (max-width: 720px){.peak-row{grid-template-columns:1fr;gap:4px}.hot-stat-row{flex-direction:column}}.dist-count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:500}.dist-pct{color:var(--text-muted);font-weight:400;margin-left:6px}.rank-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin:0;padding:0;counter-reset:rank}.rank-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:0;position:relative;counter-increment:rank}.rank-item:before{content:counter(rank);width:22px;height:22px;border-radius:0;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rank-good:before{background:var(--success-dim);color:var(--success)}.rank-bad:before{background:var(--error-dim);color:var(--error)}.rank-name{flex:1;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-meta{font-size:12px;color:var(--text-secondary);font-feature-settings:"tnum";white-space:nowrap}.report-table-wrap{overflow-x:auto;margin:0 -8px}.report-table{width:100%;border-collapse:collapse;font-size:13px}.report-table thead th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-weight:500;text-align:left;padding:10px 12px;border-bottom:1px solid var(--border)}.report-table th.num,.report-table td.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.report-table tbody td{padding:12px;border-bottom:1px solid var(--border-light)}.report-table tbody tr:hover{background:var(--bg-elevated)}.report-course-name{font-weight:500;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-course-meta{font-size:11px;color:var(--text-muted);margin-top:2px}.rate-pill{display:inline-block;padding:3px 8px;border-radius:0;font-size:12px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rate-pill.rate-good{background:var(--success-dim);color:var(--success)}.rate-pill.rate-mid{background:var(--warning-dim);color:var(--warning)}.rate-pill.rate-bad{background:var(--error-dim);color:var(--error)}.report-back{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:4px}.single-title{font-size:16px;font-weight:700;letter-spacing:-.005em;color:var(--tec-blue);flex:1;min-width:200px}.badge-soft{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-light);padding:4px 10px;border-radius:0;font-size:11px;letter-spacing:.02em}.compare-grid{display:flex;flex-direction:column;gap:16px}.compare-row{display:grid;grid-template-columns:240px 1fr 70px;gap:16px;align-items:center}.compare-label{font-size:13px;color:var(--text-primary);font-weight:500}.compare-bars{display:flex;flex-direction:column;gap:6px}.compare-bar-row{display:grid;grid-template-columns:50px 1fr 80px;gap:10px;align-items:center;font-size:12px}.compare-tag{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-weight:600}.compare-tag.muted{color:var(--text-muted);font-weight:500}.compare-bar{height:14px;background:var(--bg-elevated);border-radius:0;overflow:hidden;position:relative}.compare-bar-fill{height:100%;border-radius:0;transition:width .5s cubic-bezier(.4,0,.2,1)}.compare-target{background:var(--accent)}.compare-peer{background:var(--text-muted);opacity:.6}.compare-val{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:500}.compare-val.muted{color:var(--text-secondary);font-weight:400}.compare-delta{text-align:right}.delta{font-size:12px;font-weight:700;padding:4px 8px;border-radius:0;font-feature-settings:"tnum"}.delta.delta-up{color:var(--success);background:var(--success-dim)}.delta.delta-down{color:var(--error);background:var(--error-dim)}@media (max-width: 720px){.compare-row{grid-template-columns:1fr;gap:8px}.compare-bar-row{grid-template-columns:50px 1fr 70px}.dist-row{grid-template-columns:70px 1fr 80px}}.empty-state-small{padding:16px;text-align:center;color:var(--text-muted);font-size:12px;border:1px dashed var(--border);border-radius:0}.report-banner{background:var(--tec-white);border:1px solid var(--border);border-left:4px solid var(--warning);border-radius:0;padding:12px 16px;font-size:13px;color:var(--warning)}.freshness-badge{font-size:12px;color:var(--text-muted);padding:6px 12px;background:var(--bg-elevated);border-radius:0;display:inline-block;border:1px solid var(--border-light)}.freshness-badge strong{color:var(--accent-light);font-weight:600}.report-banner a{color:var(--warning);font-weight:600}.report-card-warning{background:var(--tec-white);border-top:3px solid var(--error)}.report-card-warning .report-card-title{color:var(--error)}.warning-stats{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-elevated);border-radius:0;flex-wrap:wrap}.warning-stats>div{flex:1;min-width:120px;display:flex;flex-direction:column;gap:4px}.warning-stats>div.arrow{flex:0 0 auto;font-size:22px;color:var(--text-muted);text-align:center;min-width:30px}.warning-stats .big-num{font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1}.warning-stats>div span:last-child{font-size:12px;color:var(--text-secondary)}.warning-stats .text-success{color:var(--success)}.warning-stats .text-warning{color:var(--warning)}.rate-pill.rate-mute{background:var(--bg-elevated);color:var(--text-muted)}.cell-warn{color:var(--error);font-weight:600}.cell-soft-warn{color:var(--warning);font-weight:600}.status-badge{display:inline-block;padding:3px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;white-space:nowrap;letter-spacing:.02em}.bad-eligible{background:var(--success-dim);color:var(--success)}.bad-done{background:#00377b2e;color:var(--tec-blue);border-radius:var(--radius-pill)}.bad-fake{background:var(--error-dim);color:var(--error)}.bad-incomplete{background:var(--accent-dim);color:var(--tec-blue)}.bad-progress{background:var(--warning-dim);color:var(--warning)}.bad-notstarted{background:var(--bg-tertiary);color:var(--text-muted)}.bad-fetchfail{background:var(--bg-tertiary);color:var(--text-muted);border:1px dashed var(--border)}.row-fetchfail td{opacity:.55}.row-fetchfail:hover td{opacity:1}.row-clickable{cursor:pointer;transition:background var(--transition)}.row-clickable:hover td{background:var(--bg-hover)}.row-clickable:hover .row-hint{color:var(--accent-light)}.row-hint{color:var(--text-muted);font-size:11px;font-style:italic}.banner-error{background:var(--tec-white);border:1px solid var(--border);border-left:4px solid var(--error);color:var(--error)}.banner-error a{color:var(--error)}.progress-bar-wrap{width:280px;max-width:90%;height:6px;background:var(--bg-tertiary);border-radius:0;overflow:hidden;margin:12px auto 0}.progress-bar-fill{height:100%;background:var(--accent);border-radius:0;transition:width .25s ease-out}.report-meta{font-size:12px;color:var(--text-muted);text-align:right;padding-top:4px}.report-meta a{color:var(--accent-light)}.filter-pill-bar{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 20px}.filter-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--radius-pill);background:var(--tec-white);border:1px solid var(--border);color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:filter var(--transition),border-color var(--transition)}.filter-pill:hover{border-color:var(--tec-blue);color:var(--tec-blue)}.filter-pill.is-active{background:var(--tec-blue);border-color:var(--tec-blue);color:var(--tec-white)}.filter-pill-count{background:var(--tec-turquoise);color:var(--tec-white);padding:1px 8px;border-radius:var(--radius-pill);font-size:11px;font-variant-numeric:tabular-nums}.filter-pill.is-active .filter-pill-count{background:#fff3}.match-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;letter-spacing:.02em;margin:2px 4px 2px 0;white-space:nowrap}.match-pill-high{background:var(--error-dim);color:var(--error)}.match-pill-medium{background:var(--warning-dim);color:var(--warning)}.match-pill-score{font-weight:400;opacity:.85;font-variant-numeric:tabular-nums}.report-table{border-collapse:collapse;width:100%}.report-table th,.report-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border-light);font-size:13px;vertical-align:middle}.report-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--tec-turquoise);border-bottom:2px solid var(--tec-blue)}.report-table tbody tr:hover{background:var(--bg-hover)}.report-table code{font-family:var(--font-mono);font-size:12px;background:var(--bg-tertiary);padding:1px 6px;color:var(--tec-blue)}.webinars-cell summary{cursor:pointer;list-style:revert;font-size:13px;user-select:none}.webinars-cell summary::marker{color:var(--tec-turquoise)}.webinars-cell[open] summary{margin-bottom:8px}.webinar-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.webinar-line{display:grid;grid-template-columns:1fr 120px 42px;gap:10px;align-items:center;font-size:12px}.webinar-name{color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.webinar-bar{display:block;height:6px;background:var(--bg-tertiary);overflow:hidden;border:1px solid var(--border-light)}.webinar-bar>span{display:block;height:100%;transition:width .3s cubic-bezier(.2,0,0,1)}.webinar-pct{font-variant-numeric:tabular-nums;font-weight:700;color:var(--tec-blue);text-align:right}.skel-rows{display:flex;flex-direction:column;gap:8px;padding:14px 0}.skel-row{display:grid;grid-template-columns:32px 1.8fr 1.4fr 60px 80px 80px;gap:14px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border-light)}.skel-box{height:12px;background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--bg-hover) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;animation:skel-shimmer 1.4s ease-in-out infinite}.skel-box.skel-circle{height:28px;width:28px;border-radius:0}.skel-box.skel-short{width:60%}.skel-box.skel-tiny{width:40%}@keyframes skel-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.skel-box{animation:none;opacity:.6}}@media (max-width: 640px){.report-table th,.report-table td,tbody td,thead th{padding:10px 12px}.report-toolbar{flex-direction:column;align-items:stretch}.report-toolbar-right{justify-content:flex-start}.kpi-row{grid-template-columns:1fr 1fr}.kpi-value{font-size:22px}.report-table th:nth-last-child(-n+2),.report-table td:nth-last-child(-n+2){display:none}}.spinner,.skel-box,.webinar-bar>span,.btn{will-change:auto}.report-table tbody tr,.table-container tbody tr{content-visibility:auto;contain-intrinsic-size:auto 60px}details.webinars-cell:not([open])>*:not(summary){content-visibility:hidden;contain:layout style}.btn,.webinar-bar>span,.filter-pill{transform:translateZ(0)}
