.tr-session-banner{position:fixed;top:max(var(--site-nav-height,52px),env(safe-area-inset-top,0px));left:50%;transform:translateX(-50%);z-index:1050;display:flex;align-items:center;gap:.75rem;padding:.4rem .85rem;background:linear-gradient(135deg,color-mix(in srgb,#16a34a 92%,transparent),color-mix(in srgb,#15803d 92%,transparent));color:#fff;border-radius:0 0 .65rem .65rem;box-shadow:0 6px 20px rgba(22,163,74,.4);font-size:.82rem;font-weight:500;font-family:var(--font-noto,system-ui,sans-serif);pointer-events:auto}@media print{.tr-session-banner{display:none!important}}.tr-banner-dot{width:.55rem;height:.55rem;border-radius:50%;background:#fff}.tr-banner-label{font-weight:700;letter-spacing:.04em}.tr-banner-name{font-weight:600;opacity:.95}.tr-banner-stat,.tr-banner-time{font-variant-numeric:tabular-nums;font-size:.78rem;opacity:.9;padding:0 .4rem;border-left:1px solid rgba(255,255,255,.3)}.tr-banner-remaining{font-weight:600}.tr-banner-low{color:#fef08a}.tr-banner-btn{font-family:inherit;font-size:.78rem;font-weight:700;padding:.32rem .72rem;border-radius:100px;border:1.5px solid rgba(255,255,255,.45);background:rgba(255,255,255,.1);color:#fff;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .12s ease;min-height:28px;letter-spacing:.02em}.tr-banner-btn:hover:not(:disabled){background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.7)}.tr-banner-btn:active:not(:disabled){transform:scale(.96)}.tr-banner-btn:disabled{opacity:.5;cursor:not-allowed}.tr-banner-end{background:rgba(220,38,38,.85);border-color:rgba(220,38,38,.95)}.tr-banner-end:hover:not(:disabled){background:rgba(220,38,38,1)}.tr-banner-close{margin-left:.25rem;width:1.55rem;height:1.55rem;padding:0;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-size:1.05rem;font-weight:600;line-height:1;color:rgba(255,255,255,.75);background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.25);border-radius:100px;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease}.tr-banner-close:hover{background:rgba(255,255,255,.2);color:#fff;border-color:rgba(255,255,255,.6)}.tr-banner-close:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:2px}@media (max-width:640px){.tr-session-banner{gap:.45rem;padding:.32rem .6rem;font-size:.74rem}.tr-banner-name,.tr-banner-stat{display:none}}.iq-student-session-banner{position:fixed;top:max(var(--site-nav-height,52px),env(safe-area-inset-top,0px));left:50%;transform:translateX(-50%);z-index:1050;display:flex;align-items:center;gap:.55rem;padding:.38rem .85rem;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-fire) 95%,transparent),color-mix(in srgb,#b8480e 95%,transparent));color:#fff;border-radius:0 0 .65rem .65rem;box-shadow:0 6px 20px color-mix(in srgb,var(--accent-fire) 35%,transparent);font-size:.82rem;font-weight:500;font-family:var(--font-noto,system-ui,sans-serif);pointer-events:auto}@media print{.iq-student-session-banner{display:none!important}}.iq-student-session-icon{width:.95rem;height:.95rem}.iq-student-session-label{font-weight:700;letter-spacing:.04em}.iq-student-session-name{font-weight:600;opacity:.95}.iq-student-session-hint{font-size:.74rem;opacity:.9;padding-left:.5rem;border-left:1px solid rgba(255,255,255,.3)}@media (max-width:640px){.iq-student-session-banner{gap:.4rem;padding:.32rem .65rem;font-size:.74rem}.iq-student-session-name{display:none}.iq-student-session-hint{font-size:.7rem}}:root{--tr-panel-width:420px}.tr-panel{position:fixed;bottom:24px;right:24px;width:var(--tr-panel-width);min-width:300px;max-width:720px;max-height:70vh;z-index:10000;display:flex;flex-direction:column;background:rgba(255,253,250,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(168,162,158,.25);border-radius:16px;box-shadow:0 0 .5px rgba(0,0,0,.03),0 2px 4px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.1),0 24px 48px rgba(0,0,0,.06);font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif;font-size:13px;color:#1c1917;animation:trPanelEnter .35s cubic-bezier(.34,1.56,.64,1);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease}.tr-panel.unfocused{transform:translateX(calc(100% - 32px));opacity:.55;cursor:pointer}.tr-panel-resize-handle{position:absolute;top:0;bottom:0;left:-3px;width:6px;cursor:ew-resize;background:transparent;border-radius:3px;transition:background .15s ease;z-index:1}.tr-panel-resize-handle:active,.tr-panel-resize-handle:hover{background:rgba(13,148,136,.35)}[data-theme=dark] .tr-panel-resize-handle:active,[data-theme=dark] .tr-panel-resize-handle:hover,html.dark .tr-panel-resize-handle:active,html.dark .tr-panel-resize-handle:hover{background:rgba(20,184,166,.45)}@media (min-width:900px){.main-content{transition:padding-right .3s cubic-bezier(.4,0,.2,1)}.main-content.tr-panel-open{padding-right:calc(var(--tr-panel-width) + 48px)}}@keyframes trPanelEnter{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}[data-theme=dark] .tr-panel,html.dark .tr-panel{background:rgba(28,25,23,.82);color:#f5f5f4;border-color:rgba(255,255,255,.08)}.tr-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 12px;border-bottom:1px solid rgba(168,162,158,.15)}[data-theme=dark] .tr-panel-header,html.dark .tr-panel-header{border-bottom-color:rgba(255,255,255,.08)}.tr-panel-title{font-size:13px;font-weight:700;letter-spacing:.04em;color:#44403c}[data-theme=dark] .tr-panel-title,html.dark .tr-panel-title{color:#e7e5e4}.tr-panel-close{width:24px;height:24px;border:none;background:none;color:#a8a29e;cursor:pointer;border-radius:6px;font-size:14px;line-height:1;transition:color .15s,background .15s;display:flex;align-items:center;justify-content:center}.tr-panel-close:hover{color:#44403c;background:rgba(120,113,108,.1)}[data-theme=dark] .tr-panel-close:hover,html.dark .tr-panel-close:hover{color:#f5f5f4;background:rgba(255,255,255,.08)}.tr-panel-body{flex:1;overflow-y:auto;padding:12px 14px 14px;scrollbar-width:thin;scrollbar-color:rgba(120,113,108,.2) transparent}.tr-panel-body::-webkit-scrollbar{width:6px}.tr-panel-body::-webkit-scrollbar-thumb{background:rgba(120,113,108,.2);border-radius:4px}.tr-panel-section{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid rgba(168,162,158,.1)}.tr-panel-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}[data-theme=dark] .tr-panel-section,html.dark .tr-panel-section{border-bottom-color:rgba(255,255,255,.06)}.tr-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:8px 14px;border:1px solid rgba(168,162,158,.25);border-radius:8px;background:rgba(250,249,246,.6);color:#57534e;font:700 12px -apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.tr-btn:hover:not(:disabled){background:rgba(13,148,136,.06);border-color:rgba(13,148,136,.3);color:#0d9488}.tr-btn:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .tr-btn,html.dark .tr-btn{background:rgba(41,37,36,.6);border-color:rgba(255,255,255,.1);color:#d6d3d1}[data-theme=dark] .tr-btn:hover:not(:disabled),html.dark .tr-btn:hover:not(:disabled){background:rgba(20,184,166,.1);border-color:rgba(20,184,166,.3);color:#14b8a6}.tr-btn.tr-btn-primary{padding:11px 16px;border:none;background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;font-size:13px;font-weight:700;border-radius:10px;box-shadow:0 1px 2px rgba(13,148,136,.2),0 4px 12px rgba(13,148,136,.15)}.tr-btn.tr-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#14b8a6,#0d9488);border:none;color:#fff;transform:translateY(-1px);box-shadow:0 2px 4px rgba(13,148,136,.25),0 6px 16px rgba(13,148,136,.2)}.tr-btn.tr-btn-primary:active:not(:disabled){transform:scale(.98)}.tr-btn.tr-btn-danger{background:linear-gradient(135deg,#b45309,#a3440c);border:none;color:#fff;box-shadow:0 1px 2px rgba(180,83,9,.2),0 4px 12px rgba(180,83,9,.15)}.tr-btn.tr-btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#d97706,#b45309);border:none;color:#fff;box-shadow:0 2px 4px rgba(180,83,9,.3),0 6px 16px rgba(180,83,9,.2)}.tr-btn+.tr-btn{margin-top:6px}.tr-session-active{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:8px 12px;background:rgba(13,148,136,.06);border-radius:8px;border:1px solid rgba(13,148,136,.12)}[data-theme=dark] .tr-session-active,html.dark .tr-session-active{background:rgba(20,184,166,.08);border-color:rgba(20,184,166,.15)}.tr-session-status{font-size:12px;font-weight:700;color:#0d9488;display:inline-flex;align-items:center;gap:6px}.tr-session-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#22c55e}[data-theme=dark] .tr-session-status,html.dark .tr-session-status{color:#14b8a6}.tr-presence{font-size:11px;font-weight:600;color:#78716c}[data-theme=dark] .tr-presence,html.dark .tr-presence{color:#a8a29e}.tr-session-input{display:block;width:100%;padding:9px 12px;margin-bottom:8px;border:1px solid rgba(168,162,158,.3);border-radius:8px;background:rgba(255,255,255,.8);color:#1c1917;font:500 13px -apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.tr-session-input:focus{outline:none;border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.1)}.tr-session-input::placeholder{color:#a8a29e}[data-theme=dark] .tr-session-input,html.dark .tr-session-input{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);color:#f5f5f4}[data-theme=dark] .tr-session-input::placeholder,html.dark .tr-session-input::placeholder{color:#78716c}[data-theme=dark] .tr-session-input:focus,html.dark .tr-session-input:focus{border-color:#14b8a6;box-shadow:0 0 0 3px rgba(20,184,166,.15)}.tr-section-group{margin-bottom:6px}.tr-section-header-row{display:flex;align-items:center;gap:6px;padding:4px 0}.tr-section-toggle{width:22px;height:22px;flex-shrink:0;border:none;background:none;color:#a8a29e;font-size:10px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transform:rotate(-90deg);transition:transform .25s ease,color .15s,background .15s}.tr-section-toggle.open{transform:rotate(0deg)}.tr-section-toggle:hover{color:#57534e;background:rgba(120,113,108,.08)}[data-theme=dark] .tr-section-toggle:hover,html.dark .tr-section-toggle:hover{color:#e7e5e4;background:rgba(255,255,255,.06)}.tr-section-title{padding:4px 10px;background:rgba(120,113,108,.08);border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.02em;color:#57534e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:290px;flex:1}[data-theme=dark] .tr-section-title,html.dark .tr-section-title{background:rgba(255,255,255,.06);color:#d6d3d1}.tr-q-container{max-height:0;overflow:hidden;transition:max-height .25s ease;margin-left:10px;padding-left:12px;border-left:1px solid rgba(168,162,158,.15)}.tr-q-container.open{max-height:3000px;transition:max-height .4s ease}[data-theme=dark] .tr-q-container,html.dark .tr-q-container{border-left-color:rgba(255,255,255,.08)}.tr-q-row{display:flex;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid rgba(168,162,158,.08)}.tr-q-row:last-child{border-bottom:none}[data-theme=dark] .tr-q-row,html.dark .tr-q-row{border-bottom-color:rgba(255,255,255,.06)}.tr-btn-q{width:42px;height:28px;flex-shrink:0;border:1px solid rgba(168,162,158,.25);border-radius:6px;background:rgba(250,249,246,.6);color:#57534e;font:700 10px -apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;display:flex;align-items:center;justify-content:center}.tr-btn-q:hover:not(.revealed){background:rgba(13,148,136,.06);border-color:rgba(13,148,136,.3);color:#0d9488}[data-theme=dark] .tr-btn-q,html.dark .tr-btn-q{background:rgba(41,37,36,.6);border-color:rgba(255,255,255,.1);color:#d6d3d1}[data-theme=dark] .tr-btn-q:hover:not(.revealed),html.dark .tr-btn-q:hover:not(.revealed){background:rgba(20,184,166,.1);border-color:rgba(20,184,166,.3);color:#14b8a6}.tr-btn-q.revealed{background:linear-gradient(135deg,#0d9488,#0f766e);border:none;color:#fff;box-shadow:0 0 12px rgba(13,148,136,.2)}.tr-btn-q.revealed:hover{background:linear-gradient(135deg,#14b8a6,#0d9488);box-shadow:0 0 16px rgba(13,148,136,.3)}.tr-q-preview{flex:1;font-size:11px;color:#78716c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}[data-theme=dark] .tr-q-preview,html.dark .tr-q-preview{color:#a8a29e}.tr-answer-toggle{width:22px;height:22px;flex-shrink:0;border:none;background:none;color:#a8a29e;font-size:8px;cursor:pointer;border-radius:4px;transition:transform .2s ease,color .15s,background .15s;display:flex;align-items:center;justify-content:center}.tr-answer-toggle.open{transform:rotate(180deg);color:#0d9488}.tr-answer-toggle:hover{color:#57534e;background:rgba(120,113,108,.08)}[data-theme=dark] .tr-answer-toggle:hover,html.dark .tr-answer-toggle:hover{color:#e7e5e4;background:rgba(255,255,255,.06)}.tr-q-answers{max-height:0;overflow:hidden;transition:max-height .25s ease,padding .25s ease;padding:0 4px}.tr-q-answers.open{max-height:200px;padding:6px 4px 10px 52px}.tr-response-feed{display:flex;flex-wrap:wrap;gap:4px}.tr-response-chip{padding:3px 9px;background:rgba(13,148,136,.08);border:1px solid rgba(13,148,136,.18);border-radius:12px;font:600 11px SF Mono,Menlo,Monaco,monospace;color:#0d9488}[data-theme=dark] .tr-response-chip,html.dark .tr-response-chip{background:rgba(20,184,166,.1);border-color:rgba(20,184,166,.2);color:#14b8a6}.tr-response-empty{font-size:11px;color:#a8a29e;font-style:italic}.tr-override-list{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:8px}.tr-override-row{display:flex;flex-direction:column;gap:6px;padding:8px 10px;background:rgba(255,255,255,.6);border:1px solid rgba(0,0,0,.06);border-radius:8px}.tr-override-head{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;font:500 12px/1.4 -apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif}.tr-override-device{font-family:ui-monospace,SFMono-Regular,monospace;font-size:10.5px;letter-spacing:.02em;padding:1px 6px;background:rgba(124,58,237,.1);color:#6d28d9;border-radius:4px}.tr-override-answer{flex:1;min-width:0;color:var(--text,#1c1917);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tr-override-ai{font-size:11px;color:#78716c;padding:1px 6px;background:rgba(0,0,0,.04);border-radius:4px}.tr-override-current{font-size:11px;font-weight:600;color:#6d28d9}.tr-override-controls{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.tr-override-btn{flex:0 0 auto;min-width:32px;padding:4px 8px;border:1px solid rgba(0,0,0,.1);border-radius:6px;background:#fff;font:700 13px/1 -apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif;cursor:pointer}.tr-override-btn:disabled{opacity:.5;cursor:not-allowed}.tr-override-btn--perfect{color:#15803d}.tr-override-btn--good{color:#2563eb}.tr-override-btn--partial{color:#b45309}.tr-override-btn--wrong{color:#b91c1c}.tr-override-btn--clear{color:#57534e;border-color:rgba(0,0,0,.2)}.tr-override-btn.is-current{background:rgba(124,58,237,.14);border-color:rgba(124,58,237,.4)}.tr-override-reason-toggle{margin-left:auto;padding:2px 8px;border:1px dashed rgba(0,0,0,.15);border-radius:6px;background:transparent;font:500 11px/1.2 -apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif;color:#78716c;cursor:pointer}.tr-override-reason-toggle.is-open{border-style:solid;color:#6d28d9;border-color:rgba(124,58,237,.4)}.tr-override-reason-input{width:100%;padding:6px 8px;border:1px solid rgba(124,58,237,.3);border-radius:6px;background:rgba(124,58,237,.04);font:400 12.5px/1.5 -apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif;resize:vertical}.tr-override-reason-input:focus{outline:2px solid rgba(124,58,237,.4);outline-offset:-1px}[data-theme=dark] .tr-override-row,html.dark .tr-override-row{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08)}[data-theme=dark] .tr-override-answer,html.dark .tr-override-answer{color:var(--text,#f5f3f0)}[data-theme=dark] .tr-override-device,html.dark .tr-override-device{background:rgba(167,139,250,.15);color:#c4b5fd}[data-theme=dark] .tr-override-ai,html.dark .tr-override-ai{background:rgba(255,255,255,.05);color:#a8a29e}[data-theme=dark] .tr-override-current,html.dark .tr-override-current{color:#c4b5fd}[data-theme=dark] .tr-override-btn,html.dark .tr-override-btn{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}[data-theme=dark] .tr-override-btn.is-current,html.dark .tr-override-btn.is-current{background:rgba(167,139,250,.2);border-color:rgba(167,139,250,.5)}[data-theme=dark] .tr-override-reason-input,html.dark .tr-override-reason-input{background:rgba(167,139,250,.06);border-color:rgba(167,139,250,.3);color:var(--text,#f5f3f0)}.tr-presence-empty{font-size:12px;color:#78716c;font-style:italic;padding:8px 4px}[data-theme=dark] .tr-presence-empty,html.dark .tr-presence-empty{color:#a8a29e}.tr-presence-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto}.tr-presence-row{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:8px;padding:5px 8px;border-radius:6px;background:rgba(13,148,136,.04);font-size:12px}[data-theme=dark] .tr-presence-row,html.dark .tr-presence-row{background:rgba(20,184,166,.07)}.tr-presence-row-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#22c55e}.tr-presence-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:#1c1917}.tr-presence-row-name--anon{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;color:#78716c}[data-theme=dark] .tr-presence-row-name,html.dark .tr-presence-row-name{color:#f5f3f0}[data-theme=dark] .tr-presence-row-name--anon,html.dark .tr-presence-row-name--anon{color:#a8a29e}.tr-presence-row-time{font-variant-numeric:tabular-nums;font-size:11px;color:#78716c}[data-theme=dark] .tr-presence-row-time,html.dark .tr-presence-row-time{color:#a8a29e}@media (max-width:900px){.tr-panel{bottom:12px;right:12px;left:12px;width:auto;max-height:55vh;border-radius:14px}.tr-panel,.tr-section-title{max-width:none}}