@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700;900&family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,300&family=DM+Mono:wght@400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Sora:wght@600;700;800&display=swap";.lh-loader{flex-direction:column;justify-content:center;align-items:center;gap:14px;width:100%;height:100%;min-height:150px;display:flex}.lh-logo{opacity:.55;width:auto;height:18px;animation:.5s both lh-logo-in}.dark .lh-logo{filter:invert()brightness(1.5);opacity:.75}.lh-beacon{place-items:center;width:150px;height:150px;display:grid;position:relative}.lh-beacon:before{content:"";background:radial-gradient(circle,#2b8eff3d,#0000 70%);border-radius:50%;width:92px;height:92px;animation:2.4s ease-in-out infinite lh-pulse;position:absolute}.lh-sweep{filter:blur(2px);background:conic-gradient(#2b8eff80,#4bcebe52 18%,#2b8eff00 27% 73%,#41e95652 82%,#2b8eff80 100%);border-radius:50%;animation:3s linear infinite lh-spin;position:absolute;inset:-12px;-webkit-mask:radial-gradient(circle,#0000 34%,#000 35%);mask:radial-gradient(circle,#0000 34%,#000 35%)}.lh-tower{z-index:1;filter:drop-shadow(0 6px 10px #2b8eff47);animation:3s ease-in-out infinite lh-bob;position:relative}.lh-lamp{transform-origin:22px 13px;animation:1.6s ease-in-out infinite lh-lamp}.lh-water{border:2px solid #4bcebe52;border-radius:50%;width:96px;height:20px;animation:2.6s ease-out infinite lh-ripple;position:absolute;bottom:16px}.lh-msg{letter-spacing:.01em;background:linear-gradient(90deg,#2b8eff,#4bcebe,#41e956,#2b8eff) 0 0/250%;color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:14px;font-weight:600;animation:3.5s linear infinite lh-shimmer,.45s both lh-msg-in}@keyframes lh-spin{to{transform:rotate(360deg)}}@keyframes lh-pulse{0%,to{opacity:.65;transform:scale(.88)}50%{opacity:1;transform:scale(1.12)}}@keyframes lh-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes lh-lamp{0%,to{opacity:.7}50%{opacity:1}}@keyframes lh-ripple{0%{opacity:.8;transform:scale(.7)}to{opacity:0;transform:scale(1.3)}}@keyframes lh-shimmer{to{background-position:200%}}@keyframes lh-msg-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes lh-logo-in{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.lh-tower,.lh-lamp,.lh-water,.lh-beacon:before,.lh-msg,.lh-logo{animation:none}.lh-sweep{animation:6s linear infinite lh-spin}}.lhs-wrap{text-align:center;--lhs-accent:43, 142, 255;--lhs-accent-2:75, 206, 190;flex-direction:column;justify-content:center;align-items:center;gap:10px;width:100%;height:100%;min-height:70vh;padding:32px 24px;display:flex}.lhs-error{--lhs-accent:255, 180, 67;--lhs-accent-2:255, 138, 76}.lhs-denied{--lhs-accent:148, 163, 184;--lhs-accent-2:100, 116, 139}.lhs-logo{opacity:.55;width:auto;height:20px;animation:.5s both lhs-logo-in}.dark .lhs-logo{filter:invert()brightness(1.5);opacity:.75}.lhs-beacon{place-items:center;width:168px;height:168px;display:grid;position:relative}.lhs-beacon:before{content:"";background:radial-gradient(circle, rgba(var(--lhs-accent), .22), transparent 70%);border-radius:50%;width:104px;height:104px;animation:2.6s ease-in-out infinite lhs-pulse;position:absolute}.lhs-sweep{background:conic-gradient(from 0deg, rgba(var(--lhs-accent), .5), rgba(var(--lhs-accent-2), .3) 18%, rgba(var(--lhs-accent), 0) 27%, rgba(var(--lhs-accent), 0) 73%, rgba(var(--lhs-accent-2), .3) 82%, rgba(var(--lhs-accent), .5) 100%);filter:blur(2px);border-radius:50%;animation:3.4s linear infinite lhs-spin;position:absolute;inset:-14px;-webkit-mask:radial-gradient(circle,#0000 34%,#000 35%);mask:radial-gradient(circle,#0000 34%,#000 35%)}.lhs-tower{z-index:1;filter:drop-shadow(0 6px 12px rgba(var(--lhs-accent), .3));animation:3.2s ease-in-out infinite lhs-bob;position:relative}.lhs-denied .lhs-tower{opacity:.92}.lhs-lamp{transform-origin:22px 13px;animation:1.7s ease-in-out infinite lhs-lamp}.lhs-water{border:2px solid rgba(var(--lhs-accent-2), .32);border-radius:50%;width:108px;height:22px;animation:2.8s ease-out infinite lhs-ripple;position:absolute;bottom:20px}.lhs-title{color:#0f172a;margin:6px 0 0;font-size:20px;font-weight:700;animation:.45s both lhs-msg-in}.dark .lhs-title{color:#f1f5f9}.lhs-msg{color:#64748b;max-width:30rem;margin:0;font-size:13.5px;line-height:1.6;animation:.55s both lhs-msg-in}.dark .lhs-msg{color:#94a3b8}.lhs-btn{margin-top:8px;animation:.65s both lhs-msg-in}@keyframes lhs-spin{to{transform:rotate(360deg)}}@keyframes lhs-pulse{0%,to{opacity:.65;transform:scale(.88)}50%{opacity:1;transform:scale(1.12)}}@keyframes lhs-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes lhs-lamp{0%,to{opacity:.7}50%{opacity:1}}@keyframes lhs-ripple{0%{opacity:.8;transform:scale(.7)}to{opacity:0;transform:scale(1.3)}}@keyframes lhs-msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes lhs-logo-in{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.lhs-tower,.lhs-lamp,.lhs-water,.lhs-beacon:before,.lhs-title,.lhs-msg,.lhs-btn,.lhs-logo{animation:none}.lhs-sweep{animation:6s linear infinite lhs-spin}}.cropper-container{touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;direction:ltr;font-size:0;line-height:0;position:relative}.cropper-container img{backface-visibility:hidden;image-orientation:0deg;width:100%;height:100%;display:block;min-width:0!important;max-width:none!important;min-height:0!important;max-height:none!important}.cropper-wrap-box,.cropper-canvas,.cropper-drag-box,.cropper-crop-box,.cropper-modal{position:absolute;inset:0}.cropper-wrap-box,.cropper-canvas{overflow:hidden}.cropper-drag-box{opacity:0;background-color:#fff}.cropper-modal{opacity:.5;background-color:#000}.cropper-view-box{outline:1px solid #3399ffbf;width:100%;height:100%;display:block;overflow:hidden}.cropper-dashed{opacity:.5;border:0 dashed #eee;display:block;position:absolute}.cropper-dashed.dashed-h{border-top-width:1px;border-bottom-width:1px;width:100%;height:33.3333%;top:33.3333%;left:0}.cropper-dashed.dashed-v{border-left-width:1px;border-right-width:1px;width:33.3333%;height:100%;top:0;left:33.3333%}.cropper-center{opacity:.75;width:0;height:0;display:block;position:absolute;top:50%;left:50%}.cropper-center:before,.cropper-center:after{content:" ";background-color:#eee;display:block;position:absolute}.cropper-center:before{width:7px;height:1px;top:0;left:-3px}.cropper-center:after{width:1px;height:7px;top:-3px;left:0}.cropper-face,.cropper-line,.cropper-point{opacity:.1;width:100%;height:100%;display:block;position:absolute}.cropper-face{background-color:#fff;top:0;left:0}.cropper-line{background-color:#39f}.cropper-line.line-e{cursor:ew-resize;width:5px;top:0;right:-3px}.cropper-line.line-n{cursor:ns-resize;height:5px;top:-3px;left:0}.cropper-line.line-w{cursor:ew-resize;width:5px;top:0;left:-3px}.cropper-line.line-s{cursor:ns-resize;height:5px;bottom:-3px;left:0}.cropper-point{opacity:.75;background-color:#39f;width:5px;height:5px}.cropper-point.point-e{cursor:ew-resize;margin-top:-3px;top:50%;right:-3px}.cropper-point.point-n{cursor:ns-resize;margin-left:-3px;top:-3px;left:50%}.cropper-point.point-w{cursor:ew-resize;margin-top:-3px;top:50%;left:-3px}.cropper-point.point-s{cursor:s-resize;margin-left:-3px;bottom:-3px;left:50%}.cropper-point.point-ne{cursor:nesw-resize;top:-3px;right:-3px}.cropper-point.point-nw{cursor:nwse-resize;top:-3px;left:-3px}.cropper-point.point-sw{cursor:nesw-resize;bottom:-3px;left:-3px}.cropper-point.point-se{cursor:nwse-resize;opacity:1;width:20px;height:20px;bottom:-3px;right:-3px}@media (min-width:768px){.cropper-point.point-se{width:15px;height:15px}}@media (min-width:992px){.cropper-point.point-se{width:10px;height:10px}}@media (min-width:1200px){.cropper-point.point-se{opacity:.75;width:5px;height:5px}}.cropper-point.point-se:before{content:" ";opacity:0;background-color:#39f;width:200%;height:200%;display:block;position:absolute;bottom:-50%;right:-50%}.cropper-invisible{opacity:0}.cropper-bg{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC)}.cropper-hide{width:0;height:0;display:block;position:absolute}.cropper-hidden{display:none!important}.cropper-move{cursor:move}.cropper-crop{cursor:crosshair}.cropper-disabled .cropper-drag-box,.cropper-disabled .cropper-face,.cropper-disabled .cropper-line,.cropper-disabled .cropper-point{cursor:not-allowed}:root{--rpt-bg-primary:#fff;--rpt-bg-secondary:#f7f8fa;--rpt-bg-tertiary:#eef0f4;--rpt-brand-blue:#1a6fd4;--rpt-brand-teal:#1f9e8e;--rpt-brand-green:#1d9438;--rpt-brand-warning:#c47d00;--rpt-brand-error:#d42b55;--rpt-text-primary:#0d1117;--rpt-text-secondary:#2d3340;--rpt-text-muted:#6b7280;--rpt-border:#00000012;--rpt-border-mid:#0000001c;--rpt-border-strong:#0000002e}.rpt-page{background:var(--rpt-bg-primary);width:794px;color:var(--rpt-text-primary);margin:24px auto;font-family:DM Sans,sans-serif;line-height:1.5;position:relative;box-shadow:0 4px 40px #0000001f}.rpt-cover{flex-direction:column;height:1122px;display:flex;position:relative;overflow:visible}.rpt-cover-glow-a{pointer-events:none;background:radial-gradient(circle,#1a6fd40f 0%,#0000 70%);border-radius:50%;width:560px;height:560px;position:absolute;top:-180px;left:-180px}.rpt-cover-glow-b{pointer-events:none;background:radial-gradient(circle,#1f9e8e0d 0%,#0000 70%);border-radius:50%;width:480px;height:480px;position:absolute;bottom:-120px;right:-120px}.rpt-cover-top-bar{background:linear-gradient(90deg, var(--rpt-brand-blue) 0%, var(--rpt-brand-teal) 55%, var(--rpt-brand-green) 100%);flex-shrink:0;height:3px}.rpt-cover-body{z-index:1;flex-direction:column;flex:1;padding:60px 72px;display:flex;position:relative}.rpt-cover-logo{color:var(--rpt-brand-blue);letter-spacing:.06em;font-family:Playfair Display,serif;font-size:24px;font-weight:700}.rpt-cover-logo-sub{letter-spacing:.2em;text-transform:uppercase;color:var(--rpt-text-muted);margin-top:3px;font-size:11px;font-weight:300}.rpt-cover-rule{background:linear-gradient(90deg, var(--rpt-brand-blue), var(--rpt-brand-teal));opacity:.7;width:52px;height:2px;margin:52px 0 40px}.rpt-cover-eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--rpt-text-muted);margin-bottom:14px;font-family:DM Mono,monospace;font-size:10px}.rpt-cover-title{color:var(--rpt-text-primary);margin-bottom:14px;font-family:Playfair Display,serif;font-size:56px;font-weight:900;line-height:1.05}.rpt-cover-title em{background:linear-gradient(135deg, var(--rpt-brand-blue), var(--rpt-brand-teal));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.rpt-cover-desc{color:var(--rpt-text-muted);max-width:620px;margin-bottom:48px;font-size:14px;font-weight:300;line-height:1.7}.rpt-cover-student-card{background:var(--rpt-bg-tertiary);border:1px solid var(--rpt-border-mid);border-left:3px solid var(--rpt-brand-blue);grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px;padding:22px 28px;display:grid}.rpt-cfield label{letter-spacing:.2em;text-transform:uppercase;color:var(--rpt-text-muted);margin-bottom:4px;font-family:DM Mono,monospace;font-size:9px;display:block}.rpt-cfield-value{color:var(--rpt-text-primary);font-size:15px;font-weight:500;display:block}.rpt-cover-scores{border:1px solid var(--rpt-border-mid);gap:0;display:flex}.rpt-cscore{background:var(--rpt-bg-secondary);text-align:center;border-right:1px solid var(--rpt-border);flex:1;padding:18px 16px;position:relative;overflow:hidden}.rpt-cscore:last-child{border-right:none}.rpt-cscore:after{content:"";height:2px;position:absolute;top:0;left:0;right:0}.rpt-cscore.sa:after{background:var(--rpt-brand-teal)}.rpt-cscore.sb:after{background:var(--rpt-brand-warning)}.rpt-cscore.sc:after{background:var(--rpt-brand-green)}.rpt-cscore-label{letter-spacing:.14em;text-transform:uppercase;color:var(--rpt-text-muted);margin-bottom:8px;font-family:DM Mono,monospace;font-size:9px}.rpt-cscore-num{font-family:Playfair Display,serif;font-size:38px;font-weight:700;line-height:1}.rpt-cscore-num sup{color:var(--rpt-text-muted);font-family:DM Sans,sans-serif;font-size:14px;font-weight:300}.rpt-cscore-name{color:var(--rpt-text-muted);margin-top:6px;font-size:11px;font-weight:300;line-height:1.3}.rpt-cover-footer-row{border-top:1px solid var(--rpt-border-mid);color:var(--rpt-text-muted);justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:24px;font-size:11px;font-weight:300;display:flex}.rpt-inner{border-top:1px solid var(--rpt-border);flex-direction:column;height:1122px;padding:44px 56px;display:flex;position:relative}.rpt-pg-header{border-bottom:1px solid var(--rpt-border-strong);flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:10px;display:flex}.rpt-pg-logo{color:var(--rpt-brand-blue);letter-spacing:.06em;font-family:Playfair Display,serif;font-size:17px;font-weight:700}.rpt-pg-meta{color:var(--rpt-text-muted);letter-spacing:.06em;font-family:DM Mono,monospace;font-size:9px}.rpt-pg-body{flex-direction:column;flex:1;display:flex;overflow:visible}.rpt-pg-footer{border-top:1px solid var(--rpt-border);color:var(--rpt-text-muted);letter-spacing:.08em;text-transform:uppercase;flex-shrink:0;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;font-family:DM Mono,monospace;font-size:9px;display:flex}.rpt-sec-eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--rpt-brand-blue);opacity:.85;margin-bottom:5px;font-family:DM Mono,monospace;font-size:9px}.rpt-sec-title{color:var(--rpt-text-primary);margin-bottom:4px;font-family:Playfair Display,serif;font-size:22px;font-weight:700;line-height:1.2}.rpt-sec-sub{color:var(--rpt-text-muted);font-size:12.5px;font-weight:300;line-height:1.6}.rpt-divider{background:var(--rpt-border);flex-shrink:0;height:1px;margin:12px 0}.rpt-unified-card{border:1px solid var(--rpt-border-mid);grid-template-columns:1fr 1fr 1fr;margin-top:10px;display:grid}.rpt-uc{border-bottom:1px solid var(--rpt-border);padding:12px 14px}.rpt-uc-c1,.rpt-uc-c2{border-right:1px solid var(--rpt-border)}.rpt-uc-desc{position:relative}.rpt-uc-desc.ca{border-top:2px solid var(--rpt-brand-teal)}.rpt-uc-desc.cb{border-top:2px solid var(--rpt-brand-warning)}.rpt-uc-desc.cc{border-top:2px solid var(--rpt-brand-green)}.rpt-uc-data{text-align:center;padding:8px 14px}.rpt-uc-why{padding:10px 14px}.rpt-uc-score{text-align:center;border-bottom:none;padding:10px 14px}.rpt-uc h4{color:var(--rpt-text-primary);margin-bottom:4px;font-family:Playfair Display,serif;font-size:13px;font-weight:600;line-height:1.25}.rpt-uc p{color:var(--rpt-text-muted);font-size:10.5px;font-weight:300;line-height:1.5}.rpt-uc-row-label{letter-spacing:.18em;text-transform:uppercase;color:var(--rpt-text-muted);background:var(--rpt-bg-primary);border-bottom:2px solid;-o-border-image:linear-gradient(90deg, var(--rpt-brand-teal), var(--rpt-brand-warning), var(--rpt-brand-green)) 1;border-image:linear-gradient(90deg, var(--rpt-brand-teal), var(--rpt-brand-warning), var(--rpt-brand-green)) 1;grid-column:1/-1;padding:6px 14px;font-family:DM Mono,monospace;font-size:8px;font-weight:500}.rpt-method-pill{letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px;padding:2px 8px;font-family:DM Mono,monospace;font-size:8px;font-weight:500;display:inline-block}.rpt-method-pill.ma{color:var(--rpt-brand-teal);background:#1f9e8e14;border:1px solid #1f9e8e40}.rpt-method-pill.mb{color:var(--rpt-brand-warning);background:#c47d0014;border:1px solid #c47d0040}.rpt-method-pill.mc{color:var(--rpt-brand-green);background:#1d943814;border:1px solid #1d943840}.rpt-ring-wrap{width:60px;height:60px;margin:0 auto 8px;position:relative}.rpt-ring-wrap svg{transform:rotate(-90deg)}.rpt-ring-inner{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.rpt-ring-num{font-family:Playfair Display,serif;font-size:18px;font-weight:700;line-height:1}.rpt-ring-denom{color:var(--rpt-text-muted);font-family:DM Mono,monospace;font-size:9px}.rpt-sp-status{text-align:center;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-family:DM Mono,monospace;font-size:9px;font-weight:600}.rpt-sp-rows{margin:0;padding:0;list-style:none}.rpt-sp-row{border-bottom:1px solid var(--rpt-border);color:var(--rpt-text-muted);justify-content:space-between;padding:3px 0;font-size:11px;display:flex}.rpt-sp-row:last-child{border-bottom:none}.rpt-sp-row strong{color:var(--rpt-text-secondary);text-align:right;flex-shrink:0;font-family:DM Mono,monospace;font-size:10px;font-weight:500}.rpt-sp-peer{border-top:1px solid var(--rpt-border-mid);margin-top:3px;padding-top:5px}.rpt-sp-peer strong{color:var(--rpt-text-muted)}.rpt-peer-note{color:var(--rpt-text-muted);margin-top:6px;font-size:10px;font-style:italic;font-weight:300}.rpt-metric-grid{grid-template-columns:1fr 1fr 1fr;gap:7px;margin-top:10px;display:grid}.rpt-metric-card{border:1px solid var(--rpt-border-mid);border-left:3px solid;padding:8px 10px}.rpt-metric-head{justify-content:space-between;align-items:center;gap:6px;margin-bottom:2px;display:flex}.rpt-metric-card.mc-strong{border-left-color:var(--rpt-brand-green);background:#1d94380a}.rpt-metric-card.mc-high{border-left-color:var(--rpt-brand-error);background:#d42b550a}.rpt-metric-card.mc-medium{border-left-color:var(--rpt-brand-warning);background:#c47d000a}.rpt-metric-card.mc-low{background:#c47d0008;border-left-color:#c47d0080}.rpt-metric-card.mc-nodata{border-left-color:var(--rpt-text-muted);background:#6b72800a}.rpt-metric-tag{letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;flex-shrink:0;padding:2px 7px;font-family:DM Mono,monospace;font-size:7px;font-weight:600}.rpt-metric-tag.mt-strong{color:var(--rpt-brand-green);background:#1d94381a;border:1px solid #1d943840}.rpt-metric-tag.mt-high{color:var(--rpt-brand-error);background:#d42b5514;border:1px solid #d42b5533}.rpt-metric-tag.mt-medium{color:var(--rpt-brand-warning);background:#c47d0014;border:1px solid #c47d0040}.rpt-metric-tag.mt-low{color:#c47d00b3;background:#c47d000f;border:1px solid #c47d0033}.rpt-metric-tag.mt-nodata{color:var(--rpt-text-muted);background:#6b728014;border:1px solid #6b728033}.rpt-metric-code{letter-spacing:.1em;color:var(--rpt-text-muted);text-transform:uppercase;font-family:DM Mono,monospace;font-size:7px}.rpt-metric-title{color:var(--rpt-text-primary);margin-bottom:3px;font-family:Playfair Display,serif;font-size:11.5px;font-weight:600;line-height:1.2}.rpt-metric-desc{color:var(--rpt-text-muted);margin-bottom:4px;font-size:9.5px;font-weight:300;line-height:1.4}.rpt-metric-finding{color:var(--rpt-text-secondary);border-top:1px solid var(--rpt-border);padding-top:4px;font-size:9.5px;font-style:italic;font-weight:300;line-height:1.4}.rpt-metric-impact{border-top:1px dashed var(--rpt-border);align-items:center;gap:6px;margin-top:4px;padding-top:4px;display:flex}.rpt-metric-impact .mi-label{letter-spacing:.05em;color:var(--rpt-text-muted);font-family:DM Mono,monospace;font-size:7.5px;font-weight:600}.rpt-metric-impact .mi-stat{letter-spacing:.05em;color:var(--rpt-text-muted);background:#6b728012;border-radius:2px;padding:2px 6px;font-family:DM Mono,monospace;font-size:7.5px}.mc-high .rpt-metric-impact .mi-stat{color:var(--rpt-brand-error);background:#d42b550f}.mc-medium .rpt-metric-impact .mi-stat{color:var(--rpt-brand-warning);background:#c47d000f}.mc-low .rpt-metric-impact .mi-stat{color:#c47d00b3;background:#c47d000a}.rpt-beh-summary{background:var(--rpt-bg-secondary);border:1px solid var(--rpt-border-mid);border-left:3px solid var(--rpt-brand-green);color:var(--rpt-text-secondary);margin-bottom:10px;padding:9px 13px;font-size:11px;font-style:italic;font-weight:300;line-height:1.5}.rpt-beh-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.rpt-beh-quad{border:1px solid var(--rpt-border-mid);background:var(--rpt-bg-secondary);overflow:hidden}.rpt-beh-quad-head{border-bottom:1px solid var(--rpt-border-mid);background:var(--rpt-bg-tertiary);align-items:center;gap:7px;padding:5px 10px;display:flex}.rpt-beh-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.rpt-beh-quad-head span{letter-spacing:.16em;text-transform:uppercase;color:var(--rpt-text-muted);font-family:DM Mono,monospace;font-size:8px;font-weight:500}.rpt-beh-trait{border-bottom:1px solid var(--rpt-border-mid);padding:6px 10px}.rpt-beh-trait:last-child{border-bottom:none}.rpt-beh-trait-top{align-items:center;gap:6px;margin-bottom:2px;display:flex}.rpt-beh-trait-name{color:var(--rpt-text-secondary);font-size:11px;font-weight:500}.rpt-beh-badge{letter-spacing:.08em;flex-shrink:0;padding:2px 7px;font-family:DM Mono,monospace;font-size:8px;font-weight:600}.rpt-beh-badge.yes{color:var(--rpt-brand-green);background:#1d94381a;border:1px solid #1d943840}.rpt-beh-badge.no{color:var(--rpt-brand-error);background:#d42b5514;border:1px solid #d42b5533}.rpt-beh-badge.neg{color:var(--rpt-brand-error);background:#d42b551f;border:1px solid #d42b554d}.rpt-beh-trait-detail{color:var(--rpt-text-muted);font-family:DM Mono,monospace;font-size:10px;font-weight:300;line-height:1.4}.rpt-beh-participation-flag{color:var(--rpt-brand-error);letter-spacing:.06em;margin-left:auto;font-family:DM Mono,monospace;font-size:8px;font-weight:600}.rpt-pdp-wrap{flex-direction:column;gap:9px;margin-top:14px;display:flex}.rpt-pdp-phase{border:1px solid var(--rpt-border-mid);grid-template-columns:48px 1fr;gap:0;display:grid;overflow:hidden}.rpt-pdp-num-col{background:var(--rpt-bg-tertiary);border-right:1px solid var(--rpt-border-mid);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:12px 6px;display:flex}.rpt-pdp-n{color:var(--rpt-brand-blue);margin-bottom:4px;font-family:Playfair Display,serif;font-size:26px;font-weight:700;line-height:1}.rpt-pdp-period{color:var(--rpt-text-muted);letter-spacing:.05em;text-transform:uppercase;font-family:DM Mono,monospace;font-size:7px;line-height:1.4}.rpt-pdp-content{background:var(--rpt-bg-secondary);padding:11px 15px}.rpt-pdp-title-row{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.rpt-pdp-title{color:var(--rpt-text-primary);font-family:Playfair Display,serif;font-size:12.5px;font-weight:600;line-height:1.2}.rpt-pdp-focus-tag{letter-spacing:.1em;flex-shrink:0;margin-top:2px;margin-left:10px;padding:2px 7px;font-family:DM Mono,monospace;font-size:7px}.rpt-pdp-focus-tag.b{color:var(--rpt-brand-warning);background:#c47d0014;border:1px solid #c47d0040}.rpt-pdp-focus-tag.c{color:var(--rpt-brand-green);background:#1d943814;border:1px solid #1d943840}.rpt-pdp-desc{color:var(--rpt-text-muted);margin-bottom:6px;font-size:11px;font-weight:300;line-height:1.5}.rpt-pdp-desc strong{color:var(--rpt-text-secondary);font-weight:500}.rpt-pdp-tags{flex-wrap:wrap;gap:5px;display:flex}.rpt-pdp-tag{border:1px solid var(--rpt-border-mid);color:var(--rpt-text-muted);padding:2px 8px;font-family:DM Mono,monospace;font-size:9px}.rpt-sig-box{border:1px solid var(--rpt-border-mid);grid-template-columns:1fr 1fr;gap:56px;margin-top:11px;padding:20px 24px 16px;display:grid}.rpt-sig-field{flex-direction:column;display:flex}.rpt-sig-line{border-bottom:1px solid #00000040;margin-top:38px}.rpt-sig-cap{letter-spacing:.1em;text-transform:uppercase;color:var(--rpt-text-muted);margin-top:6px;font-family:DM Mono,monospace;font-size:9px}.rpt-sig-date-label{color:var(--rpt-text-muted);letter-spacing:.08em;margin-top:3px;font-family:DM Mono,monospace;font-size:9px}.rpt-low-severity-note{color:var(--rpt-text-muted);margin-top:8px;font-size:10px;font-style:italic;font-weight:300}.rpt-appendix-entry{border:1px solid var(--rpt-border-mid);margin-bottom:14px;overflow:hidden}.rpt-appendix-header{background:var(--rpt-bg-tertiary);border-bottom:1px solid var(--rpt-border-mid);justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.rpt-appendix-code{letter-spacing:.1em;color:var(--rpt-text-muted);text-transform:uppercase;font-family:DM Mono,monospace;font-size:9px;font-weight:600}.rpt-appendix-name{color:var(--rpt-text-primary);margin-left:8px;font-family:Playfair Display,serif;font-size:13px;font-weight:600}.rpt-appendix-finding{border-bottom:1px solid var(--rpt-border);color:var(--rpt-text-secondary);background:#c47d000a;padding:8px 14px;font-size:10.5px;font-style:italic;font-weight:300;line-height:1.5}.rpt-appendix-attempt{border-bottom:1px solid var(--rpt-border);padding:12px 14px}.rpt-appendix-attempt:last-child{border-bottom:none}.rpt-appendix-label{letter-spacing:.14em;text-transform:uppercase;color:var(--rpt-text-muted);margin-bottom:4px;font-family:DM Mono,monospace;font-size:8px;font-weight:500}.rpt-appendix-question{color:var(--rpt-text-primary);background:var(--rpt-bg-secondary);border:1px solid var(--rpt-border);margin-bottom:8px;padding:6px 10px;font-size:11px;line-height:1.5}.rpt-appendix-img{border:1px solid var(--rpt-border-mid);cursor:pointer;max-height:200px;margin-bottom:8px}.rpt-appendix-img:hover{opacity:.9}.rpt-appendix-assessment{color:var(--rpt-text-secondary);border-left:2px solid var(--rpt-brand-green);background:#1d94380a;margin-bottom:4px;padding:6px 10px;font-size:10px;font-weight:300;line-height:1.5}.rpt-appendix-gap{color:var(--rpt-text-secondary);border-left:2px solid var(--rpt-brand-warning);background:#c47d000a;padding:6px 10px;font-size:10px;font-weight:300;line-height:1.5}@page{size:210mm 297mm;margin:0}@media print{html,body{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;width:210mm;height:297mm}.rpt-page{width:210mm;height:297mm;box-shadow:none;page-break-after:always;page-break-inside:avoid;-moz-column-break-after:page;break-after:page;-moz-column-break-inside:avoid;break-inside:avoid;margin:0}.rpt-page:last-child{page-break-after:auto}.rpt-cover,.rpt-inner{page-break-inside:avoid;-moz-column-break-inside:avoid;break-inside:avoid;height:297mm}.rpt-cover-title em{-webkit-text-fill-color:var(--rpt-brand-teal);background:0 0}.rpt-controls{display:none}}.rpt-controls{background:var(--rpt-bg-primary);border:1px solid var(--rpt-border-mid);justify-content:space-between;align-items:center;width:794px;margin:24px auto 0;padding:16px 24px;font-family:DM Sans,sans-serif;display:flex}.rpt-controls-title{color:var(--rpt-text-primary);font-family:Playfair Display,serif;font-size:17px;font-weight:700}.rpt-controls-buttons{gap:8px;display:flex}.rpt-btn{cursor:pointer;letter-spacing:.02em;border:none;padding:8px 16px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500}.rpt-btn:disabled{opacity:.5;cursor:not-allowed}.rpt-btn-secondary{background:var(--rpt-bg-tertiary);color:var(--rpt-text-secondary);border:1px solid var(--rpt-border-mid)}.rpt-btn-secondary:hover:not(:disabled){background:var(--rpt-bg-secondary)}.rpt-btn-primary{background:var(--rpt-brand-blue);color:#fff}.rpt-btn-primary:hover:not(:disabled){background:#1560b8}.rpt-error{color:var(--rpt-brand-error);background:#d42b550f;border:1px solid #d42b5526;margin-top:8px;padding:8px 12px;font-size:11px}.rpt-loading{text-align:center;background:var(--rpt-bg-primary);width:794px;color:var(--rpt-text-muted);margin:24px auto;padding:60px;font-family:DM Sans,sans-serif;font-size:13px;box-shadow:0 4px 40px #0000001f}.rpt-spinner{border:3px solid var(--rpt-border-mid);border-top-color:var(--rpt-brand-blue);border-radius:50%;width:32px;height:32px;margin-bottom:12px;animation:.8s linear infinite rpt-spin;display:inline-block}@keyframes rpt-spin{to{transform:rotate(360deg)}}:root{--primary:#2563eb;--primary-dark:#1d4ed8;--primary-soft:#eff6ff;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--neutral:#6b7280;--bg-primary:#fff;--bg-secondary:#f9fafb;--bg-tertiary:#f3f4f6;--border:#e5e7eb;--text-primary:#111827;--text-secondary:#6b7280;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--radius:.5rem;--radius-lg:.75rem}.qc-dashboard-container{background:var(--bg-secondary);min-height:100vh;padding:0}.dashboard-header{background:var(--bg-primary);box-shadow:var(--shadow-sm);border-bottom:1px solid var(--border);padding:1rem 1.5rem}.qcai-header{background:var(--bg-primary);border-bottom:1px solid var(--border)}.qcai-header-identity{justify-content:space-between;align-items:center;gap:.75rem;padding:.625rem 1.25rem .5rem;display:flex}.qcai-id-left{align-items:center;gap:.75rem;min-width:0;display:flex}.qcai-avatar{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:.85rem;font-weight:700;display:flex;box-shadow:0 2px 6px #2563eb40}.qcai-id-text{min-width:0}.qcai-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;font-size:1rem;font-weight:700;line-height:1.2;overflow:hidden}.qcai-name-sub{color:var(--text-secondary);font-weight:500}.qcai-badges{flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.3rem;display:flex}.qcai-badge{white-space:nowrap;border-radius:9999px;padding:.12rem .5rem;font-size:.65rem;font-weight:600;line-height:1.4}.qcai-badge-grade{background:var(--primary-soft);color:var(--primary-dark)}.qcai-badge-math{color:#1d4ed8;background:#dbeafe}.qcai-badge-sci{color:#047857;background:#d1fae5}.qcai-badge-muted{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border)}.qcai-badge-batch{color:#b45309;cursor:pointer;background:#fef3c7;text-decoration:none;transition:background .15s}.qcai-badge-batch:hover{background:#fde68a}.qcai-id-actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.qcai-header-profile{padding:.4rem 1.25rem .625rem}.qcai-controls{z-index:30;background:var(--bg-primary);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:1rem;padding:0 1.25rem;display:flex;position:sticky;top:0}.qcai-controls-tabs{flex:1;min-width:0}.qcai-controls-filters{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.qcai-filter{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:9999px;align-items:center;gap:.35rem;padding:.15rem .3rem .15rem .7rem;transition:border-color .15s,background .15s;display:inline-flex}.qcai-filter:hover{border-color:var(--primary)}.qcai-filter:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #2563eb1f}.qcai-filter-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-size:.625rem;font-weight:700}.qcai-filter-select{appearance:none;color:var(--text-primary);cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") right .5rem center no-repeat;border:none;border-radius:9999px;padding:.25rem 1.4rem .25rem .4rem;font-size:.75rem;font-weight:600}.qcai-filter-select:focus{outline:none}.qcai-statsbar{background:0 0;justify-content:flex-end;align-items:center;gap:.6rem;padding:.15rem 1.25rem 0;display:flex}.qcai-stat-lead{align-items:center;gap:.4rem;display:flex}.qcai-subject-switch{background:var(--bg-tertiary);border-radius:9999px;gap:2px;padding:2px;display:inline-flex}.qcai-subject-btn{color:var(--text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:9999px;padding:.25rem .8rem;font-size:.75rem;font-weight:600;transition:all .15s}.qcai-subject-btn[data-active=true]{color:var(--primary-dark);box-shadow:var(--shadow-sm);background:#fff}.qcai-bia-toggle{letter-spacing:.03em;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border);cursor:pointer;border-radius:9999px;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:.625rem;font-weight:700;transition:all .15s;display:inline-flex}.qcai-bia-toggle--icon{opacity:.5;background:0 0;border-color:#0000;gap:0;padding:.28rem}.qcai-bia-toggle--icon:hover{opacity:1;background:var(--bg-tertiary)}.qcai-bia-toggle--icon[data-active=true]{opacity:1}.qcai-bia-toggle[data-active=true]{color:var(--primary-dark);background:var(--primary-soft);border-color:#2563eb4d}.qcai-bia-dot{background:var(--border);border-radius:9999px;width:6px;height:6px}.qcai-bia-toggle[data-active=true] .qcai-bia-dot{background:var(--primary)}.qcai-stat{flex-direction:column;justify-content:center;align-items:flex-start;padding:.1rem .5rem;line-height:1.15;display:flex}.qcai-stat-value{color:var(--text-primary);font-size:1.05rem;font-weight:700}.qcai-stat-denom{color:#9ca3af;font-size:.8rem;font-weight:500}.qcai-stat-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);white-space:nowrap;font-size:.625rem;font-weight:600}.qcai-stat[data-tone=good] .qcai-stat-value{color:var(--success)}.qcai-stat[data-tone=warn] .qcai-stat-value{color:var(--warning)}.qcai-stat[data-tone=bad] .qcai-stat-value{color:var(--danger)}.qcai-stat[data-tone=muted] .qcai-stat-value{color:var(--neutral)}.qcai-stat-group{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.15rem;padding:.3rem .5rem .4rem;display:flex}.qcai-stat-group-title{text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;padding-left:.5rem;font-size:.5625rem;font-weight:700}.qcai-stat-group-body{flex-wrap:wrap;align-items:stretch;display:flex}.qcai-stat-group-body .qcai-stat+.qcai-stat{border-left:1px solid var(--border)}@media (max-width:900px){.qcai-controls{flex-wrap:wrap;align-items:stretch}.qcai-controls-tabs{flex:1 0 100%;width:100%}.qcai-controls-filters{flex-wrap:wrap;justify-content:flex-start;width:100%;padding-bottom:.5rem}}@media (max-width:640px){.qcai-header-identity{padding:.5rem .875rem .4rem}.qcai-name{white-space:normal;font-size:.9rem}.qcai-header-profile{padding:.4rem .875rem .5rem}.qcai-controls{padding:0 .875rem}.qcai-statsbar{padding:.5rem .875rem}}.dashboard-header-content{justify-content:space-between;align-items:center;gap:1rem;display:flex}.header-left{align-items:center;gap:.75rem;display:flex}.dashboard-subtitle{color:var(--text-secondary);margin-top:.125rem;font-size:.75rem}.dashboard-actions{align-items:center;gap:.75rem;display:flex}.stats-bar-compact{background:var(--bg-primary);border-bottom:1px solid var(--border);justify-content:flex-start;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1.5rem;display:flex}.stat-item-compact{border-right:1px solid var(--border);align-items:center;gap:.5rem;padding:0 1rem;display:flex}.stat-item-compact:last-child{border-right:none}.stat-item-compact:has(+.stat-divider){border-right:none}.stat-divider{background:var(--border);align-self:stretch;width:2px;margin:0 .5rem}.stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:700}.stat-value.stat-success{color:var(--success)}.stat-value.stat-warning{color:var(--danger)}.stat-value.stat-neutral{color:var(--neutral)}.stat-label{color:var(--text-secondary);font-size:.75rem;font-weight:500}.content-wrapper{padding:0 1.5rem 1.5rem;position:relative}.main-content{transition:margin-right .3s}.main-content.sidebar-open{margin-right:0}.chapters-grid-compact{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.chapter-card-compact{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border);cursor:pointer;transition:all .2s;position:relative;overflow:hidden}.chapter-card-compact:hover{box-shadow:var(--shadow-md);border-color:var(--primary);transform:translateY(-2px)}.chapter-card-compact.selected{border-color:var(--primary);box-shadow:0 0 0 2px #6366f11a}.chapter-progress-bar{background:var(--bg-tertiary);height:3px;position:relative}.chapter-progress-fill{background:linear-gradient(90deg, var(--success) 0%, var(--primary) 100%);height:100%;transition:width .3s}.chapter-content-compact{padding:1rem}.chapter-header-compact{margin-bottom:.75rem}.chapter-info{margin-bottom:.25rem}.chapter-name-compact{color:var(--text-primary);margin:0;font-size:.9375rem;font-weight:600;line-height:1.2}.chapter-book-compact{color:var(--text-secondary);margin-top:.125rem;font-size:.75rem;display:block}.chapter-meta-compact{color:var(--text-secondary);justify-content:space-between;margin-top:.5rem;font-size:.6875rem;display:flex}.chapter-qc-total{color:var(--text-primary);font-weight:600}.chapter-update-time{color:var(--text-secondary)}.qc-stats-compact{border-top:1px solid var(--bg-tertiary);padding-top:.75rem}.qc-stat-row{grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:.5rem;display:grid}.qc-stat-item{text-align:center;background:var(--bg-tertiary);border-radius:.25rem;flex-direction:column;align-items:center;padding:.25rem;transition:background .2s;display:flex}.qc-stat-item:hover{background:var(--bg-secondary)}.stat-dot{margin-bottom:.125rem;font-size:.5rem}.qc-stat-item.understood .stat-dot{color:var(--success)}.qc-stat-item.needs-practice .stat-dot{color:var(--warning)}.qc-stat-item.not-understood .stat-dot{color:var(--danger)}.qc-stat-item.not-attempted .stat-dot{color:var(--neutral)}.stat-count{color:var(--text-primary);font-size:1rem;font-weight:700;line-height:1}.stat-label-mini{color:var(--text-secondary);margin-top:.125rem;font-size:.625rem;line-height:1}.stat-percent-mini{color:var(--text-secondary);opacity:.7;margin-top:.125rem;font-size:.625rem}.sidebar-compact{background:var(--bg-primary);z-index:1000;flex-direction:column;width:50vw;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-4px 0 20px #0000001a}.sidebar-compact.open{transform:translate(0)}.sidebar-header-compact{background:var(--bg-primary);border-bottom:1px solid var(--border);flex-shrink:0;padding:1.5rem 2rem}.sidebar-header-top{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.sidebar-title-compact{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:calc(50vw - 100px);margin:0;font-size:1.125rem;font-weight:700;overflow:hidden}.close-sidebar-compact{border-radius:var(--radius);background:var(--bg-tertiary);width:2rem;height:2rem;color:var(--text-secondary);cursor:pointer;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex}.close-sidebar-compact:hover{background:var(--bg-secondary);color:var(--text-primary)}.sidebar-stats-compact{gap:1rem;font-size:.75rem;display:flex}.sidebar-stat{flex-direction:column;align-items:center;display:flex}.sidebar-stat-value{color:var(--text-primary);font-size:1rem;font-weight:700}.sidebar-stat-label{color:var(--text-secondary);margin-top:.125rem;font-size:.625rem}.sidebar-content-compact{background:var(--bg-secondary);flex:1;overflow-y:auto}.qc-list-compact{padding:1rem 1.5rem}.qc-item-compact{background:var(--bg-primary);border-radius:var(--radius);border:1px solid var(--border);margin-bottom:.5rem;transition:all .2s;overflow:hidden}.qc-item-compact:hover{box-shadow:var(--shadow-sm)}.qc-item-header{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.qc-item-header:hover{background:var(--bg-tertiary)}.qc-item-left{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.qc-status-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;font-weight:700;display:flex}.qc-status-icon.success{color:var(--success);background:#10b9811a}.qc-status-icon.warning{color:var(--warning);background:#f59e0b1a}.qc-status-icon.danger{color:var(--danger);background:#ef44441a}.qc-status-icon.neutral{background:var(--bg-tertiary);color:var(--neutral)}.qc-item-info{flex:1;min-width:0}.qc-item-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;display:block;overflow:hidden}.qc-item-meta{color:var(--text-secondary);gap:.5rem;margin-top:.125rem;font-size:.6875rem;display:flex}.qc-order{font-weight:500}.qc-level{background:var(--bg-tertiary);border-radius:.125rem;padding:0 .25rem}.qc-ai-badge{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:.125rem;padding:0 .25rem;font-weight:600}.qc-item-right{align-items:center;gap:.5rem;display:flex}.qc-status-label{border-radius:.25rem;padding:.125rem .375rem;font-size:.6875rem;font-weight:500}.qc-status-label.success{color:var(--success);background:#10b9811a}.qc-status-label.warning{color:var(--warning);background:#f59e0b1a}.qc-status-label.danger{color:var(--danger);background:#ef44441a}.qc-status-label.neutral{background:var(--bg-tertiary);color:var(--neutral)}.qc-expand-btn{width:1.5rem;height:1.5rem;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:transform .2s;display:flex}.qc-expand-btn.expanded{transform:rotate(180deg)}.qc-expand-btn:hover{color:var(--text-primary)}.qc-item-details{border-top:1px solid var(--border);background:var(--bg-tertiary);padding:1.25rem 1.5rem;animation:.2s ease-out slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.qc-detail-card{background:var(--bg-primary);border-radius:var(--radius);padding:1rem}.qc-detail-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.qc-detail-title{color:var(--text-primary);margin:0 0 .25rem;font-size:.875rem;font-weight:600}.qc-detail-meta{color:var(--text-secondary);gap:.5rem;font-size:.6875rem;display:flex}.qc-timeline-section{background:var(--bg-tertiary);border-radius:var(--radius);margin-bottom:.75rem;padding:.75rem}.qc-section-title{color:var(--text-primary);margin-bottom:.5rem;font-size:.75rem;font-weight:600}.qc-timeline-item{background:var(--bg-primary);border-radius:.25rem;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.5rem;font-size:.75rem;display:flex}.qc-insights-section{background:var(--bg-tertiary);border-radius:var(--radius);margin-bottom:.75rem;padding:.75rem}.qc-insights-section.teaching-focus{background:#f59e0b0d;border:1px solid #f59e0b33}.teaching-focus-item{background:var(--bg-primary);border-radius:.25rem;margin-bottom:.5rem;padding:.5rem;font-size:.75rem}.teaching-focus-field{margin-bottom:.25rem}.teaching-focus-field strong{color:var(--text-primary);font-size:.6875rem}.teaching-focus-field p{color:var(--text-secondary);margin:.125rem 0 0;font-size:.6875rem;line-height:1.3}.sidebar-loading-compact,.sidebar-empty-compact{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:2rem;font-size:.875rem;display:flex}.loading-spinner-small{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:2rem;height:2rem;margin-bottom:.5rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.sidebar-error-compact{border-radius:var(--radius);color:var(--danger);text-align:center;background:#ef44441a;margin:.5rem;padding:.75rem;font-size:.75rem}.btn{border-radius:var(--radius);cursor:pointer;border:none;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-secondary)}.filter-select,.exam-selector{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);background:var(--bg-primary);cursor:pointer;min-width:120px;padding:.375rem .625rem;font-size:.8125rem;transition:all .2s}.filter-select:hover,.exam-selector:hover{border-color:var(--primary)}.filter-select:focus,.exam-selector:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #6366f11a}.sidebar-overlay{opacity:0;visibility:hidden;z-index:999;background:#0000004d;transition:opacity .3s,visibility .3s;position:fixed;inset:0}.sidebar-overlay.visible{opacity:1;visibility:visible}.sidebar-content-compact::-webkit-scrollbar{width:6px}.sidebar-content-compact::-webkit-scrollbar-track{background:var(--bg-secondary)}.sidebar-content-compact::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.sidebar-content-compact::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@media (max-width:1400px){.sidebar-compact{width:50vw;min-width:480px}}@media (max-width:1200px){.chapters-grid-compact{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.sidebar-compact{width:60vw;min-width:420px}}@media (max-width:768px){.dashboard-header-content{flex-direction:column;align-items:flex-start;gap:.75rem}.dashboard-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.stats-bar-compact{flex-wrap:wrap;padding:.5rem 1rem}.stat-item-compact{padding:0 .5rem}.chapters-grid-compact{grid-template-columns:1fr}.sidebar-compact{width:100%;min-width:unset}}@media print{.dashboard-actions,.sidebar-compact,.sidebar-overlay{display:none}.chapters-grid-compact{grid-template-columns:repeat(2,1fr)}}html.dark{--primary:#4c9fff;--primary-dark:#2b8eff;--primary-soft:#2b8eff24;--success:#34d399;--warning:#fbbf24;--danger:#ff5a5a;--neutral:#9e9e9e;--bg-primary:#121212;--bg-secondary:#0a0a0a;--bg-tertiary:#1c1c1c;--border:#2a2a2a;--text-primary:#e8e8e8;--text-secondary:#9e9e9e;--shadow-sm:0 1px 2px #00000080;--shadow-md:0 4px 6px -1px #00000080;--shadow-lg:0 10px 15px -3px #0009}.qcai-header-v2,.qcai2-behav,.qcai2-hero{--ink:#0f1b2d;--ink2:#3a4a5e;--ink3:#66788c;--ink4:#93a2b3;--ink5:#c2cbd6;--line:#e4e9ef;--line2:#edf1f5;--paper:#fff;--bg2:#f1f4f8;--blue2:#008cff;--blue-d2:#0a66c2;--blue-bg2:#eaf4ff;--blue-bd2:#cfe5fb;--green2:#22a45d;--green-d2:#1e8a4a;--green-bg2:#e4f6ec;--green-bd2:#c9e9d6;--red2:#e0453e;--red-d2:#b23a36;--red-bg2:#fbe9e7;--red-bd2:#f5d6d2;--amber2:#e8a020;--amber-d2:#9a6a12;--amber-bg2:#fdf3e0;--amber-bd2:#f1e1be;--sans2:"Inter",-apple-system,sans-serif;--disp2:"Sora","Inter",sans-serif;font-family:var(--sans2)}.qcai2-hero{color:#fff;background:#0a0a0a;border-radius:0 0 22px 22px;padding:22px 28px 24px}.qcai2-hero-top{justify-content:space-between;align-items:center;gap:20px;display:flex}.qcai2-who{align-items:center;gap:15px;display:flex}.qcai2-avatar{color:#fff;width:48px;height:48px;font-family:var(--disp2);background:linear-gradient(150deg,#2e9bff,#0a66c2);border-radius:14px;flex:none;justify-content:center;align-items:center;font-size:17px;font-weight:800;display:flex;box-shadow:0 6px 18px #008cff59}.qcai2-h1{font-family:var(--disp2);letter-spacing:-.02em;color:#fff;margin:0;font-size:21px;font-weight:700}.qcai2-h1-link{cursor:pointer;text-decoration:none;display:inline-block}.qcai2-h1-link:hover{text-underline-offset:3px;text-decoration:underline}.qcai2-role{color:#8fa3bc;margin-top:2px;font-size:12px;font-weight:500}.qcai2-role b{color:#c8d6e6;font-weight:600}.qcai2-hero-actions{align-items:center;gap:10px;display:flex}.qcai2-act{color:#c8d6e6;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:9px;padding:7px;transition:all .15s;display:inline-flex}.qcai2-act:hover{color:#fff;background:#ffffff29}.qcai2-act-ai{color:#c7a6ff}.qcai2-wm{font-family:var(--disp2);color:#fff;letter-spacing:.02em;margin-left:4px;font-size:20px;font-weight:800}.qcai2-wm .p{color:#2e9bff}.qcai2-wm .o{color:#31c48d}.qcai2-hero-meta{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.qcai2-hm{color:#c8d6e6;background:#ffffff14;border:1px solid #ffffff1f;border-radius:999px;padding:5px 11px;font-size:11px;font-weight:600}.qcai2-hm.hl{color:#9ccbff;background:#2e9bff2e;border-color:#2e9bff59}.qcai2-hm-link{cursor:pointer;text-decoration:none;transition:background .12s,border-color .12s,color .12s}.qcai2-hm-link:hover{color:#9ccbff;background:#2e9bff2e;border-color:#2e9bff59;text-decoration:underline}.qcai2-hero-stats{grid-template-columns:repeat(5,1fr);gap:10px;margin-top:18px;display:grid}.qcai2-hs{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:13px;padding:12px 15px}.qcai2-hs .k{letter-spacing:.11em;text-transform:uppercase;color:#7d91a9;font-size:9px;font-weight:700}.qcai2-hs .v{color:#fff;flex-wrap:wrap;align-items:center;gap:8px;margin-top:5px;font-size:13.5px;font-weight:700;display:flex}.qcai2-hs .v .sub{color:#8fa3bc;font-size:11px;font-weight:500}.qcai2-hs-dash{color:#7d91a9}.qcai2-hs-sub{color:#8fa3bc;font-size:11px;font-weight:500}.qcai2-lvl-btn{appearance:none;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:inline-flex}.qcai2-lvl{font-family:var(--disp2);border-radius:7px;padding:2px 9px;font-size:11px;font-weight:800}.qcai2-lvl.bad{color:#3d0b08;background:#ff6b61}.qcai2-lvl.good{color:#062a1b;background:#31c48d}.qcai2-lvl.warn{color:#3d2a08;background:#f5c86e}.qcai2-hs .unv{letter-spacing:.05em;text-transform:uppercase;color:#f5c86e;background:#e8a02038;border-radius:6px;padding:3px 8px;font-size:9px;font-weight:700}.qcai2-behav{flex-wrap:nowrap;align-items:stretch;gap:14px;max-width:1340px;margin:0 auto;padding:16px 28px 14px;display:flex}.qcai2-behav-cards{flex-wrap:nowrap;flex:auto;gap:8px;min-width:0;display:flex}.qcai2-behav-win{flex-direction:column;flex:none;justify-content:flex-start;min-width:118px;padding-top:2px;display:flex}.qcai2-behav-win-eyebrow{letter-spacing:.6px;text-transform:uppercase;color:var(--ink4);font-size:9px;font-weight:800}.qcai2-behav-win-main{color:var(--ink);margin-top:2px;font-size:16px;font-weight:800;line-height:1.2}.qcai2-behav-win-sub{color:var(--ink3);margin-top:2px;font-size:10.5px;font-weight:600}.qcai2-behav-toggle{background:var(--paper);border:1px solid var(--line);border-radius:9px;gap:2px;width:max-content;margin-top:10px;padding:2px;display:inline-flex}.qcai2-behav-tgl{color:var(--ink3);cursor:pointer;white-space:nowrap;border-radius:7px;padding:4px 10px;font-size:10.5px;font-weight:700;transition:all .12s}.qcai2-behav-tgl.on{background:var(--blue-bg2);color:var(--blue-d2);box-shadow:inset 0 0 0 1px var(--blue-bd2)}.qcai2-behav-tgl:hover:not(.on){color:var(--ink)}.qcai2-bc-skel{vertical-align:middle;background-color:#94a3b838;border-radius:6px;display:inline-block;position:relative;overflow:hidden}.qcai2-bc-skel:after{content:"";background:linear-gradient(90deg,#fff0 0%,#fff9 50%,#fff0 100%);animation:1.5s ease-in-out infinite qcai2-bc-sweep;position:absolute;inset:0;transform:translate(-100%)}@keyframes qcai2-bc-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.qcai2-bc-skel:after{display:none}}.qcai2-range{margin-top:8px;position:relative}.qcai2-range-top{margin-top:0;margin-bottom:6px}.qcai2-range-top .qcai2-range-btn{letter-spacing:.4px;text-transform:uppercase;padding:3px 8px;font-size:9px;font-weight:800}.qcai2-range-btn{color:var(--ink3);background:var(--paper);border:1px solid var(--line);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:5px;padding:4px 9px;font-size:10.5px;font-weight:700;transition:all .12s;display:inline-flex}.qcai2-range-btn:hover{color:var(--ink);border-color:var(--ink5)}.qcai2-range-btn.on{background:var(--blue-bg2);color:var(--blue-d2);border-color:var(--blue-bd2)}.qcai2-range-menu{z-index:40;background:var(--paper);border:1px solid var(--line);border-radius:11px;min-width:172px;padding:5px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 28px #0f1b2d24}.qcai2-range-opt{text-align:left;width:100%;color:var(--ink2);cursor:pointer;border-radius:7px;padding:7px 10px;font-size:11.5px;font-weight:600;transition:background .1s;display:block}.qcai2-range-opt:hover{background:var(--bg2);color:var(--ink)}.qcai2-range-opt.sel{background:var(--blue-bg2);color:var(--blue-d2);font-weight:700}.qcai2-range-custom{border-top:1px solid var(--line2);flex-direction:column;gap:7px;margin-top:4px;padding:8px 8px 4px;display:flex}.qcai2-range-custom label{color:var(--ink3);text-transform:uppercase;letter-spacing:.4px;justify-content:space-between;align-items:center;gap:8px;font-size:10.5px;font-weight:700;display:flex}.qcai2-range-custom input{color:var(--ink);border:1px solid var(--line);background:var(--paper);border-radius:7px;padding:4px 7px;font-size:11.5px;font-weight:600}.qcai2-range-apply{color:#fff;background:var(--blue2);cursor:pointer;border-radius:7px;margin-top:2px;padding:6px;font-size:11.5px;font-weight:700;transition:opacity .12s}.qcai2-range-apply:hover:not(:disabled){opacity:.9}.qcai2-range-apply:disabled{opacity:.45;cursor:not-allowed}.qcai2-behav-empty{color:var(--ink4);align-items:center;padding:8px 0;font-size:12.5px;display:flex}.qcai2-bc{background:var(--paper);border:1px solid var(--line);border-radius:12px;flex-direction:column;flex:1 1 0;gap:3px;min-width:120px;padding:10px 12px;transition:border-color .12s,box-shadow .12s;display:flex}.qcai2-bc:hover{box-shadow:0 3px 12px -8px #0f172a33}.qcai2-bc-ic{border-radius:6px;flex:none;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.qcai2-bc-ic svg{width:13px;height:13px}.qcai2-bc-ic.amber{background:var(--amber-bg2);color:var(--amber-d2)}.qcai2-bc-ic.red{background:var(--red-bg2);color:var(--red-d2)}.qcai2-bc-ic.green{background:var(--green-bg2);color:var(--green-d2)}.qcai2-bc-ic.blue{background:var(--blue-bg2);color:var(--blue-d2)}.qcai2-bc-head{align-items:center;gap:7px;min-width:0;display:flex}.qcai2-bc-k{letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:800;overflow:hidden}.qcai2-bc-v{font-family:var(--disp2);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:17px;font-weight:800;line-height:1.1;overflow:hidden}.qcai2-bc-s{color:var(--ink4);white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:500;line-height:1.3;overflow:hidden}@media (max-width:1000px){.qcai2-hero-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:820px){.qcai2-behav{flex-direction:column;gap:10px;padding:14px 16px 12px}.qcai2-behav-win{min-width:0}.qcai2-behav-cards{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;margin:0 -16px;padding-bottom:4px;padding-left:16px;padding-right:16px;overflow-x:auto}.qcai2-behav-cards::-webkit-scrollbar{height:0}.qcai2-bc{scroll-snap-align:start;flex:none;min-width:118px}.gap-insights-dashboard .content-wrapper{padding-bottom:16px;padding-left:14px;padding-right:14px}.gap-insights-dashboard .content-wrapper>.p-4{padding:14px 0!important}.gap-insights-dashboard .px-4{padding-left:14px!important;padding-right:14px!important}}@media (max-width:640px){.qcai2-hero{border-radius:0 0 16px 16px;padding:52px 16px 18px}.qcai2-hero-actions{display:none}.qcai2-hero-top,.qcai2-who{gap:12px}.qcai2-avatar{border-radius:12px;width:42px;height:42px;font-size:15px}.qcai2-h1{font-size:18px}.qcai2-hero-stats{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:14px}.qcai2-hero-meta{gap:6px;margin-top:12px}.gap-insights-dashboard .content-wrapper{padding-top:12px;padding-left:12px;padding-right:12px}.gap-insights-dashboard .px-4{padding-left:12px!important;padding-right:12px!important}.gap-insights-dashboard .content-wrapper>.p-4{padding:12px 0!important}.gap-insights-dashboard .content-wrapper .flex.flex-col.gap-4{gap:12px!important}}@media (max-width:400px){.qcai2-hero-stats{grid-template-columns:1fr}}.gap-insights-dashboard .content-wrapper{background:#f1f4f8;padding-top:18px}.qcai2-chapter{border-color:#e9edf2!important;border-radius:16px!important}.qcai2-chapter:hover{box-shadow:0 6px 20px #0f1b2d14!important}.qcai2-chapter.qcai2-chapter-open{box-shadow:0 12px 36px #0f1b2d1f!important}.qcai2-chapter .qcai2-chead{border-bottom:0!important}.qcai2-chapter.qcai2-chapter-open .qcai2-chead{border-bottom:1px solid var(--line)!important}.qcai2-chapter .qcai2-chead h3{letter-spacing:-.015em;color:#0f1b2d;font-family:Sora,Inter,sans-serif;font-size:16.5px;font-weight:700}.qcai2-chapter-open .qcai2-chead+div{background:#f7f9fc}.qcai2-chapter [role=tablist]{border-radius:12px}.qcai2-rail-wrap{--ink:#0f1b2d;--ink2:#3a4a5e;--ink3:#66788c;--ink4:#93a2b3;--ink5:#c2cbd6;--line:#e4e9ef;--line2:#edf1f5;--paper:#fff;--green2:#22a45d;--green-d2:#1e8a4a;--green-bg2:#e4f6ec;--green-bd2:#c9e9d6;--red2:#e0453e;--red-d2:#b23a36;--red-bg2:#fbe9e7;--amber2:#e8a020;--amber-d2:#9a6a12;--amber-bg2:#fdf3e0;--blue-bg2:#eaf4ff;--blue-d2:#0a66c2;--purple2:#7c3aed;--purple-bg2:#f1ebfd;--slate-bg2:#eff2f5;font-family:Inter,sans-serif}.qcai2-tl-sum{flex-wrap:wrap;gap:9px;margin-bottom:16px;display:flex}.qcai2-ts{background:var(--paper);border:1px solid var(--line);color:var(--ink2);border-radius:999px;align-items:center;gap:8px;padding:7px 14px;font-size:12px;font-weight:600;display:inline-flex}.qcai2-ts .d{border-radius:50%;flex:none;width:8px;height:8px}.qcai2-ts b{color:var(--ink);font-family:Sora,Inter,sans-serif;font-weight:800}.qcai2-card{background:var(--paper);border:1px solid var(--line);border-radius:14px}.qcai2-card-h{letter-spacing:.12em;text-transform:uppercase;color:var(--ink4);padding:14px 22px 6px;font-size:10px;font-weight:700}.qcai2-rail-card{padding:6px 22px 18px}.qcai2-rail{border-left:2px solid var(--line);margin-left:52px;position:relative}.qcai2-evt{align-items:flex-start;gap:14px;padding:10px 0 10px 18px;display:flex;position:relative}.qcai2-evt+.qcai2-evt{border-top:1px dashed var(--line2)}.qcai2-evt .date{text-align:right;width:40px;color:var(--ink3);font-size:10.5px;font-weight:700;position:absolute;top:12px;left:-54px}.qcai2-evt .node{border:2.5px solid var(--paper);width:12px;height:12px;box-shadow:0 0 0 1.5px var(--line);border-radius:50%;position:absolute;top:14px;left:-7px}.qcai2-evt.present .node{background:var(--green2)}.qcai2-evt.absent .node{background:var(--red2)}.qcai2-evt.practice .node{background:var(--amber2)}.qcai2-evt.notenrolled .node{background:var(--purple2,#7c3aed);opacity:.55}.qcai2-evt.notenrolled{opacity:.72}.qcai2-evt .body{flex:1;min-width:0}.qcai2-evt .row1{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.qcai2-evt .etype{color:var(--ink);font-size:12.5px;font-weight:700}.qcai2-evt .echip{border-radius:999px;padding:2px 9px;font-size:10px;font-weight:700}.qcai2-evt .echip.teach{background:var(--blue-bg2);color:var(--blue-d2)}.qcai2-evt .echip.eval{background:var(--purple-bg2);color:var(--purple2)}.qcai2-evt .echip.interv{background:var(--green-bg2);color:var(--green-d2)}.qcai2-evt .echip.ps{background:var(--slate-bg2);color:var(--ink3)}.qcai2-evt .echip.prac{background:var(--amber-bg2);color:var(--amber-d2)}.qcai2-evt .emeta{color:var(--ink4);font-size:11px;font-weight:500}.qcai2-evt .emeta.miss{color:#d08680;font-weight:600}.qcai2-evt .eabs{color:var(--red-d2);font-size:10.5px;font-weight:700}.qcai2-evt .epres{color:var(--green-d2);font-size:10.5px;font-weight:700}.qcai2-evt .enotenr{color:var(--purple2,#7c3aed);font-size:10.5px;font-weight:700}.qcai2-evt .attended{color:var(--green-d2);background:var(--green-bg2);border:1px solid var(--green-bd2);border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:10.5px;font-weight:700;display:inline-flex}.qcai2-evt .overdue{color:var(--red-d2);background:var(--red-bg2);white-space:nowrap;border-radius:6px;padding:3px 9px;font-size:10px;font-weight:700}.qcai2-evt-link{cursor:pointer;border-radius:8px;transition:background .12s}.qcai2-evt-link:hover{background:#eaf4ff}.qcai2-evt-report{color:var(--blue-d2);background:#eaf4ff;border:1px solid #cfe4ff;border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;margin-left:auto;transition:background .12s,border-color .12s;display:inline-flex}.qcai2-evt-link:hover .qcai2-evt-report{background:#dbebff;border-color:#a9ceff}.qcai2-chapstats-inline{margin-top:9px}.qcai2-cschip{white-space:nowrap;background:#f7f9fc;border:1px solid #e4e9ef;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:11px;display:inline-flex}.qcai2-cschip-k{color:#66788c;font-weight:600;line-height:1}.qcai2-cschip-v{color:#0f1b2d;font-family:Sora,Inter,sans-serif;font-weight:800;line-height:1}.qcai2-cschip-v.bad{color:#b23a36}.qcai2-cschip-v.good{color:#1e8a4a}.qcai2-cschip-v.warn{color:#9a6a12}.qcai-skeleton-root{background:var(--bg-primary);flex-direction:column;min-height:100%;display:flex}.qcai-skeleton-line,.qcai-skeleton-block{vertical-align:middle;background-color:#94a3b833;border-radius:.375rem;display:inline-block;position:relative;overflow:hidden}.qcai-skeleton-block{border-radius:.5rem}.qcai-skeleton-line:after,.qcai-skeleton-block:after{content:"";will-change:transform;background:linear-gradient(90deg,#fff0 0%,#ffffff8c 50%,#fff0 100%);animation:1.6s ease-in-out infinite qcai-skeleton-sweep;position:absolute;inset:0;transform:translate(-100%)}.qcai-skeleton--dark{background-color:#ffffff17}.qcai-skeleton--dark:after{background:linear-gradient(90deg,#fff0 0%,#ffffff24 50%,#fff0 100%)}@keyframes qcai-skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.qcai-skeleton-hero{background:#0a0a0a;border-radius:0 0 22px 22px;padding:22px 28px 24px}.qcai-skeleton-hero-top{justify-content:space-between;align-items:center;gap:20px;display:flex}.qcai-skeleton-hero-chips{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.qcai-skeleton-hero-stats{grid-template-columns:repeat(5,1fr);gap:10px;margin-top:18px;display:grid}.qcai-skeleton-herotile{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:13px;padding:12px 15px}.qcai-skeleton-statsbar{border-bottom:1px solid var(--border);background:var(--bg-secondary,#f7f9fc);flex-wrap:wrap;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}.qcai-skeleton-statsbar-title{flex-direction:column;gap:.15rem;min-width:6rem;display:flex}.qcai-skeleton-statsbar-tiles{flex:1;grid-template-columns:repeat(4,minmax(6rem,1fr));gap:.6rem;min-width:0;display:grid}.qcai-skeleton-stat{border:1px solid var(--border);background:var(--bg-primary);border-radius:.5rem;flex-direction:column;min-width:0;padding:.6rem .75rem;display:flex}.qcai-skeleton-controls{border-bottom:1px solid var(--border);background:var(--bg-primary);justify-content:space-between;align-items:center;gap:1rem;padding:0 1.25rem;display:flex}.qcai-skeleton-tabs{flex:1;align-items:center;gap:1.25rem;min-width:0;padding:.85rem 0;display:flex;overflow:hidden}.qcai-skeleton-filters{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.qcai-skeleton-content{flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex}.qcai-skeleton-chapter{border:1px solid var(--border);background:var(--bg-primary);box-shadow:var(--shadow-sm);animation:.45s cubic-bezier(.22,.61,.36,1) both qcai-skeleton-rise;animation-delay:calc(var(--i,0) * 70ms);border-radius:.75rem;padding:.9rem 1rem}.qcai-skeleton-panelrow{border:1px solid var(--border);background:var(--bg-primary);animation:.4s cubic-bezier(.22,.61,.36,1) both qcai-skeleton-rise;animation-delay:calc(var(--i,0) * 60ms);border-radius:.5rem;padding:.55rem .75rem}@keyframes qcai-skeleton-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.qcai-skeleton-chapter,.qcai-skeleton-panelrow{animation:none}.qcai-skeleton-line:after,.qcai-skeleton-block:after{animation:none;display:none}}@media (max-width:900px){.qcai-skeleton-controls{flex-wrap:wrap}.qcai-skeleton-tabs{flex:1 0 100%;width:100%}.qcai-skeleton-filters{width:100%;padding-bottom:.5rem}}@media (max-width:640px){.qcai-skeleton-hero{padding:16px 14px 18px}.qcai-skeleton-statsbar,.qcai-skeleton-controls,.qcai-skeleton-content{padding-left:.875rem;padding-right:.875rem}.qcai-skeleton-statsbar-tiles,.qcai-skeleton-hero-stats{grid-template-columns:repeat(2,1fr)}}.dashboard-header-content{justify-content:space-between;align-items:flex-start;gap:20px;padding:0;display:flex}.header-left{flex:1}.header-main-info{flex-direction:column;gap:12px;display:flex}.dashboard-title{color:#1f2937;margin:0 0 8px;font-size:28px;font-weight:700}.student-info-header{align-items:center;gap:12px;padding:8px 0;display:flex}.student-avatar-header{justify-content:center;align-items:center;display:flex}.avatar-initials-header{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:16px;font-weight:600;display:flex}.student-details-header{flex:1}.student-name-header{color:#1f2937;margin-bottom:4px;font-size:18px;font-weight:600;line-height:1.2}.student-meta-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grade-badge{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;padding:3px 8px;font-size:12px;font-weight:600}.student-id-badge{color:#0d9488;background:#f0fdfa;border:1px solid #7dd3fc;border-radius:12px;padding:3px 8px;font-size:12px;font-weight:500}.batch-badge{color:#7c2d12;background:#fef7ed;border:1px solid #fed7aa;border-radius:12px;padding:3px 8px;font-size:12px;font-weight:500}.separator{color:#d1d5db;font-size:12px;font-weight:400}.dashboard-actions{flex-shrink:0;align-items:flex-end;gap:12px;display:flex}@media (max-width:1024px){.dashboard-header-content{flex-direction:column;align-items:stretch;gap:16px}.dashboard-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center}.student-meta-header{gap:6px}}@media (max-width:768px){.dashboard-header-content{padding:16px 20px}.dashboard-title{font-size:24px}.student-info-header{gap:10px}.avatar-initials-header{width:40px;height:40px;font-size:14px}.student-name-header{font-size:16px}.dashboard-actions{gap:8px}.filter-select,.exam-selector{min-width:120px}}@media (max-width:480px){.dashboard-actions{flex-direction:column;width:100%}.filter-select,.exam-selector,.btn{width:100%}.student-meta-header{flex-direction:column;align-items:flex-start;gap:4px}.separator{display:none}}.dashboard-subtitle{color:#6b7280;margin:0;font-size:14px;font-weight:500}.method-error-highlight{background:linear-gradient(135deg,#fef2f2 0%,#fecaca 100%);border:2px solid #dc2626;border-radius:12px;margin-bottom:20px;padding:16px;box-shadow:0 4px 12px #dc262626}.method-error-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.method-error-title{color:#7f1d1d;margin:0;font-size:18px;font-weight:700}.method-error-content{background:#fff;border:1px solid #fca5a5;border-radius:8px;padding:14px}.method-error-description{color:#991b1b;background:#fee2e2;border-radius:6px;margin-bottom:12px;padding:10px;font-size:15px}.method-errors-list{flex-direction:column;gap:12px;margin-top:12px;display:flex}.method-error-item{background:#fff5f5;border:1px solid #fca5a5;border-radius:8px;padding:12px}.method-error-step{color:#7f1d1d;align-items:center;gap:8px;margin-bottom:10px;font-weight:600;display:flex}.step-badge{color:#fff;background:#dc2626;border-radius:4px;padding:2px 8px;font-size:12px;font-weight:600}.step-name{color:#374151;font-size:14px}.method-comparison{flex-direction:column;gap:8px;margin-left:12px;display:flex}.expected-method,.student-method,.mismatch-reason{border-radius:4px;flex-direction:column;gap:4px;padding:8px;display:flex}.expected-method{background:#f0fdf4;border-left:3px solid #10b981}.student-method{background:#fef2f2;border-left:3px solid #ef4444}.mismatch-reason{background:#fefce8;border-left:3px solid #f59e0b}.method-label,.reason-label{text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.expected-method .method-label{color:#059669}.student-method .method-label{color:#dc2626}.reason-label{color:#d97706}.method-text,.reason-text{color:#1f2937;font-size:13px;line-height:1.4}.method-issue-sentence{color:#374151;background:#fff5f5;border:1px solid #fca5a5;border-radius:6px;margin-top:12px;padding:10px;font-size:14px;line-height:1.4}.method-issue-sentence strong{color:#dc2626}.step-card-compact.method-error-step{background:#fff5f5;border:2px solid #fca5a5}.step-method-error-detail{background:#fee2e2;border-left:3px solid #dc2626;border-radius:6px;margin-bottom:8px;padding:10px}.method-error-inline{flex-direction:column;gap:4px;display:flex}.method-label-inline{color:#991b1b;text-transform:uppercase;font-size:11px;font-weight:600}.method-reason-inline{color:#374151;font-size:12px;line-height:1.4}.method-error-summary{background:#fee2e2;border-radius:6px;align-items:center;gap:8px;margin-bottom:8px;padding:8px;display:flex}.presentation-button.method-error{background:#dc2626}@media (max-width:768px){.method-error-highlight{padding:12px}.method-error-content{padding:10px}.method-comparison{margin-left:0}.expected-method,.student-method,.mismatch-reason{padding:6px;font-size:12px}}.chapter-card.has-method-errors:before{content:"⚠️";color:#fff;background:#dc2626;border-radius:12px;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;display:flex;position:absolute;top:8px;right:8px}.method-error-badge{color:#fff;background:#dc2626;border-radius:10px;margin-left:4px;padding:2px 6px;font-size:10px;font-weight:600}.qc-detail-card{background:#fff;border-radius:12px;margin-bottom:16px;padding:20px;box-shadow:0 2px 8px #0000001a}.qc-primary-gap-highlight{background:linear-gradient(135deg,#fef3c7 0%,#fde047 100%);border:2px solid #f59e0b;border-radius:12px;margin-bottom:20px;padding:16px;box-shadow:0 4px 12px #f59e0b33}.primary-gap-header{margin-bottom:12px}.primary-gap-title{color:#92400e;margin:0;font-size:18px;font-weight:700}.primary-gap-content{background:#fff;border:1px solid #fbbf24;border-radius:8px;padding:14px}.gap-identifier{align-items:center;gap:12px;margin-bottom:8px;display:flex}.gap-id{color:#fff;background:#f59e0b;border-radius:6px;padding:4px 8px;font-size:13px;font-weight:600}.gap-score{color:#92400e;background:#fbbf24;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500}.gap-description{color:#1f2937;font-size:14px;font-weight:500;line-height:1.5}.issue-sentence{color:#374151;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-top:8px;padding:10px;font-size:14px;line-height:1.4}.issue-sentence strong{color:#dc2626}.presentation-link-section{justify-content:center;margin:16px 0;display:flex}.presentation-button{font-weight:500}.questions-two-panel-section{background:#f9fafb;border-radius:12px;margin:20px 0;padding:20px}.section-title{color:#1f2937;margin:0 0 16px;font-size:16px;font-weight:600}.two-panel-container{grid-template-columns:240px 1fr;gap:20px;min-height:400px;display:grid}.questions-panel{background:#fff;border:1px solid #e5e7eb;border-radius:8px;max-height:500px;padding:12px;overflow-y:auto}.questions-list{flex-direction:column;gap:8px;display:flex}.question-card{cursor:pointer;border:1px solid #e5e7eb;transition:all .2s}.question-card:hover{border-color:#3b82f6;box-shadow:0 2px 4px #3b82f61a}.question-card.selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626}.question-card-body{padding:8px 10px}.question-header-minimal{flex-direction:column;gap:4px;display:flex}.question-row-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.question-number{color:#1f2937;flex-shrink:0;font-size:13px;font-weight:600}.question-row-bottom{align-items:center;display:flex}.class-info{color:#6b7280;margin-left:2px;font-size:11px}.question-view-btn-minimal{flex-shrink:0;min-width:auto;height:24px;padding:0 8px;font-size:10px}.steps-panel{background:#fff;border:1px solid #e5e7eb;border-radius:8px;max-height:500px;padding:16px;overflow-y:auto}.steps-analysis-content{height:100%}.steps-header-compact{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:8px;display:flex}.steps-title-compact{color:#1f2937;margin:0;font-size:14px;font-weight:600}.steps-count{color:#6b7280;background:#f3f4f6;border-radius:4px;padding:2px 8px;font-size:12px}.steps-list-compact{flex-direction:column;gap:12px;display:flex}.step-card-compact{background:#fafafa;border:1px solid #e5e7eb}.step-header-compact{background:#fff;border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.step-info-compact{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.step-number-compact{color:#fff;background:#3b82f6;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:600}.step-name-compact{color:#374151;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;line-height:1.3;overflow:hidden}.step-badges{flex-shrink:0;align-items:center;gap:4px;display:flex}.step-body-compact{background:#fff;padding:10px 12px}.ai-rationale-compact{background:#fefce8;border-left:3px solid #eab308;border-radius:6px;margin-bottom:8px;padding:8px}.rationale-header{color:#a16207;margin-bottom:4px;font-size:10px;font-weight:600}.rationale-content{color:#374151;font-size:11px;line-height:1.4}.analysis-row{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.issue-analysis-compact,.micro-gap-compact{background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;padding:6px 8px}.issue-analysis-compact{border-left:3px solid #f59e0b}.micro-gap-compact{border-left:3px solid #10b981}.analysis-label{color:#374151;align-items:center;gap:4px;margin-bottom:2px;font-size:10px;font-weight:600;display:flex}.primary-dot{color:#dc2626;font-size:8px}.analysis-detail{color:#1f2937;margin-bottom:2px;font-size:11px;font-weight:500}.analysis-detail-small{color:#6b7280;font-size:10px;line-height:1.3}.master-skills-compact{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.skills-label{color:#6b7280;font-size:10px;font-weight:500}.skills-chips{flex-wrap:wrap;gap:4px;display:flex}.more-skills{color:#6b7280;font-size:10px;font-style:italic}.no-steps-message{color:#6b7280;text-align:center;justify-content:center;align-items:center;height:200px;font-style:italic;display:flex}.teaching-focus-section{margin:20px 0}.teaching-focus-card{margin-bottom:12px}.teaching-focus-item{margin-bottom:8px;font-size:13px;line-height:1.4}.teaching-focus-item strong{color:#4f46e5}.qc-summary-compact{margin:16px 0}.summary-title{color:#1f2937;margin:0;font-size:14px;font-weight:600}.summary-grid{flex-direction:column;gap:8px;display:flex}.summary-item{color:#374151;font-size:12px;line-height:1.4}.summary-item strong{color:#1f2937}.analysis-metadata-compact{color:#6b7280;background:#f9fafb;border-radius:6px;flex-wrap:wrap;gap:16px;margin-top:16px;padding:8px 12px;font-size:11px;display:flex}.qc-no-insights-compact{text-align:center;color:#6b7280;background:#f9fafb;border-radius:8px;padding:40px;font-style:italic}@media (max-width:1024px){.two-panel-container{grid-template-columns:200px 1fr;gap:16px}}@media (max-width:768px){.two-panel-container{grid-template-columns:1fr;gap:12px}.questions-panel,.steps-panel{max-height:300px}.step-header-compact{flex-direction:column;align-items:flex-start;gap:8px}.step-badges{justify-content:flex-start;align-self:stretch}.analysis-row{grid-template-columns:1fr}}@media (max-width:480px){.qc-detail-card,.questions-two-panel-section{padding:16px}.question-header-compact{flex-direction:column;align-items:flex-start;gap:6px}}.srh-root{--srh-bg:#f1f4f8;--srh-card:#fff;--srh-ink:#0f172a;--srh-ink-soft:#475569;--srh-ink-faint:#94a3b8;--srh-line:#e2e8f0;--srh-accent:#4f46e5;--srh-accent-soft:#eef2ff;background:var(--srh-bg);min-height:100vh;color:var(--srh-ink);flex-direction:column;padding:14px 16px 16px;font-family:Inter,system-ui,-apple-system,sans-serif;display:flex}.srh-sidebar{flex-direction:column;align-self:start;gap:14px;display:flex;position:sticky;top:14px}.srh-hero{color:#fff;background:#0a0a0a;border-radius:14px;padding:14px 16px;box-shadow:0 8px 24px -14px #0009}.srh-hero-top{align-items:center;gap:12px;min-width:0;display:flex}.srh-avatar{letter-spacing:.5px;color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;flex:none;place-items:center;width:44px;height:44px;font-family:Sora,Inter,sans-serif;font-size:16px;font-weight:700;display:grid;box-shadow:0 5px 14px -6px #6366f1b3}.srh-eyebrow{letter-spacing:1.3px;text-transform:uppercase;color:#a5b4fc;font-size:9.5px;font-weight:700}.srh-hero-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;margin:1px 0 0;font-family:Sora,Inter,sans-serif;font-size:17px;font-weight:700;line-height:1.15;overflow:hidden}.srh-hero-meta{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.srh-chip{color:#e2e8f0;background:#ffffff1a;border:1px solid #ffffff24;border-radius:999px;padding:2px 9px;font-size:10.5px;font-weight:600}.srh-chip-batch{color:#c7d2fe;background:#818cf82e;border-color:#818cf859}.srh-chip-ay{color:#94a3b8;background:#ffffff0f}.srh-chip-school{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.srh-body{flex:1;grid-template-columns:272px 1fr;gap:16px;min-height:0;display:grid}@media (max-width:900px){.srh-body{grid-template-columns:1fr}.srh-sidebar{position:static}}.srh-rail{flex-direction:column;gap:14px;display:flex}.srh-rail-group{flex-direction:column;gap:6px;display:flex}.srh-rail-heading{letter-spacing:1.2px;text-transform:uppercase;color:var(--srh-ink-faint);align-items:center;gap:7px;padding:0 6px 2px;font-size:10.5px;font-weight:700;display:flex}.srh-rail-heading:before{content:"";background:currentColor;border-radius:999px;width:7px;height:7px}.srh-rail-heading-math{color:#4f46e5}.srh-rail-heading-science{color:#0d9488}@media (max-width:900px){.srh-rail{flex-direction:row;gap:10px;padding-bottom:4px;position:static;overflow-x:auto}.srh-rail-group{flex-direction:row;flex:none;align-items:center;gap:6px}.srh-rail-heading{writing-mode:vertical-rl;padding:0 4px;transform:rotate(180deg)}.srh-rail-heading:before{display:none}}.srh-rail-item{text-align:left;background:var(--srh-card);border:1px solid var(--srh-line);cursor:pointer;border-radius:13px;align-items:flex-start;gap:11px;padding:12px 14px;transition:all .15s;display:flex}.srh-rail-item:hover:not(.empty){border-color:#c7d2fe;transform:translateY(-1px)}.srh-rail-item.empty{cursor:not-allowed;opacity:.5;background:#f8fafc}.srh-rail-item.empty .srh-rail-icon{color:var(--srh-ink-faint);background:#eef1f5}.srh-rail-count{min-width:20px;height:20px;color:var(--srh-accent);background:#eef2ff;border-radius:999px;flex:none;justify-content:center;align-self:center;align-items:center;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.srh-rail-item.active .srh-rail-count{background:#fff}.srh-rail-count-empty{color:var(--srh-ink-faint);background:#eef1f5}.srh-rail-item.active{background:var(--srh-accent-soft);border-color:#c7d2fe;box-shadow:0 4px 14px -8px #4f46e580}.srh-rail-icon{width:30px;height:30px;color:var(--srh-ink-soft);background:#f1f5f9;border-radius:9px;flex:none;place-items:center;display:grid}.srh-rail-item.active .srh-rail-icon{color:var(--srh-accent);background:#fff}.srh-rail-text{flex-direction:column;min-width:0;display:flex}.srh-rail-label{color:var(--srh-ink);font-size:13px;font-weight:600;line-height:1.3}.srh-rail-item.active .srh-rail-label{color:var(--srh-accent)}.srh-rail-blurb{color:var(--srh-ink-faint);margin-top:1px;font-size:11px;line-height:1.35}@media (max-width:900px){.srh-rail-blurb{display:none}.srh-rail-item{white-space:nowrap}}.srh-viewer{background:var(--srh-card);border:1px solid var(--srh-line);border-radius:16px;flex-direction:column;min-width:0;min-height:0;padding:14px 16px 16px;display:flex;box-shadow:0 2px 12px -8px #0f172a26}.srh-viewer-head{border-bottom:1px solid var(--srh-line);justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;padding-bottom:16px;display:flex}.srh-subject-eyebrow{letter-spacing:1px;text-transform:uppercase;border-radius:6px;margin-bottom:6px;padding:2px 8px;font-size:10.5px;font-weight:700;display:inline-block}.srh-subject-eyebrow.math{color:#4f46e5;background:#eef2ff}.srh-subject-eyebrow.sci{color:#0d9488;background:#ccfbf1}.srh-viewer-title{color:var(--srh-ink);font-family:Sora,Inter,sans-serif;font-size:18px;font-weight:700}.srh-viewer-blurb{color:var(--srh-ink-faint);margin-top:2px;font-size:12.5px}.srh-viewer-body{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.srh-viewer-body>div{flex-direction:column;flex:1;min-height:0;display:flex}.srh-viewer-body>div>:last-child{flex:1;min-height:0}.srh-viewer-body iframe{min-height:60vh;height:100%!important}.srh-viewer-body .flex.flex-col.items-center.justify-center{justify-content:flex-start;padding-top:48px}.srh-empty{text-align:center;color:var(--srh-ink-faint);padding:60px 0;font-size:14px}.srh-skel{background:linear-gradient(90deg,#ffffff1f 25%,#ffffff38 37%,#ffffff1f 63%) 0 0/400% 100%;border-radius:6px;animation:1.4s infinite srh-shimmer}@keyframes srh-shimmer{0%{background-position:100%}to{background-position:0}}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{content:"";border:3px solid #ccc;border-width:3px 3px 0 0;width:9px;height:9px;display:block;position:absolute;top:6px}.react-datepicker-wrapper{border:0;padding:0;display:inline-block}.react-datepicker{color:#000;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:initial;background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{margin:0 15px;display:inline-block}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{color:#000;margin-top:0;font-size:.944rem;font-weight:700}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{text-align:center;cursor:pointer;z-index:1;text-indent:-999em;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex;position:absolute;top:2px;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{margin-left:auto;margin-right:auto;display:block;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover :before{border-color:#a6a6a6}.react-datepicker__navigation-icon{width:0;font-size:20px;position:relative;top:-1px}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{text-align:center;margin:.4rem}.react-datepicker__year-wrapper{flex-wrap:wrap;max-width:180px;display:flex}.react-datepicker__year .react-datepicker__year-text{width:4rem;margin:2px;display:inline-block}.react-datepicker__month{text-align:center;margin:.4rem}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{width:4rem;margin:2px;display:inline-block}.react-datepicker__input-time-container{clear:both;float:left;text-align:left;width:100%;margin:5px 0 10px 15px}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{margin-left:10px;display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;top:0;right:-87px}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{text-align:center;border-bottom-right-radius:.3rem;width:85px;margin:0 auto;overflow-x:hidden}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:content-box;width:100%;height:calc(195px + .85rem);margin:0;padding-left:0;padding-right:0;list-style:none;overflow-y:scroll}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{white-space:nowrap;height:30px;padding:5px 10px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{color:#fff;background-color:#216ba5;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:#0000}.react-datepicker__week-number{color:#ccc;text-align:center;width:1.7rem;margin:.166rem;line-height:1.7rem;display:inline-block}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;text-align:center;width:1.7rem;margin:.166rem;line-height:1.7rem;display:inline-block}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{color:#fff;background-color:#3dcc4a;border-radius:.3rem}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{color:#fff;background-color:#ff6803;border-radius:.3rem;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{color:#000;background-color:#bad9f1;border-radius:.3rem}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){color:#000;background-color:#f0f0f0}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:70%;left:50%;transform:translate(-50%)}.react-datepicker__input-container{width:100%;display:inline-block;position:relative}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:content-box;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{top:0;right:-16px;transform:rotate(135deg)}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{z-index:1;text-align:center;background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;width:50%;position:absolute;top:30px;left:25%}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{width:100%;margin-left:auto;margin-right:auto;line-height:20px;display:block}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;user-select:none;border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;vertical-align:middle;background-color:#0000;border:0;outline:0;height:100%;padding:0 6px 0 0;display:table-cell;position:absolute;top:0;right:0}.react-datepicker__close-icon:after{cursor:pointer;color:#fff;text-align:center;vertical-align:middle;content:"×";background-color:#216ba5;border-radius:50%;width:16px;height:16px;padding:2px;font-size:12px;line-height:1;display:table-cell}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{cursor:pointer;text-align:center;clear:left;background:#f0f0f0;border-top:1px solid #aeaeae;padding:5px 0;font-weight:700}.react-datepicker__portal{z-index:2147483647;background-color:#000c;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width:400px),(max-height:550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem}.react-datepicker__aria-live{clip-path:circle(0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker__calendar-icon{vertical-align:-.125em;width:1em;height:1em}
