:root{--pb-bg-page:#f0f0f0;--pb-bg-surface:#fff;--pb-bg-subtle:#f8f8f8;--pb-bg-muted:#f9fafb;--pb-bg-muted-2:#fafafa;--pb-bg-chat:#fafafa;--pb-bg-instructor:#f8faff;--pb-bg-strip:#f8f9fa;--pb-fg:#111827;--pb-fg-1:#1f2937;--pb-fg-2:#374151;--pb-fg-3:#4b5563;--pb-fg-4:#6b7280;--pb-fg-5:#9ca3af;--pb-fg-6:#ccc;--pb-border:#ddd;--pb-border-soft:#e5e7eb;--pb-border-softer:#f3f4f6;--pb-border-strong:#ccc;--pb-blue:#06c;--pb-blue-hover:#0052a3;--pb-blue-soft:#eff6ff;--pb-blue-softer:#f0f7ff;--pb-blue-border:#bfdbfe;--pb-blue-fg:#1d4ed8;--pb-blue-fg-deep:#1e40af;--pb-blue-disabled:#99bfe0;--pb-green:#16a34a;--pb-green-hover:#15803d;--pb-green-bright:#4caf50;--pb-green-bright-h:#45a049;--pb-green-soft:#f0fdf4;--pb-green-border:#bbf7d0;--pb-green-border-2:#86efac;--pb-green-fg:#166534;--pb-green-fg-deep:#15803d;--pb-green-pill-bg:#dcfce7;--pb-amber:#d97706;--pb-amber-hover:#b45309;--pb-amber-soft:#fffbeb;--pb-amber-soft-2:#fef3c7;--pb-amber-border:#fde68a;--pb-amber-border-2:#fbbf24;--pb-amber-fg:#92400e;--pb-amber-fg-deep:#854d0e;--pb-amber-disabled:#fcd34d;--pb-indigo:#6366f1;--pb-indigo-deep:#4f46e5;--pb-indigo-darker:#4338ca;--pb-indigo-deepest:#3730a3;--pb-indigo-soft:#eef2ff;--pb-indigo-soft-2:#f5f3ff;--pb-indigo-border:#c7d2fe;--pb-indigo-border-2:#a5b4fc;--pb-indigo-fg:#1e1b4b;--pb-cycle:#7f77dd;--pb-violet:#7c3aed;--pb-violet-hover:#6d28d9;--pb-violet-soft:#ede9fe;--pb-violet-border:#c4b5fd;--pb-violet-fg:#5b21b6;--pb-purple-9c:#9c27b0;--pb-purple-7b:#7b1fa2;--pb-error:#c00;--pb-error-soft:#fff0f0;--pb-error-border:#f5c6c6;--pb-error-deep:#991b1b;--pb-error-bg-pill:#fee2e2;--pb-error-bg-card:#fee;--pb-error-warn-yel:#fef9c3;--pb-error-warn-fg:#854d0e;--pb-focus-ring-blue:0 0 0 2px #0066cc26;--pb-focus-ring-indigo:0 0 0 2px #6366f126;--pb-focus-ring-amber:0 0 0 2px #fbbf2440;--pb-shadow-card:0 2px 8px #0000000f;--pb-shadow-pop:0 4px 8px #0000000f;--pb-shadow-dropdn:0 6px 20px #0000001f;--pb-shadow-dropdn2:0 8px 20px #0000001f;--pb-shadow-modal:0 20px 60px #00000040;--pb-space-1:4px;--pb-space-2:8px;--pb-space-3:12px;--pb-space-4:16px;--pb-space-5:24px;--pb-space-6:32px;--pb-r-2:3px;--pb-r-3:4px;--pb-r-4:5px;--pb-r-5:6px;--pb-r-6:8px;--pb-r-7:10px;--pb-r-8:16px;--pb-r-pill:99px;--pb-dur-fast:0.15s;--pb-dur-norm:0.2s;--pb-dur-slow:0.8s;--pb-dur-think:1.4s;--pb-font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--pb-font-mono:"Fira Mono","Cascadia Code","Consolas",monospace;--pb-ts-display:2rem;--pb-ts-h1:1.5rem;--pb-ts-h2:1.25rem;--pb-ts-h3:1.1rem;--pb-ts-body:1rem;--pb-ts-body-s:0.95rem;--pb-ts-small:0.9rem;--pb-ts-xs:0.85rem;--pb-ts-xxs:0.78rem;--pb-ts-micro:0.72rem;--pb-w-reg:400;--pb-w-med:500;--pb-w-semi:600;--pb-w-bold:700}body{padding:0}.auth-container{align-items:center;background:var(--pb-bg-page);display:flex;justify-content:center;min-height:100vh}.auth-box{background:var(--pb-bg-surface);border:1px solid var(--pb-border);border-radius:var(--pb-r-6);box-shadow:var(--pb-shadow-card);max-width:calc(100vw - 2rem);padding:2rem;width:420px}.auth-box h1{font-size:var(--pb-ts-display);margin:0 0 .25rem}.auth-subtitle{color:var(--pb-fg-3);font-size:var(--pb-ts-body);margin:0 0 1.5rem}.auth-description{color:var(--pb-fg-4);font-size:var(--pb-ts-small);line-height:1.5;margin:0 0 1.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:var(--pb-ts-small);font-weight:var(--pb-w-med);margin-bottom:.4rem}.form-group input{border:1px solid var(--pb-border-strong);border-radius:var(--pb-r-3);box-sizing:border-box;font-size:var(--pb-ts-body);padding:.55rem .75rem;transition:border-color var(--pb-dur-fast);width:100%}.form-group input:focus{border-color:var(--pb-blue);box-shadow:var(--pb-focus-ring-blue);outline:none}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.field-hint{color:#888;display:block;font-size:var(--pb-ts-xxs);margin-top:.25rem}.required{color:var(--pb-error);margin-left:2px}.optional{color:var(--pb-fg-5);font-size:.82rem;font-weight:var(--pb-w-reg)}.auth-btn{background:var(--pb-blue);border:none;border-radius:var(--pb-r-3);color:var(--pb-bg-surface);cursor:pointer;font-size:var(--pb-ts-body);font-weight:var(--pb-w-med);margin-top:.5rem;padding:.7rem;transition:background var(--pb-dur-fast);width:100%}.auth-btn:hover:not(:disabled){background:var(--pb-blue-hover)}.auth-btn:disabled{background:var(--pb-blue-disabled);cursor:not-allowed}.auth-error{background:var(--pb-error-soft);border:1px solid var(--pb-error-border);border-radius:var(--pb-r-3);color:var(--pb-error);font-size:var(--pb-ts-small);margin-bottom:.75rem;padding:.5rem .75rem}.auth-success{background:var(--pb-green-soft);border:1px solid var(--pb-green-border);border-radius:var(--pb-r-3);color:var(--pb-green-fg);font-size:var(--pb-ts-body-s);line-height:1.6;margin-bottom:1rem;padding:1rem}.auth-success p{margin:0 0 .4rem}.auth-success p:last-child{margin:0}.auth-links{color:var(--pb-fg-3);font-size:var(--pb-ts-small);margin-top:1.25rem;text-align:center}.auth-link{color:var(--pb-blue);text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-link-sep{color:var(--pb-border-strong);margin:0 .5rem}.paper-list-page{background:var(--pb-bg-page);min-height:100vh}.paper-list-header{align-items:center;background:var(--pb-bg-surface);border-bottom:1px solid var(--pb-border);display:flex;justify-content:space-between;padding:1rem 1.5rem}.paper-list-header h1{font-size:var(--pb-ts-h1);margin:0}.paper-list-logout{background:var(--pb-bg-surface);border:1px solid var(--pb-border-strong);border-radius:var(--pb-r-5);color:#444;cursor:pointer;font-size:var(--pb-ts-xs);padding:.4rem .75rem;transition:background var(--pb-dur-fast),border-color var(--pb-dur-fast)}.paper-list-logout:hover{background:#f5f5f5;border-color:#bbb}.paper-list-main{margin:0 auto;max-width:560px;padding:2rem 1.5rem}.paper-list-title-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.paper-list-title-row h2{font-size:var(--pb-ts-h2);margin:0}.paper-list-clear-btn{background:#0000;border:1px solid #c0392b;border:1px solid var(--pb-error,#c0392b);border-radius:var(--pb-r-5);color:#c0392b;color:var(--pb-error,#c0392b);cursor:pointer;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);padding:.4rem .85rem;white-space:nowrap}.paper-list-clear-btn:hover:not(:disabled){background:#c0392b;background:var(--pb-error,#c0392b);color:#fff}.paper-list-clear-btn:disabled{cursor:default;opacity:.5}.paper-list-error{color:var(--pb-error);margin-bottom:1rem}.paper-list-empty{color:var(--pb-fg-4)}.paper-list{list-style:none;margin:0;padding:0}.paper-list li{margin-bottom:.5rem}.paper-list-link{align-items:center;background:var(--pb-bg-surface);border:1px solid var(--pb-border);border-radius:var(--pb-r-6);color:var(--pb-fg);display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem;text-decoration:none}.paper-list-link:hover{background:var(--pb-bg-muted-2);border-color:#bbb}.paper-list-name{font-weight:var(--pb-w-semi)}.paper-list-meta{color:var(--pb-fg-4);font-size:var(--pb-ts-xs);white-space:nowrap}.paper-list-loading{color:var(--pb-fg-4);padding:3rem;text-align:center}.mode-toggle{align-items:center;border:none;border-radius:0;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;overflow:visible}.mode-toggle-label{color:#444;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med)}.mode-toggle-buttons{display:flex;gap:.4rem}.mode-toggle-btn{background:var(--pb-bg-surface);border-radius:var(--pb-r-5);color:var(--pb-fg-3);font-size:.875rem;font-size:var(--pb-ts-sm,.875rem);padding:.45rem 1.2rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast)}.mode-toggle-btn.active{background:var(--pb-blue);color:var(--pb-bg-surface);font-weight:var(--pb-w-med)}.mode-toggle-btn:hover:not(.active){background:var(--pb-bg-page)}.mode-toggle-hint{color:#888;font-size:.8rem;font-style:italic}.pdf-viewer-container{background:#f5f5f5;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.pdf-viewer-header{align-items:center;background:#fff;border-bottom:1px solid #ddd;display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:10px 20px}.zoom-controls{align-items:center;border:1px solid #ccc;border-radius:6px;display:inline-flex;gap:4px;overflow:hidden;padding:0 4px}.zoom-ctrl-btn{background:#fff;border:none;color:#555;cursor:pointer;font-size:15px;font-weight:600;line-height:1;padding:5px 8px;transition:background .15s,color .15s}.zoom-ctrl-btn:hover:not(:disabled){background:#f0f0f0}.zoom-ctrl-btn:disabled{cursor:not-allowed;opacity:.35}.zoom-reset-btn{border-right:1px solid #ccc;color:#7f77dd;font-size:11px;padding:5px 7px}.zoom-level{color:#444;font-size:12px;font-weight:600;min-width:38px;text-align:center;-webkit-user-select:none;user-select:none}.pdf-annot-layer{left:0;pointer-events:none;position:absolute;top:0}.pdf-annot-layer a{display:block;pointer-events:all;position:absolute}.column-toggle{border:1px solid #ccc;border-radius:6px;display:inline-flex;overflow:hidden}.column-toggle-btn{background:#fff;border:none;color:#555;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:background .15s,color .15s}.pdf-page-label{color:#444;font-size:13px;font-weight:500;-webkit-user-select:none;user-select:none}.column-toggle-btn+.column-toggle-btn{border-left:1px solid #ccc}.column-toggle-btn:hover{background:#f0f0f0}.column-toggle-btn.active{background:#4caf50;color:#fff}.pdf-pages-container{flex:1 1;height:100%;min-height:0;overflow-x:auto;overflow-y:auto;padding:20px;position:relative;-webkit-user-select:none;user-select:none}.pdf-pages-container:not(.two-column) .page-wrapper{min-width:calc(100% - 40px);width:fit-content}.page-wrapper{background:#fff;border-radius:4px;box-shadow:0 2px 8px #0000001a;display:block;margin-bottom:20px;overflow:visible;position:relative;width:100%}.pdf-page-row{display:flex;flex-wrap:nowrap;gap:0;margin-bottom:20px}.pdf-page-row .page-wrapper{flex:0 0 auto;margin-bottom:0}.textLayer{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;inset:0;line-height:1;opacity:1;overflow:hidden;pointer-events:auto;text-align:left;text-align:initial;-webkit-user-select:none;user-select:none;z-index:2}.textLayer,.textLayer :is(span,br){position:absolute;transform-origin:0 0}.textLayer :is(span,br){color:#0000;cursor:text;letter-spacing:normal;padding-right:0;-webkit-user-select:text;user-select:text;white-space:pre}.textLayer span.markedContent{height:0;top:0}.textLayer ::selection{background:#0000}.textLayer::selection{background:#0000}.pdf-pages-container::selection{background:#0000}.pdf-pages-container ::selection{background:#0000}.pdf-pages-container::-moz-selection,.textLayer::-moz-selection{background:#0000}.pdf-pages-container ::-moz-selection{background:#0000}.textLayer.debug:before{background:#ffffffe6;border:1px solid #ddd;border-radius:6px;color:#444;content:"Text items: " attr(data-text-items);font-size:12px;left:12px;padding:6px 10px;pointer-events:none;position:absolute;top:12px;z-index:3}.textLayer br::selection{background:#0000}.textLayer ::-moz-selection{background:#0000}.textLayer .endOfContent{cursor:default;display:block;inset:100% 0 0;position:absolute;-webkit-user-select:none;user-select:none;z-index:-1}.textLayer .endOfContent.active{top:0}.textLayer.debug{background:#ff00000a;outline:2px dashed #ff000059}.textLayer.debug span{-webkit-text-fill-color:#00000073;background:#0000000f;color:#00000073}.no-text-indicator{background:#ffffffe6;border:1px solid #ddd;border-radius:6px;bottom:12px;color:#444;font-size:12px;left:12px;padding:6px 10px;pointer-events:none;position:absolute;z-index:3}.page-wrapper.unlocked{border:1px solid #4caf50}.page-wrapper.locked{align-items:center;border:2px solid #ddd;display:flex;justify-content:center;min-height:400px}.pdf-canvas{display:block;pointer-events:none;position:relative;z-index:1}.lock-overlay{align-items:center;background:#fafafa;display:flex;height:100%;justify-content:center;width:100%}.lock-content{padding:40px;text-align:center}.lock-icon{font-size:48px;margin-bottom:20px;opacity:.5}.lock-text{color:#333;font-size:18px;font-weight:600;margin:0 0 10px}.lock-subtext{color:#666;font-size:14px;margin:0}.page-label{background:#000000b3;border-radius:4px;color:#fff;font-size:12px;font-weight:600;padding:5px 10px;pointer-events:none;position:absolute;right:10px;top:10px}.pdf-viewer-error,.pdf-viewer-loading{align-items:center;background:#f5f5f5;display:flex;flex-direction:column;height:100%;justify-content:center;padding:20px}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#4caf50;height:50px;margin-bottom:20px;width:50px}.pdf-viewer-error p{color:#d32f2f;margin:5px 0;word-break:break-all}.zoom-overlay{align-items:center;background:#000000bf;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.zoom-modal{background:#222;border-radius:8px;display:flex;flex-direction:column;height:90vh;overflow:hidden;position:relative;width:90vw}.zoom-close-btn{align-items:center;background:#0000008c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:34px;justify-content:center;line-height:1;position:absolute;right:12px;top:10px;width:34px;z-index:10}.zoom-close-btn:hover{background:#000c}.zoom-scroll{flex:1 1;overflow-x:hidden;overflow-y:auto}.zoom-canvas{display:block;width:100%}.figure-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.figure-modal{background:#fff;border-radius:8px;box-shadow:0 20px 60px #0006;display:flex;flex-direction:column;max-height:85vh;max-width:80vw;overflow:hidden}.figure-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:.6rem 1rem}.figure-modal-title{color:#1f2937;font-size:.9rem;font-weight:600}.figure-modal-close{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.4rem;line-height:1;padding:0 .2rem}.figure-modal-close:hover{color:#111827}.figure-modal-body{overflow:auto;padding:1rem}.figure-modal-canvas{display:block;height:auto;max-width:100%}.selection-features-container{animation:slideInUp .3s ease-out;bottom:20px;display:flex;flex-direction:column;gap:10px;position:fixed;right:20px;z-index:1000}.feature-btn{border:none;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;font-size:14px;font-weight:600;min-width:220px;padding:12px 20px;text-align:left;transition:all .2s;white-space:nowrap}.feature-btn:hover{box-shadow:0 6px 16px #0003;transform:translateY(-2px)}.feature-btn:active{transform:translateY(0)}.feature-btn-1{background:#4caf50}.feature-btn-1:hover{background:#45a049}.feature-btn-2{background:#2196f3}.feature-btn-2:hover{background:#1976d2}.paragraph-highlight{background-color:#ffeb3b4d;border:2px solid #ffc10799;border-radius:4px;pointer-events:none;position:absolute;z-index:1}.user-selection-highlight{border-radius:2px}.user-selection-preview{transition:width .06s ease-out,height .06s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes highlightFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes highlightFadeOut{0%{opacity:1}to{opacity:0}}.pb-annotation-marker{background:#f59e0b;border:none;border-radius:50%;box-shadow:0 1px 3px #00000059;color:#fff;cursor:pointer;font-size:13px;font-weight:700;height:20px;line-height:20px;padding:0;pointer-events:auto;position:absolute;text-align:center;width:20px;z-index:4}.pb-annotation-marker:hover{background:#d97706;transform:scale(1.15)}.pb-annotation-highlight{pointer-events:none}.column-toggle-btn.active{background:var(--pb-blue);border-color:var(--pb-blue)}.page-wrapper.unlocked{border:none}.lesson-plan-preview{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.plan-export-bar{align-items:center;background:#f9f9f9;border-bottom:1px solid #eee;display:flex;flex-shrink:0;gap:8px;padding:8px 12px}.plan-export-label{color:#888;font-size:12px;margin-right:2px}.plan-export-btn{background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:12px;padding:4px 12px;transition:background .15s}.plan-export-btn:hover{background:#f0f0f0}.cycle-header-wrap,.question-header-wrap{align-items:center;display:flex;position:relative}.cycle-header-wrap .cycle-card-header,.question-header-wrap .question-header{flex:1 1}.section-actions{display:flex;flex-shrink:0;gap:4px;margin-left:6px}.section-action-btn{background:none;border:1px solid #ccc;border-radius:5px;color:#555;cursor:pointer;font-size:13px;padding:2px 7px;transition:background .12s,color .12s}.section-action-btn:hover{background:#7f77dd;border-color:#7f77dd;color:#fff}.section-action-btn--remove{background:#e0525214;border-color:#e7a6a6;color:#c0392b}.section-action-btn--remove:hover{background:#e05252;border-color:#e05252;color:#fff}.section-action-btn--regen,.section-action-btn--regen:hover{background:#3cc87824;border-color:#28aa5a73;color:#2a7a50}.section-action-btn--regen:hover{background:#3cc8784d}.cycle-section-action-btn{background:none;border:1px solid #ccc;border-radius:5px;color:#555;cursor:pointer;font-size:12px;padding:3px 9px;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.cycle-section-action-btn:hover:not(:disabled){background:#7f77dd;border-color:#7f77dd;color:#fff}.cycle-section-action-btn:disabled{cursor:default;opacity:.4}.cycle-section-action-btn--highlight,.cycle-section-action-btn--highlight:hover:not(:disabled){background:#ffdc002e;border-color:#d4af008c;color:#555}.cycle-section-action-btn--highlight:hover:not(:disabled){background:#ffdc0059}.cycle-section-action-btn--regen,.cycle-section-action-btn--regen:hover:not(:disabled){background:#3cc87824;border-color:#28aa5a73;color:#2a7a50}.cycle-section-action-btn--regen:hover:not(:disabled){background:#3cc8784d}.question-body-action-bar{border-top:1px solid #eee;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px}.question-body-action-bar .highlight-add-btn-wrap,.question-body-action-bar .question-body-action-btn{flex:1 1 auto}.question-body-action-bar .question-body-action-btn{font-size:13px;padding:7px 8px}.question-body-action-bar .highlight-add-btn-wrap .question-body-action-btn{width:100%}.question-body-action-btn{background:none;border:1px solid #ddd;color:#555;flex:1 1;font-size:13px;padding:7px 4px;white-space:nowrap}.question-body-action-btn:hover:not(:disabled){background:#7f77dd;border-color:#7f77dd;color:#fff}.question-body-action-btn--highlight,.question-body-action-btn--highlight:hover:not(:disabled){background:#ffdc002e;border-color:#d4af008c;color:#555}.question-body-action-btn--highlight:hover:not(:disabled){background:#ffdc0059}.question-body-action-btn--regen,.question-body-action-btn--regen:hover:not(:disabled){background:#3cc87824;border-color:#28aa5a73;color:#2a7a50}.question-body-action-btn--regen:hover:not(:disabled){background:#3cc8784d}.question-body-action-btn--remove,.question-body-action-btn--remove:hover:not(:disabled){background:#e0525214;border-color:#e7a6a6;color:#c0392b}.question-body-action-btn--remove:hover:not(:disabled){background:#e05252;border-color:#e05252;color:#fff}.question-body-action-btn:disabled{cursor:default;opacity:.4}.add-question-btn{background:none;border:1px dashed #bbb;border-radius:7px;color:#777;cursor:pointer;font-size:13px;margin-top:8px;padding:6px 0;transition:background .12s,color .12s,border-color .12s;width:100%}.add-question-btn:hover:not(:disabled){background:#f0eeff;border-color:#7f77dd;color:#7f77dd}.add-question-btn:disabled{cursor:default;opacity:.5}.question-item--armed{border-radius:8px}.question-item--armed .question-header{background:#ffdc001a;border-radius:7px;box-shadow:inset 0 0 0 1.5px #d4af008c;cursor:copy}.question-item--armed .question-header:hover{background:#ffdc0038}.question-body-actions{display:flex;gap:8px;margin-top:12px}.question-body-action-btn{background:#fff;border:1px solid #ccc;border-radius:6px;color:#444;cursor:pointer;font-size:14px;font-weight:500;padding:7px 20px;transition:background .12s,color .12s,border-color .12s}.question-body-action-btn:hover{background:#7f77dd;border-color:#7f77dd;color:#fff}.regen-spinner{animation:spin 1s linear infinite;color:#7f77dd;display:inline-block;font-size:16px;margin-left:8px}.cycle-card--loading,.question-item--loading{opacity:.6;pointer-events:none}.regen-form{background:#f5f4ff;border:1px solid #d9d6f9;border-radius:8px;margin-top:10px;padding:10px}.regen-textarea{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-size:13px;padding:6px 8px;resize:vertical;width:100%}.regen-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.regen-cancel-btn{background:#fff;border:1px solid #ccc;border-radius:6px}.regen-cancel-btn,.regen-submit-btn{cursor:pointer;font-size:13px;padding:5px 14px}.regen-submit-btn{background:#2aab6a;border:none;border-radius:6px;color:#fff}.regen-submit-btn:hover{background:#229157}.edit-form{background:#fafafa;border-top:1px solid #eee;display:flex;flex-direction:column;gap:8px;padding:12px}.edit-label{color:#666;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.edit-input,.edit-textarea{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-size:13px;padding:6px 8px;width:100%}.edit-textarea{resize:vertical}.edit-actions{align-items:center;display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.edit-actions>.highlight-add-btn-wrap{margin-right:auto}.edit-cancel-btn{background:#fff;border:1px solid #ccc;border-radius:6px}.edit-cancel-btn,.edit-save-btn{cursor:pointer;font-size:13px;padding:5px 14px}.edit-save-btn{background:#1d9e75;border:none;border-radius:6px;color:#fff}.edit-save-btn:hover{background:#178a63}.edit-action-btn{background:none;border:1px solid #ddd;border-radius:6px;color:#555;cursor:pointer;font-size:13px;padding:5px 14px;transition:background .12s,border-color .12s}.edit-action-btn:disabled{cursor:default;opacity:.4}.plan-scroll-area{flex:1 1;overflow-y:auto}.plan-header{background:var(--pb-bg-surface);border-bottom:1px solid var(--pb-border-soft);display:flex;flex-direction:column;gap:.4rem;padding:.85rem 1rem}.plan-title{color:var(--pb-fg);font-size:var(--pb-ts-h3);font-weight:var(--pb-w-bold)}.plan-bank-note{background:#ede9fe;background:var(--pb-violet-soft,#ede9fe);border:1px solid #c4b5fd;border:1px solid var(--pb-violet-border,#c4b5fd);border-radius:6px;border-radius:var(--pb-r-5,6px);color:#5b21b6;color:var(--pb-violet-fg,#5b21b6);font-size:.85rem;font-size:var(--pb-ts-xs,.85rem);line-height:1.4;margin-top:.35rem;padding:.4rem .6rem}.plan-config-chips{display:flex;flex-wrap:wrap;gap:.35rem}.config-chip{background:var(--pb-indigo-soft);border-radius:var(--pb-r-pill);color:var(--pb-indigo-darker);display:inline-block;font-size:.75rem;font-weight:var(--pb-w-semi);padding:.15rem .6rem}.plan-intro-message{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--pb-fg-4);display:-webkit-box;font-size:.83rem;font-style:italic;margin-top:.1rem;overflow:hidden}.plan-content{display:flex;flex-direction:column;gap:.5rem;padding:.75rem}.cycle-card{border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-6);overflow:hidden}.cycle-card,.cycle-card-header{background:var(--pb-bg-surface)}.cycle-card-header{align-items:center;border:none;cursor:pointer;display:flex;flex-direction:row;gap:.5rem;padding:.65rem .85rem;text-align:left;transition:background .1s;width:100%}.cycle-card-header:hover{background:var(--pb-bg-muted)}.cycle-card-header-static{align-items:center;background:var(--pb-bg-surface);display:flex;flex-direction:row;gap:.5rem;padding:.65rem .85rem;width:100%}.cycle-number{background:var(--pb-cycle);border-radius:var(--pb-r-3);color:var(--pb-bg-surface);flex-shrink:0;font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);padding:.1rem .45rem;white-space:nowrap}.cycle-title{color:var(--pb-fg);flex:1 1;font-size:.88rem;font-weight:var(--pb-w-semi)}.cycle-meta{color:var(--pb-fg-5);font-size:var(--pb-ts-micro);white-space:nowrap}.cycle-chevron{background:none;border:none;border-radius:var(--pb-r-4);color:var(--pb-fg-5);cursor:pointer;flex-shrink:0;font-size:.75rem;line-height:1;padding:.25rem .4rem;transition:background .12s,color .12s}.cycle-chevron:hover{background:var(--pb-bg-muted);color:var(--pb-fg-3)}.cycle-card-body{border-top:1px solid var(--pb-border-softer);display:flex;flex-direction:column;gap:.9rem;padding:.75rem 1rem}.cycle-section-block{display:flex;flex-direction:column;gap:.4rem}.cycle-section-header-row{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.cycle-section-header-row .cycle-read--inline{flex:1 1}.cycle-section-actions{align-items:center;display:flex;flex-shrink:0;gap:4px}.cycle-section-edit-form{display:flex;flex-direction:column;gap:.35rem}.section-edit-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.cycle-read{background:var(--pb-green-soft);border-left:3px solid var(--pb-green);border-radius:0 var(--pb-r-3) var(--pb-r-3) 0;color:var(--pb-fg-1);font-size:.82rem;line-height:1.4;padding:.45rem .75rem}.cycle-read--inline{display:inline-block}.cycle-read-label{color:var(--pb-green-fg-deep);font-weight:var(--pb-w-semi);margin-right:.3rem}.cycle-section-title{color:var(--pb-fg-4);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);letter-spacing:.05em;margin-bottom:.35rem;text-transform:uppercase}.cycle-diagram-block{margin-bottom:.85rem}.cycle-diagram-block:last-child{margin-bottom:0}.cycle-diagram-title{color:var(--pb-fg-2);font-size:.82rem;font-weight:var(--pb-w-semi);margin-bottom:.25rem}.core-ideas-list{margin:0 0 0 1.1rem;padding:0}.core-ideas-list li{border-left:2px solid var(--pb-indigo-border);color:var(--pb-fg-1);font-size:.83rem;line-height:1.5;list-style:decimal;margin-bottom:.35rem;padding-left:.5rem}.recommendations-list{margin:0 0 0 1rem;padding:0}.recommendations-list li{color:var(--pb-fg-2);font-size:.83rem;line-height:1.4;list-style:disc;margin-bottom:.3rem}.question-reorder-row{align-items:stretch;display:flex;gap:4px;margin-bottom:.35rem;transition:opacity .12s}.question-reorder-row .question-item{flex:1 1;margin-bottom:0}.drag-handle{align-items:center;border-radius:var(--pb-r-4);color:var(--pb-fg-5);cursor:grab;display:flex;flex-shrink:0;font-size:1rem;justify-content:center;line-height:1;transition:background .12s,color .12s;-webkit-user-select:none;user-select:none;width:1.3rem}.drag-handle:hover{background:var(--pb-indigo-soft);color:var(--pb-cycle)}.drag-handle:active{cursor:grabbing}.drag-handle:focus-visible{background:var(--pb-indigo-soft);box-shadow:0 0 0 2px #7f77dd40;color:var(--pb-cycle);outline:none}.question-reorder-row--dragging{opacity:.4}.question-reorder-row--drop-target .question-item{border-color:var(--pb-cycle);box-shadow:0 0 0 2px #7f77dd33}.question-item{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-6);margin-bottom:.35rem;overflow:hidden}.question-header{background:var(--pb-bg-surface);border:none;cursor:pointer;display:flex;flex-direction:column;gap:.3rem;padding:.65rem .85rem;text-align:left;transition:background .1s;width:100%}.question-header:hover{background:var(--pb-bg-muted)}.question-header-top{align-items:center;display:flex;gap:.4rem}.question-num{background:var(--pb-cycle);border-radius:var(--pb-r-3);color:var(--pb-bg-surface);flex-shrink:0;font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);padding:.1rem .45rem;white-space:nowrap}.lesson-plan-preview--testing .question-num{background:#2a6e3c}.question-text{color:var(--pb-fg-1);font-size:.83rem;line-height:1.4}.question-chevron{align-self:center;background:none;border:none;border-radius:var(--pb-r-4);color:var(--pb-fg-5);cursor:pointer;flex-shrink:0;font-size:.7rem;line-height:1;padding:.25rem .4rem;transition:background .12s,color .12s}.question-chevron:hover{background:var(--pb-bg-muted);color:var(--pb-fg-3)}.question-body{background:var(--pb-bg-muted-2);border-top:1px solid var(--pb-border-softer);gap:.5rem;padding:.55rem .75rem}.hints-list,.question-body{display:flex;flex-direction:column}.hints-list{gap:.25rem}.hint-item{color:var(--pb-fg-2);font-size:.82rem}.hint-label{color:var(--pb-indigo);font-weight:var(--pb-w-semi);margin-right:.3rem}.question-answer{background:var(--pb-green-soft);border-radius:var(--pb-r-3);color:var(--pb-green-hover);font-size:.82rem;line-height:1.4;padding:.4rem .6rem}.answer-label{font-weight:var(--pb-w-semi);margin-right:.3rem}.question-type-badge{align-self:flex-start;border-radius:var(--pb-r-3);display:inline-block;flex-shrink:0;font-size:.68rem;font-weight:var(--pb-w-bold);margin-top:.05rem;padding:.1rem .4rem;text-transform:uppercase;white-space:nowrap}.question-type-badge.mcq{background:#dbeafe;color:var(--pb-blue-fg-deep)}.question-type-badge.short-answer{background:#fce4f0;color:#b5367a}.question-type-badge.counterfactual{background:#f3e8ff;color:#6b21a8}.question-section-badge{align-self:flex-start;background:#fff5ea;border-radius:var(--pb-r-3);color:#e07a10;display:inline-block;flex-shrink:0;font-size:.68rem;font-weight:var(--pb-w-bold);margin-top:.05rem;padding:.1rem .4rem;white-space:nowrap}.mcq-options{display:flex;flex-direction:column;gap:.25rem}.mcq-option{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-3);color:var(--pb-fg-2);font-size:.82rem;line-height:1.4;padding:.3rem .55rem}.mcq-option.correct{background:var(--pb-green-soft);border-color:var(--pb-green-border-2);color:var(--pb-green-hover);font-weight:var(--pb-w-semi)}.plan-ai-reply{background:#eef2ff;border:1.5px solid #818cf8;border-radius:var(--pb-r-8);display:flex;flex-direction:column;flex-shrink:0;gap:.35rem;margin:0 .75rem;padding:.75rem 1rem}.plan-ai-reply-label{color:#4f46e5;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.plan-ai-reply-text{color:#1e1b4b;font-size:.88rem;line-height:1.55;white-space:pre-wrap}.plan-approval-bar{background:var(--pb-bg-surface);border-top:2px solid #e0e7ff;display:flex;flex-direction:column;flex-shrink:0;gap:.22rem;padding:.3rem 1rem .35rem}.plan-approval-label{color:var(--pb-fg-2);font-size:var(--pb-ts-xs);font-weight:var(--pb-w-semi);margin:0}.plan-name-input{border:1px solid #d1d5db;border-radius:var(--pb-r-5);box-sizing:border-box;color:var(--pb-fg);font-family:inherit;font-size:.85rem;font-weight:600;padding:.22rem .6rem;transition:border-color var(--pb-dur-fast);width:100%}.plan-name-input:focus{border-color:var(--pb-indigo);outline:none}.plan-approval-textarea{border:1px solid #d1d5db;border-radius:var(--pb-r-5);box-sizing:border-box;color:var(--pb-fg);font-family:inherit;font-size:.82rem;padding:.22rem .6rem;resize:vertical;transition:border-color var(--pb-dur-fast);width:100%}.plan-approval-textarea:focus{border-color:var(--pb-indigo);outline:none}.plan-due-date-row{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem}.plan-due-date-error{color:#dc2626;font-size:.75rem;width:100%}.plan-due-date-label{color:var(--pb-fg-2);font-size:.78rem;white-space:nowrap}.plan-due-date-input{background:var(--pb-bg-surface);border:1px solid #d1d5db;border-radius:var(--pb-r-5);color:var(--pb-fg);font-size:.82rem;padding:.18rem .5rem}.plan-due-date-input:focus{border-color:var(--pb-indigo);outline:none}.plan-approval-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.05rem}.plan-approve-btn{background:var(--pb-green);border:none;border-radius:var(--pb-r-5);color:var(--pb-bg-surface);cursor:pointer;font-size:.83rem;font-weight:var(--pb-w-semi);padding:.4rem .9rem;transition:background var(--pb-dur-fast)}.plan-approve-btn:hover:not(:disabled){background:var(--pb-green-hover)}.plan-approve-btn:disabled{background:var(--pb-green-border-2);cursor:not-allowed}.plan-changes-btn{background:var(--pb-bg-surface);border:1px solid var(--pb-indigo-border);border-radius:var(--pb-r-5);color:var(--pb-indigo-darker);cursor:pointer;font-size:.83rem;font-weight:var(--pb-w-semi);padding:.4rem .9rem;transition:background var(--pb-dur-fast)}.plan-changes-btn:hover:not(:disabled){background:var(--pb-indigo-soft)}.plan-changes-btn:disabled{cursor:not-allowed;opacity:.5}.highlight-add-btn-wrap{display:inline-flex;position:relative}.highlight-add-btn{background:#ffdc002e;border:1px solid #d4af008c;border-radius:var(--pb-r-5);cursor:pointer;font-size:.9rem;line-height:1.2;padding:.1rem .35rem;transition:background var(--pb-dur-fast),opacity var(--pb-dur-fast)}.highlight-add-btn:hover:not(:disabled){background:#ffdc0059}.highlight-add-btn:disabled{cursor:not-allowed;opacity:.4}.highlight-add-tooltip{word-wrap:break-word;background:#111;border-radius:7px;box-shadow:0 4px 12px #0003;color:#fff;font-size:.75rem;line-height:1.4;padding:.45rem .65rem;pointer-events:none;position:fixed;transform:translateY(calc(-100% - 6px));width:180px;z-index:9999}.item-highlight-list{display:flex;flex-direction:column;gap:.3rem;margin-top:.5rem}.item-highlight-chip{align-items:baseline;background:#ffdc0029;border:1px solid #d4af0073;border-radius:var(--pb-r-5);display:flex;font-size:.8rem;gap:.4rem;line-height:1.4;padding:.35rem .5rem}.item-highlight-page{color:var(--pb-indigo-darker);font-weight:var(--pb-w-semi);white-space:nowrap}.item-highlight-text{color:#333;color:var(--pb-text,#333);font-style:italic;overflow:hidden;text-overflow:ellipsis}.highlight-clear-btn{background:#0000;border:none;color:var(--pb-indigo-darker);cursor:pointer;font-size:1rem;line-height:1;margin-left:auto;padding:0 .2rem}.highlight-clear-btn:hover{color:#b00}.item-highlight-chip--ai{background:#6366f11f;border-color:#6366f166}.item-highlight-ai-badge{background:#6366f129;border-radius:var(--pb-r-5);color:var(--pb-indigo-darker);flex:none;font-size:.62rem;font-weight:var(--pb-w-semi);letter-spacing:.04em;padding:.05rem .3rem;text-transform:uppercase}.ia-panel{background:var(--pb-bg-muted);flex:1 1;flex-direction:column}.ia-header,.ia-panel{display:flex;overflow:hidden}.ia-header{align-items:flex-start;background:var(--pb-bg-surface);border-bottom:1px solid var(--pb-border-soft);column-gap:.9rem;flex-shrink:0;flex-wrap:wrap;justify-content:space-between;min-width:0;padding:.55rem 1.1rem;row-gap:.2rem}.ia-header-left{display:flex;flex:1 1 auto;flex-direction:column;gap:.15rem;max-width:60%;min-width:0}.ia-header-title-row{align-items:center;display:flex;gap:.65rem;min-width:0}.ia-back-btn{background:none;border:none;color:var(--pb-indigo);cursor:pointer;flex-shrink:0;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);margin-bottom:.1rem;padding:0}.ia-back-btn:hover{text-decoration:underline}.ia-title{color:var(--pb-fg-1);font-size:var(--pb-ts-body);font-weight:var(--pb-w-bold);line-height:1.2;margin:0;white-space:nowrap}.ia-paper-name{color:var(--pb-fg-4);flex-basis:100%;font-size:.75rem;line-height:1.2;margin:0;overflow-wrap:anywhere;white-space:normal;width:100%}.ia-plan-select{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);color:var(--pb-fg-2);cursor:pointer;flex-shrink:1;font-size:var(--pb-ts-xs);max-width:14rem;min-width:9rem;padding:.45rem .85rem;text-align:center;text-align-last:center}.ia-plan-select:focus{border-color:var(--pb-indigo);outline:none}.ia-empty,.ia-loading{align-items:center;color:var(--pb-fg-5);display:flex;flex:1 1;font-size:var(--pb-ts-xs);font-style:italic;justify-content:center;padding:2rem}.ia-scroll{display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-x:hidden;overflow-y:auto;padding:.75rem 1rem 1.5rem}.ia-test-student-table{table-layout:fixed}.ia-test-student-table .ia-student-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ia-stat-row{grid-gap:.6rem;display:grid;gap:.6rem;grid-template-columns:repeat(4,1fr)}.ia-stat-card{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-7);padding:.75rem .85rem;text-align:center}.ia-stat-card--accent{background:linear-gradient(135deg,var(--pb-indigo-soft-2) 0,var(--pb-violet-soft) 100%);border-color:var(--pb-violet-border)}.ia-stat-value{color:var(--pb-fg-1);font-size:1.45rem;font-weight:var(--pb-w-bold);line-height:1;margin:0 0 .15rem}.ia-stat-card--accent .ia-stat-value{color:var(--pb-indigo-deep)}.ia-stat-label{color:var(--pb-fg-4);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-semi);letter-spacing:.04em;margin:0;text-transform:uppercase}.ia-stat-sub{color:var(--pb-fg-5);font-size:.68rem;margin:.15rem 0 0}.ia-section{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-7);padding:.85rem .9rem}.ia-section-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.6rem}.ia-section-title{color:var(--pb-fg-2);font-size:var(--pb-ts-xs);font-weight:var(--pb-w-bold);letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.ia-section--collapsed .ia-section-header,.ia-section-header .ia-section-title{margin-bottom:0}.ia-section-actions{align-items:center;display:flex;flex-shrink:0;gap:.4rem}.ia-collapse-btn{background:var(--pb-bg-muted);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);color:var(--pb-fg-3);cursor:pointer;font-size:.8rem;font-weight:var(--pb-w-med);padding:.38rem .65rem;transition:background var(--pb-dur-fast);white-space:nowrap}.ia-collapse-btn:hover{background:var(--pb-border-softer)}.ia-export-btn{background:var(--pb-bg-muted);border:1px solid var(--pb-indigo-border-2);border-radius:var(--pb-r-5);color:var(--pb-indigo-deepest);cursor:pointer;font-size:.8rem;font-weight:var(--pb-w-semi);padding:.38rem .75rem;transition:background var(--pb-dur-fast);white-space:nowrap}.ia-export-btn:hover{background:var(--pb-indigo-soft)}.ia-section-hint{color:var(--pb-fg-5);font-size:.75rem;margin:-.25rem 0 .6rem}.ia-sort-btns{align-items:center;display:flex;flex-wrap:wrap;gap:.3rem}.ia-sort-label{color:var(--pb-fg-5)}.ia-sort-btn,.ia-sort-label{font-size:var(--pb-ts-micro)}.ia-sort-btn{background:none;border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-3);color:var(--pb-fg-4);cursor:pointer;padding:.18rem .5rem;transition:background .12s,border-color .12s}.ia-sort-btn:hover{background:var(--pb-border-softer)}.ia-sort-btn.active{background:var(--pb-indigo-soft);border-color:var(--pb-indigo-border-2);color:var(--pb-indigo-deepest);font-weight:var(--pb-w-semi)}.ia-q-table,.ia-student-table{border-collapse:collapse;font-size:.82rem;width:100%}.ia-q-table th,.ia-student-table th{border-bottom:1px solid var(--pb-border-softer);color:var(--pb-fg-5);font-size:.7rem;font-weight:var(--pb-w-semi);letter-spacing:.04em;padding:.4rem .5rem;text-align:left;text-transform:uppercase}.ia-q-row td,.ia-student-row td{border-bottom:1px solid var(--pb-bg-muted);padding:.5rem;vertical-align:middle}.ia-q-row--warn{background:var(--pb-amber-soft)}.ia-q-num{color:var(--pb-fg-2);font-weight:var(--pb-w-bold);white-space:nowrap}.ia-q-bar-cell{min-width:90px}.ia-bar-wrap{background:var(--pb-border-softer);border-radius:var(--pb-r-pill);display:flex;height:8px;min-width:70px;overflow:hidden}.ia-bar-seg{height:100%}.ia-bar-strong{background:#22c55e}.ia-bar-partial{background:#f59e0b}.ia-bar-weak{background:#ef4444}.ia-bar-empty{color:#d1d5db;font-size:var(--pb-ts-micro)}.ia-no-data{color:var(--pb-fg-5);font-size:var(--pb-ts-xxs);font-style:italic}.ia-q-table th.ia-th-confidence{line-height:1.2;max-width:3.25rem;padding-left:.25rem;padding-right:.25rem;text-align:center;white-space:normal}.ia-confidence-cell{white-space:nowrap}.ia-confidence-chip{background:#f0f4ff;border:1px solid #c7d2fe;border-radius:var(--pb-r-pill);color:#4f46e5;display:inline-block;font-size:var(--pb-ts-xxs);font-weight:600;padding:.15rem .45rem}.ia-confidence-cell .ia-confidence-chip{font-feature-settings:"tnum";font-size:.65rem;font-variant-numeric:tabular-nums;padding:.1rem .35rem}.ia-hint-chip{background:#fff7ed;border:1px solid #fed7aa;border-radius:var(--pb-r-pill);color:#c2410c}.ia-correct-chip,.ia-hint-chip{display:inline-block;font-size:var(--pb-ts-xxs);font-weight:600;padding:.15rem .45rem}.ia-correct-chip{border-radius:var(--pb-r-pill)}.ia-correct-chip--yes{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.ia-correct-chip--no{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.ia-feedback-block{background:#f8fafc;background:var(--pb-bg-2,#f8fafc);border:1px solid #e2e8f0;border:1px solid var(--pb-border,#e2e8f0);border-radius:8px;border-radius:var(--pb-r-s,8px);display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem;padding:.5rem .6rem}.ia-feedback-item{border-left:3px solid #0000;color:var(--pb-fg-2);font-size:var(--pb-ts-body-s);line-height:1.5;margin:0;padding-left:.5rem}.ia-feedback-item--strength{border-left-color:#34d399}.ia-feedback-item--weakness{border-left-color:#f87171}.ia-feedback-item--improve{border-left-color:#60a5fa}.ia-feedback-label{color:#64748b;color:var(--pb-fg-3,#64748b);font-size:var(--pb-ts-xxs);font-weight:700;letter-spacing:.02em;margin-right:.35rem;text-transform:uppercase}.ia-pertest-table{table-layout:fixed}.ia-pertest-table td,.ia-pertest-table th{padding-left:.3rem;padding-right:.3rem;white-space:nowrap}.ia-pertest-table th{font-size:.62rem;letter-spacing:0;vertical-align:bottom}.ia-pertest-table td.ia-td-center,.ia-pertest-table th.ia-td-center{text-align:left}.ia-pertest-name{padding-left:.5rem;padding-right:.5rem;white-space:normal}.ia-pertest-name-label{color:var(--pb-fg-2);font-weight:var(--pb-w-bold);line-height:1.2}.ia-pertest-name-meta{color:var(--pb-fg-5);font-size:var(--pb-ts-micro);line-height:1.2;margin-top:.15rem}.ia-grade-badge{border-radius:var(--pb-r-pill);display:inline-block;font-size:var(--pb-ts-xxs);font-weight:var(--pb-w-bold);padding:.15rem .55rem}.ia-grade-good{background:var(--pb-green-pill-bg);color:var(--pb-green-fg)}.ia-grade-mid{background:var(--pb-error-warn-yel);color:#854d0e}.ia-grade-low{background:var(--pb-error-bg-pill);color:var(--pb-error-deep)}.ia-strong-text{color:var(--pb-green);font-weight:var(--pb-w-semi)}.ia-partial-text{color:var(--pb-amber);font-weight:var(--pb-w-semi)}.ia-weak-text{color:#dc2626;font-weight:var(--pb-w-semi)}.ia-td-center{text-align:center}.ia-td-muted{color:var(--pb-fg-5);font-size:var(--pb-ts-xxs)}.ia-flag-badge{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--pb-r-pill);box-sizing:border-box;color:#dc2626;display:inline-flex;font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);justify-content:center;line-height:1.4;min-width:1.3rem;padding:.12rem .45rem;vertical-align:middle}.ia-flag-badge--ai{background:#fffbeb;border-color:#fde68a;color:#b45309;gap:.2rem}.ia-student-row:hover td{background:var(--pb-bg-muted-2)}.ia-student-name{color:var(--pb-fg-1);font-weight:var(--pb-w-med);white-space:nowrap}.ia-expand-icon{color:var(--pb-fg-5);display:inline-block;font-size:.75rem;width:14px}.ia-student-detail-row td{background:var(--pb-bg-muted);border-bottom:1px solid var(--pb-border-softer);padding:.4rem .5rem .6rem 1.5rem}.ia-q-chips{display:flex;flex-wrap:wrap;gap:.35rem}.ia-q-chip{align-items:center;border:1px solid #0000;border-radius:var(--pb-r-5);display:inline-flex;font-size:.75rem;gap:.3rem;padding:.22rem .6rem}.ia-q-chip--strong{background:var(--pb-green-pill-bg);border-color:var(--pb-green-border);color:var(--pb-green-fg)}.ia-q-chip--partial{background:var(--pb-error-warn-yel);border-color:var(--pb-amber-border);color:#854d0e}.ia-q-chip--missing,.ia-q-chip--weak{background:var(--pb-error-bg-pill);border-color:#fecaca;color:var(--pb-error-deep)}.ia-q-chip-num{font-weight:var(--pb-w-bold)}.ia-q-chip-grade{font-weight:var(--pb-w-med)}.ia-q-chip-score{opacity:.75}.ia-insights-btn{background:linear-gradient(135deg,var(--pb-indigo-deep),var(--pb-violet));border:none;border-radius:var(--pb-r-5);color:var(--pb-bg-surface);cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:var(--pb-w-semi);padding:.38rem .9rem;transition:opacity var(--pb-dur-fast);white-space:nowrap}.ia-insights-btn:hover:not(:disabled){opacity:.88}.ia-insights-btn:disabled{cursor:not-allowed;opacity:.6}.ia-insights-prompt{color:var(--pb-fg-5);font-size:.82rem;font-style:italic;margin:0}.ia-insights-loading{color:var(--pb-fg-4);font-size:.82rem;font-style:italic;padding:.5rem 0}.ia-insights-body{color:var(--pb-fg-2);font-size:var(--pb-ts-xs);line-height:1.6}.ia-insights-body h2{border-bottom:1px solid var(--pb-border-softer);color:var(--pb-fg-1);font-size:var(--pb-ts-small);font-weight:var(--pb-w-bold);margin:.9rem 0 .3rem;padding-bottom:.2rem}.ia-insights-body h2:first-child{margin-top:0}.ia-insights-body ul{margin:.2rem 0 .6rem 1.2rem;padding:0}.ia-insights-body li{margin-bottom:.2rem}.ia-insights-body p{margin:.3rem 0}.ia-insights-body strong{color:var(--pb-fg-1)}.ia-dist-rows{display:flex;flex-direction:column;gap:.4rem}.ia-dist-row{align-items:center;display:flex;gap:.6rem}.ia-dist-label{font-feature-settings:"tnum";color:var(--pb-fg-3);flex-shrink:0;font-size:var(--pb-ts-xs);font-variant-numeric:tabular-nums;width:80px}.ia-dist-track{background:var(--pb-border-softer);flex:1 1;height:10px;overflow:hidden}.ia-dist-fill,.ia-dist-track{border-radius:var(--pb-r-pill)}.ia-dist-fill{background:var(--pb-indigo);height:100%;min-width:2px;transition:width .3s ease}.ia-dist-count{color:var(--pb-fg-4);flex-shrink:0;font-size:var(--pb-ts-xs);text-align:right;width:20px}.ia-type-grid{grid-gap:.6rem;display:grid;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.ia-type-card{background:var(--pb-bg-muted);border:1px solid var(--pb-border-softer);border-radius:var(--pb-r-6);display:flex;flex-direction:column;gap:.25rem;padding:.65rem .75rem}.ia-type-label{color:var(--pb-fg-4);font-size:var(--pb-ts-micro);letter-spacing:.04em;text-transform:uppercase}.ia-type-avg,.ia-type-label{font-weight:var(--pb-w-bold);margin:0}.ia-type-avg{color:var(--pb-fg-1);font-size:1.4rem;line-height:1}.ia-type-meta{color:var(--pb-fg-5);font-size:var(--pb-ts-micro);margin:0 0 .25rem}.ia-priorities-list{display:flex;flex-direction:column;gap:.55rem}.ia-priority-card{border-left:3px solid #0000;border-radius:var(--pb-r-6);display:flex;flex-direction:column;gap:.3rem;padding:.75rem .9rem}.ia-priority-card--high{background:#fff5f5;border-left-color:#ef4444}.ia-priority-card--medium{background:var(--pb-amber-soft);border-left-color:var(--pb-amber)}.ia-priority-card--low{background:var(--pb-indigo-soft);border-left-color:var(--pb-indigo)}.ia-priority-header{align-items:center;display:flex;gap:.5rem}.ia-priority-badge{border-radius:var(--pb-r-pill);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);letter-spacing:.05em;padding:.1rem .45rem;text-transform:uppercase}.ia-priority-badge--high{background:#fee2e2;color:#dc2626}.ia-priority-badge--medium{background:var(--pb-error-warn-yel);color:#92400e}.ia-priority-badge--low{background:var(--pb-indigo-soft-2);color:var(--pb-indigo-deepest)}.ia-priority-topic{color:var(--pb-fg-1);font-size:var(--pb-ts-xs);font-weight:var(--pb-w-bold);margin:0}.ia-priority-evidence{color:var(--pb-fg-3);font-size:var(--pb-ts-xs);line-height:1.45;margin:0}.ia-priority-action{color:var(--pb-fg-2);font-size:var(--pb-ts-xs);font-style:italic;line-height:1.4;margin:0}.ia-q-row--clickable{cursor:pointer}.ia-q-row--clickable:hover td{background:var(--pb-indigo-soft)}.ia-q-popup-backdrop{align-items:center;background:#00000059;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:200}.ia-q-popup{background:var(--pb-bg-surface);border-radius:var(--pb-r-7);box-shadow:var(--pb-shadow-modal);display:flex;flex-direction:column;gap:.85rem;max-height:80vh;max-width:480px;overflow-y:auto;padding:1.1rem 1.25rem 1.25rem;width:100%}.ia-q-popup-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.ia-q-popup-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.ia-q-popup-num{color:var(--pb-indigo-deepest);font-size:var(--pb-ts-body);font-weight:var(--pb-w-bold)}.ia-q-popup-close{background:none;border:none;color:var(--pb-fg-5);cursor:pointer;flex-shrink:0;font-size:1rem;line-height:1;padding:0 .2rem}.ia-q-popup-close:hover,.ia-q-popup-text{color:var(--pb-fg-1)}.ia-q-popup-text{font-size:var(--pb-ts-body-s);font-weight:var(--pb-w-semi);line-height:1.55;margin:0}.ia-q-popup-options{display:flex;flex-direction:column;gap:.3rem}.ia-q-popup-option{background:var(--pb-bg-muted);border:1px solid var(--pb-border-softer);border-radius:var(--pb-r-3);color:var(--pb-fg-2);font-size:var(--pb-ts-xs);line-height:1.4;padding:.35rem .6rem}.ia-q-popup-option.correct{background:var(--pb-green-soft);border-color:var(--pb-green-border-2);color:var(--pb-green-hover);font-weight:var(--pb-w-semi)}.ia-q-popup-option-letter{font-weight:var(--pb-w-bold);margin-right:.25rem}.ia-q-popup-answer{background:var(--pb-green-soft);border-radius:var(--pb-r-3);color:var(--pb-green-hover);font-size:var(--pb-ts-xs);line-height:1.45;padding:.4rem .65rem}.ia-q-popup-answer-label{font-weight:var(--pb-w-semi);margin-right:.3rem}.ia-q-popup-hints{border-top:1px solid var(--pb-border-softer);display:flex;flex-direction:column;gap:.3rem;padding-top:.75rem}.ia-q-popup-hints-label{color:var(--pb-fg-5);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);letter-spacing:.05em;margin:0 0 .25rem;text-transform:uppercase}.ia-q-popup-hint{color:var(--pb-fg-3);font-size:var(--pb-ts-xs);line-height:1.45;margin:0}.ia-q-popup-hint-num{color:var(--pb-indigo);font-weight:var(--pb-w-bold);margin-right:.3rem}.ia-attempt-badge{background:var(--pb-indigo-soft);color:var(--pb-indigo);display:inline-block;padding:.05rem .45rem}.ia-attempt-badge,.ia-improvement-chip{border-radius:99px;font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);margin-left:.4rem;vertical-align:middle}.ia-improvement-chip{font-feature-settings:"tnum";align-items:center;border:1px solid #0000;display:inline-flex;font-variant-numeric:tabular-nums;gap:.1rem;letter-spacing:.01em;padding:.1rem .5rem}.ia-improvement-chip.up{background:var(--pb-green-soft);border-color:#86efac;border-color:var(--pb-green-border,#86efac);color:#15803d;color:var(--pb-green-fg,#15803d)}.ia-improvement-chip.down{background:var(--pb-error-bg-card);border-color:#ef4444;border-color:var(--pb-error,#ef4444);color:#b91c1c;color:var(--pb-error-deep,#b91c1c)}.ia-student-popup{gap:0;max-width:560px}.ia-student-responses{display:flex;flex-direction:column;gap:.75rem;padding-top:.25rem}.ia-student-response-card{background:var(--pb-bg-muted);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);display:flex;flex-direction:column;gap:.45rem;padding:.75rem .9rem .8rem}.ia-student-response-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.ia-response-grade{margin-left:auto}.ia-student-q-text{color:var(--pb-fg-1);font-size:var(--pb-ts-body-s);font-weight:var(--pb-w-semi);line-height:1.5;margin:0}.ia-student-response-body{border-top:1px solid var(--pb-border-softer);padding-top:.45rem}.ia-student-response-text{color:var(--pb-fg-2);font-size:var(--pb-ts-body-s);line-height:1.55;margin:0;white-space:pre-wrap}.ia-student-response-empty{color:var(--pb-fg-5);font-size:var(--pb-ts-xs);font-style:italic;margin:0}.ia-conv-toggle-btn{all:unset;color:var(--pb-accent-blue-mid);cursor:pointer;font-size:var(--pb-ts-xxs);margin-top:.25rem;-webkit-user-select:none;user-select:none}.ia-conv-toggle-btn:hover{text-decoration:underline}.ia-conv-messages{border-top:1px solid var(--pb-border-soft);display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem;max-height:260px;overflow-y:auto;padding-top:.4rem}.ia-conv-empty,.ia-conv-loading{color:var(--pb-fg-5);font-size:var(--pb-ts-xxs);font-style:italic;margin:0}.ia-conv-msg{border-radius:var(--pb-r-sm);font-size:var(--pb-ts-xxs);line-height:1.4;padding:.3rem .5rem}.ia-conv-msg--student{align-self:flex-end;background:#f0f4ff;max-width:85%}.ia-conv-msg--ai{align-self:flex-start;background:var(--pb-surface-2);max-width:90%}.ia-conv-msg-role{color:var(--pb-fg-4);display:block;font-size:10px;font-weight:600;letter-spacing:.03em;margin-bottom:.15rem;text-transform:uppercase}.ia-conv-msg-text{margin:0;white-space:pre-wrap;word-break:break-word}.ia-attempt-block{border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);display:flex;flex-direction:column;gap:0;margin-bottom:.5rem;overflow:hidden}.ia-attempt-block:last-child{margin-bottom:0}.ia-attempt-header{align-items:center;background:var(--pb-indigo-soft);display:flex;gap:.5rem;padding:.5rem .6rem}.ia-attempt-header--toggle{border:none;cursor:pointer;text-align:left;width:100%}.ia-attempt-header--toggle:hover{background:#e0ddf8;background:var(--pb-indigo-200,#e0ddf8)}.ia-attempt-caret{color:var(--pb-indigo-deepest);flex-shrink:0;font-size:12px}.ia-attempt-label{color:var(--pb-indigo-deepest);flex:1 1;font-size:var(--pb-ts-body-s);font-weight:var(--pb-w-bold)}.ia-attempt-date{color:var(--pb-fg-4);font-size:var(--pb-ts-xs)}.ia-attempt-body{display:flex;flex-direction:column;gap:.5rem;padding:.5rem .6rem .75rem}.ia-header-controls{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:.75rem;min-width:0}.ia-mode-segment{background:var(--pb-bg-muted);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);display:inline-flex;gap:3px;padding:3px}.ia-mode-btn{background:#0000;border:none;border-radius:6px;color:var(--pb-fg-3);cursor:pointer;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);padding:.42rem .9rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast)}.ia-mode-btn:hover{color:var(--pb-fg-1)}.ia-mode-btn--active{background:var(--pb-indigo)}.ia-mode-btn--active,.ia-mode-btn--active:hover{color:var(--pb-bg-surface)}.ia-refresh-btn{background:var(--pb-bg-muted);border:1px solid var(--pb-border-soft);border-radius:6px;color:var(--pb-fg-3);cursor:pointer;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);padding:.3rem .65rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast);white-space:nowrap}.ia-refresh-btn:hover{background:var(--pb-bg-raised);color:var(--pb-fg-1)}.ia-cprog-cell{min-width:180px}.ia-cprog-wrap{align-items:center;display:flex;gap:.55rem}.ia-cprog-track{background:var(--pb-bg-muted);border-radius:99px;flex:1 1;height:8px;min-width:90px;overflow:hidden}.ia-cprog-fill{border-radius:99px;height:100%;transition:width var(--pb-dur-slow) ease}.ia-cprog-fill--low{background:#f59e0b}.ia-cprog-fill--mid{background:#6366f1}.ia-cprog-fill--full{background:#10b981}.ia-cprog-label{font-feature-settings:"tnum";color:var(--pb-fg-3);font-size:var(--pb-ts-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.ia-status-pill{border-radius:99px;display:inline-block;font-size:.7rem;font-weight:var(--pb-w-bold);letter-spacing:.02em;padding:.15rem .55rem;text-transform:uppercase;white-space:nowrap}.ia-status-pill--done{background:#d1fae5;color:#047857}.ia-status-pill--inprogress{background:#fef3c7;color:#b45309}.ia-cycle-card,.ia-cycle-cards{display:flex;flex-direction:column;gap:.5rem}.ia-cycle-card{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);padding:.6rem .7rem}.ia-cycle-card--clickable{cursor:pointer;transition:border-color var(--pb-dur-fast),box-shadow var(--pb-dur-fast)}.ia-cycle-card--clickable:hover{border-color:var(--pb-indigo-border-2);box-shadow:0 1px 3px #6366f114}.ia-cycle-card-head{align-items:flex-start;display:flex;gap:.55rem}.ia-cycle-num-badge{font-feature-settings:"tnum";align-items:center;background:var(--pb-indigo-soft);border-radius:var(--pb-r-3);color:var(--pb-indigo-darker);display:inline-flex;flex-shrink:0;font-size:.7rem;font-variant-numeric:tabular-nums;font-weight:var(--pb-w-bold);height:1.5rem;justify-content:center;min-width:2rem;padding:0 .45rem}.ia-cycle-card-title-block{flex:1 1;min-width:0}.ia-cycle-card-title{color:var(--pb-fg-1);flex:1 1;font-size:.85rem;font-weight:var(--pb-w-semi);line-height:1.3;word-break:break-word}.ia-cycle-card-meta{color:var(--pb-fg-5);font-size:.7rem;margin-top:.15rem}.ia-cycle-card-bar-row{align-items:center;display:flex;gap:.55rem}.ia-cycle-card-bar-row .ia-bar-wrap{flex:1 1;height:8px;min-width:0}.ia-cycle-card-pct{font-feature-settings:"tnum";color:var(--pb-fg-2);font-size:.72rem;font-variant-numeric:tabular-nums;font-weight:var(--pb-w-bold);min-width:2.6rem;text-align:right;white-space:nowrap}.ia-cycle-card-stats{color:var(--pb-fg-4);display:flex;flex-wrap:wrap;font-size:.72rem;gap:.35rem .85rem}.ia-cycle-stat{white-space:nowrap}.ia-cycle-stat strong{font-feature-settings:"tnum";color:var(--pb-fg-1);font-variant-numeric:tabular-nums;font-weight:var(--pb-w-bold);margin-right:.2rem}.ia-cycle-card-chevron{color:var(--pb-fg-5);flex-shrink:0;font-size:1.1rem;line-height:1;margin-left:auto;padding-left:.4rem;transition:transform var(--pb-dur-fast),color var(--pb-dur-fast)}.ia-cycle-card--clickable:hover .ia-cycle-card-chevron{color:var(--pb-indigo);transform:translateX(2px)}.ia-cycle-popup{max-width:720px;width:min(720px,92vw)}.ia-cycle-num-badge--lg{font-size:.85rem;height:2rem;min-width:2.5rem;padding:0 .6rem}.ia-cycle-popup-title{color:var(--pb-fg-1);flex:1 1;font-size:1rem;font-weight:var(--pb-w-bold);line-height:1.3;word-break:break-word}.ia-cycle-popup-chips{background:var(--pb-bg-muted);border-radius:var(--pb-r-5);color:var(--pb-fg-4);display:flex;flex-wrap:wrap;font-size:.75rem;gap:.4rem .85rem;margin:.4rem 0 .7rem;padding:.55rem .75rem}.ia-cycle-popup-body{display:flex;flex-direction:column;gap:1rem}.ia-cycle-popup-section{display:flex;flex-direction:column;gap:.35rem}.ia-cycle-popup-section-label{color:var(--pb-indigo-darker);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);letter-spacing:.05em;text-transform:uppercase}.ia-cycle-popup-read{background:var(--pb-indigo-soft);border-left:3px solid var(--pb-indigo-border-2);border-radius:0 var(--pb-r-3) var(--pb-r-3) 0;line-height:1.45;padding:.5rem .7rem}.ia-cycle-popup-list,.ia-cycle-popup-read{color:var(--pb-fg-2);font-size:.85rem;margin:0}.ia-cycle-popup-list{line-height:1.5;padding-left:1.2rem}.ia-cycle-popup-list li{margin-bottom:.3rem}.ia-cycle-popup-questions{display:flex;flex-direction:column;gap:.7rem}.ia-cycle-popup-question{background:var(--pb-bg-muted);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);padding:.65rem .75rem}.ia-cycle-popup-q-head{align-items:center;display:flex;gap:.45rem;margin-bottom:.3rem}.ia-cycle-popup-q-num{color:var(--pb-indigo-darker);font-size:.75rem;font-weight:var(--pb-w-bold);letter-spacing:.03em}.ia-cycle-popup-q-text{color:var(--pb-fg-1);font-size:.85rem;line-height:1.45;margin:0 0 .4rem}.ia-cycle-popup-q-options{color:var(--pb-fg-3);font-size:.8rem;line-height:1.5;margin:.2rem 0 .4rem;padding-left:1.2rem}.ia-cycle-popup-q-options li{margin-bottom:.15rem}.ia-cycle-popup-q-answer{background:var(--pb-bg-surface);border:1px dashed var(--pb-border-soft);border-radius:var(--pb-r-3);color:var(--pb-fg-3);font-size:.78rem;margin-top:.3rem;padding:.3rem .5rem}.ia-cycle-popup-q-answer-label{color:var(--pb-fg-2);font-weight:var(--pb-w-bold);margin-right:.25rem}.ia-cycle-conv-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.6rem}.ia-cycle-conv{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);overflow:hidden}.ia-cycle-conv--unreached{background:var(--pb-bg-muted);border-style:dashed;opacity:.85}.ia-cycle-conv-head{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;gap:.5rem;padding:.5rem .7rem;text-align:left;transition:background var(--pb-dur-fast);width:100%}.ia-cycle-conv-head:hover{background:var(--pb-bg-muted)}.ia-cycle-conv-head--static{cursor:default}.ia-cycle-conv-head--static:hover{background:#0000}.ia-cycle-conv-title{color:var(--pb-fg-1);flex:1 1;font-size:.85rem;font-weight:var(--pb-w-semi);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ia-cycle-conv-stats{align-items:center;color:var(--pb-fg-4);display:flex;flex-shrink:0;font-size:.72rem;gap:.45rem}.ia-cycle-conv-stats .ia-cycle-stat{white-space:nowrap}.ia-cycle-conv-chevron{color:var(--pb-fg-5);flex-shrink:0;font-size:.7rem;margin-left:.2rem}.ia-cycle-conv-summary{color:var(--pb-fg-5);font-size:.7rem;font-style:italic;margin:0;padding:0 .7rem .55rem}.ia-cycle-conv .ia-conv-messages{background:var(--pb-bg-muted);border-top:1px solid var(--pb-border-soft);display:flex;flex-direction:column;gap:.45rem;max-height:380px;overflow-y:auto;padding:.55rem .7rem}.ia-cycle-conv .ia-conv-msg{background:var(--pb-bg-surface);border-radius:var(--pb-r-3);font-size:.8rem;line-height:1.45;padding:.45rem .6rem}.ia-cycle-conv .ia-conv-msg--ai{border-left:3px solid var(--pb-indigo-border-2)}.ia-cycle-conv .ia-conv-msg--student{background:var(--pb-bg-surface);border-left:3px solid #94a3b8}.ia-cycle-conv .ia-conv-msg--flagged{background:var(--pb-error-bg-card);border-left:3px solid var(--pb-error)}.ia-cycle-conv .ia-conv-msg .ia-hflag{margin-top:.45rem}.ia-hflag--overridden{opacity:.7}.ia-cycle-conv .ia-conv-msg-role{color:var(--pb-fg-5);display:block;font-size:.65rem;font-weight:var(--pb-w-bold);letter-spacing:.04em;margin-bottom:.2rem;text-transform:uppercase}.ia-cycle-conv .ia-conv-msg-text{color:var(--pb-fg-1);margin:0;white-space:pre-wrap;word-break:break-word}.ia-conv-loading{color:var(--pb-fg-5);font-size:.75rem;font-style:italic;margin:.55rem 0;text-align:center}.ia-cycle-student-table{table-layout:auto;width:100%}.ia-cycle-student-table td,.ia-cycle-student-table th{padding:.4rem .35rem}.ia-cycle-student-table th{font-size:.64rem;letter-spacing:.03em;white-space:nowrap}.ia-cycle-student-table .ia-student-name{max-width:8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ia-cycle-student-table .ia-cprog-cell{min-width:0}.ia-cycle-student-table .ia-cprog-wrap{gap:.4rem}.ia-cycle-student-table .ia-cprog-track{min-width:3.25rem}.ia-cycle-student-table .ia-status-pill{font-size:.62rem;letter-spacing:0;padding:.12rem .45rem}.ia-attempt-progress-chip{font-feature-settings:"tnum";background:var(--pb-bg-surface);border:1px solid var(--pb-indigo-border);border-radius:99px;color:var(--pb-indigo-darker);display:inline-block;font-size:.7rem;font-variant-numeric:tabular-nums;font-weight:var(--pb-w-med);padding:.15rem .55rem}.ia-cycle-msgs-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));padding:.6rem .2rem .1rem}.ia-cycle-msg-card{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-3);padding:.55rem .4rem;text-align:center}.ia-cycle-msg-num{color:var(--pb-indigo-darker);font-size:.7rem;font-weight:var(--pb-w-bold);letter-spacing:.03em;text-transform:uppercase}.ia-cycle-msg-count{font-feature-settings:"tnum";color:var(--pb-fg-1);font-size:1.35rem;font-variant-numeric:tabular-nums;font-weight:var(--pb-w-bold);line-height:1.1;margin-top:.15rem}.ia-cycle-msg-label{color:var(--pb-fg-4);font-size:.65rem;text-transform:uppercase}.ia-dist-fill--warn{background:#f59e0b!important}.ia-qa-score-chip{background:var(--pb-indigo-soft);border-radius:6px;border-radius:var(--pb-r-3,6px);color:var(--pb-indigo-deep);display:inline-block;font-size:.7rem;font-weight:600;padding:.05rem .4rem}.ia-qa-thread{border:1px solid var(--pb-border-soft);border-radius:10px;border-radius:var(--pb-r-5,10px);margin-bottom:.6rem;overflow:hidden}.ia-qa-thread-title{color:var(--pb-fg-1);flex:1 1;font-weight:600;text-align:left}.ia-qa-thread-body{border-top:1px solid var(--pb-border-softer);padding:.6rem .75rem}.ia-qa-controls{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.ia-qa-action-row,.ia-qa-score-row{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem}.ia-qa-label{align-items:center;color:var(--pb-fg-3);display:inline-flex;font-size:.72rem;font-weight:600;gap:.3rem}.ia-qa-score-input{width:4rem}.ia-grade-cat-select,.ia-qa-note-input,.ia-qa-score-input{border:1px solid var(--pb-border-soft);border-radius:6px;border-radius:var(--pb-r-3,6px);padding:.25rem .4rem}.ia-grade-cat-select,.ia-qa-note-input{flex:1 1;min-width:8rem}.ia-qa-interject{display:flex;flex-direction:column;gap:.35rem}.ia-qa-notes{background:var(--pb-bg-muted);border-radius:6px;border-radius:var(--pb-r-3,6px);padding:.4rem .5rem}.ia-qa-note-item{color:var(--pb-fg-2);font-size:.78rem;margin:.15rem 0}.ia-conv-msg--instructor{background:var(--pb-indigo-soft);border-left:3px solid var(--pb-indigo)}.ia-msg-tools{margin-top:.35rem}.ia-edit-grade-btn,.ia-flag-msg-btn{background:var(--pb-bg-raised);border:1px solid var(--pb-border-soft);border-radius:6px;border-radius:var(--pb-r-3,6px);color:var(--pb-fg-2);cursor:pointer;font-size:.7rem;padding:.1rem .45rem}.ia-edit-grade-btn:hover,.ia-flag-msg-btn:hover{background:var(--pb-bg-muted)}.ia-attempt-delete-btn{background:var(--pb-bg-raised);border:1px solid var(--pb-border-soft);border-radius:6px;border-radius:var(--pb-r-3,6px);color:var(--pb-fg-4);cursor:pointer;font-size:.7rem;padding:.1rem .5rem;white-space:nowrap}.ia-attempt-delete-btn:hover:not(:disabled){background:var(--pb-error-bg-card);border-color:var(--pb-error);color:var(--pb-error)}.ia-attempt-delete-btn:disabled{cursor:default;opacity:.6}.ia-grade-edit,.ia-msg-flag-form{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0}.ia-msg-flag-input{border:1px solid var(--pb-border-soft);border-radius:6px;border-radius:var(--pb-r-3,6px);font-family:inherit;padding:.3rem .4rem;resize:vertical;width:100%}.ia-msg-flag-actions{display:flex;gap:.4rem}.ia-hflag{background:var(--pb-amber-soft);border:1px solid var(--pb-amber-border);border-left:4px solid var(--pb-amber-border-2,var(--pb-amber));border-radius:6px;border-radius:var(--pb-r-5,6px);box-shadow:0 2px 8px #0000000f;box-shadow:var(--pb-shadow-card,0 2px 8px #0000000f);margin:.45rem 0;padding:.6rem .75rem}.ia-hflag--high{background:#fee;background:var(--pb-error-bg-card,#fee);border-color:#f5c6c6;border-color:var(--pb-error-border,#f5c6c6);border-left-color:#c00;border-left-color:var(--pb-error,#c00)}.ia-hflag-head{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.35rem}.ia-hflag-badge{align-items:center;color:#991b1b;color:var(--pb-error-deep,#991b1b);display:inline-flex;font-size:.74rem;font-weight:700;gap:.25rem;letter-spacing:.01em}.ia-hflag-sev{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);padding:.1rem .5rem}.ia-hflag-sev,.ia-hflag-status{border-radius:99px;border-radius:var(--pb-r-pill,99px);color:var(--pb-fg-3);font-size:.62rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.ia-hflag-status{background:var(--pb-bg-muted);margin-left:auto;padding:.12rem .55rem}.ia-hflag-status--open{background:#c00;background:var(--pb-error,#c00);color:#fff}.ia-hflag-status--dismissed{background:#e5e7eb;background:var(--pb-border-soft,#e5e7eb);color:var(--pb-fg-4)}.ia-hflag-status--confirmed{background:var(--pb-error-bg-pill);color:var(--pb-error-deep)}.ia-hflag-claim{color:var(--pb-fg-1);font-size:.8rem;font-weight:600;margin:.25rem 0 0}.ia-hflag-rationale{color:var(--pb-fg-2);font-size:.8rem;line-height:1.45;margin:0}.ia-hflag-correction{color:var(--pb-fg-1);font-size:.78rem;margin:.25rem 0 0}.ia-hflag-btn{background:var(--pb-indigo);border:1px solid var(--pb-indigo-border);border-radius:6px;border-radius:var(--pb-r-5,6px);color:#fff;cursor:pointer;font-size:.72rem;font-weight:600;margin-right:.4rem;margin-top:.55rem;padding:.32rem .7rem;transition:background .12s ease,border-color .12s ease}.ia-hflag-btn:hover:not(:disabled){background:#4f46e5;background:var(--pb-indigo-deep,#4f46e5)}.ia-hflag-btn:disabled{cursor:default;opacity:.55}.ia-hflag-btn--dismiss{background:var(--pb-bg-surface);border-color:#f5c6c6;border-color:var(--pb-error-border,#f5c6c6);color:#991b1b;color:var(--pb-error-deep,#991b1b)}.ia-hflag-btn--dismiss:hover:not(:disabled){background:#fee2e2;background:var(--pb-error-bg-pill,#fee2e2);border-color:#c00;border-color:var(--pb-error,#c00)}.ia-edited-badge{background:var(--pb-indigo-soft);border-radius:6px;border-radius:var(--pb-r-3,6px);color:var(--pb-indigo-deep);font-size:.65rem;font-weight:700;padding:.05rem .35rem;text-transform:uppercase}.ia-qa-engagement{background:var(--pb-bg-muted);border:1px solid var(--pb-border-softer);border-radius:6px;border-radius:var(--pb-r-3,6px);padding:.45rem .55rem}.ia-qa-engagement-head{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.ia-qa-engagement-label{color:var(--pb-fg-3);font-size:.72rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.ia-qa-auto-chip{background:var(--pb-indigo-soft);border-radius:6px;border-radius:var(--pb-r-3,6px);color:var(--pb-indigo-deep);font-size:.75rem;font-weight:600;padding:.1rem .45rem}.ia-qa-auto-pending{color:var(--pb-fg-4);font-size:.75rem;font-style:italic}.ia-qa-auto-rationale{color:var(--pb-fg-2);font-size:.78rem;line-height:1.4;margin:.35rem 0 0}.ia-scan-result{border-radius:6px;border-radius:var(--pb-r-3,6px);font-size:.78rem;font-weight:600;padding:.1rem .4rem}.ia-scan-result--clear{background:#dcfce7;background:var(--pb-green-soft,#dcfce7);color:#15803d;color:var(--pb-green-fg,#15803d)}.ia-scan-result--found{background:#fee2e2;background:var(--pb-error-bg-pill,#fee2e2);color:#b91c1c;color:var(--pb-error-deep,#b91c1c)}.ia-q-unanswered-toggle-row{cursor:pointer}.ia-q-unanswered-toggle{background:var(--pb-bg-muted);border-top:1px solid var(--pb-border-softer);color:var(--pb-fg-3);font-size:.78rem;font-weight:600;padding:.45rem .5rem}.ia-q-unanswered-toggle-row:hover .ia-q-unanswered-toggle{background:var(--pb-bg-muted-2);color:var(--pb-fg-1)}.ia-stat-info{color:var(--pb-fg-5);cursor:help;font-size:.7rem;margin-left:.25rem}.ia-hallu-banner{align-items:flex-start;background:#fef3c7;background:var(--pb-amber-soft,#fef3c7);border:1px solid #fcd34d;border:1px solid var(--pb-amber-border,#fcd34d);border-radius:10px;border-radius:var(--pb-r-5,10px);color:var(--pb-fg-1);display:flex;font-size:.82rem;gap:.5rem;line-height:1.4;padding:.6rem .8rem}.ia-hallu-banner-icon{color:#b91c1c;color:var(--pb-error-deep,#b91c1c);font-size:1rem;line-height:1.2}.ia-thread-group+.ia-thread-group{margin-top:18px}.ia-thread-group-title{align-items:center;color:#6b7280;color:var(--pb-fg-4,#6b7280);display:flex;font-size:12px;font-weight:700;gap:8px;letter-spacing:.04em;margin:0 0 8px;text-transform:uppercase}.ia-thread-group-count{background:#e5e7eb;background:var(--pb-border-soft,#e5e7eb);border-radius:999px;color:#4b5563;color:var(--pb-fg-3,#4b5563);font-size:11px;padding:1px 7px}.so-subtitle{color:var(--pb-fg-5);font-size:.72rem;line-height:1.2;white-space:nowrap}.so-roster{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding:.9rem 1.2rem 1.5rem}.so-search{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);color:var(--pb-fg-2);font-size:var(--pb-ts-xs);margin:0 0 .7rem;max-width:22rem;padding:.55rem .75rem}.so-search:focus{border-color:var(--pb-indigo);outline:none}.so-roster-list{display:flex;flex-direction:column;gap:.4rem}.so-roster-item{align-items:center;background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);cursor:pointer;display:flex;gap:.6rem;justify-content:space-between;padding:.8rem 1rem;text-align:left;transition:background .12s ease,border-color .12s ease;width:100%}.so-roster-item:hover{background:#eef0ff;background:var(--pb-indigo-soft,#eef0ff);border-color:var(--pb-indigo)}.so-roster-name{color:var(--pb-fg-1);font-size:.92rem;font-weight:var(--pb-w-semi);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.so-roster-chips{align-items:center;display:flex;flex-shrink:0;gap:.3rem}.so-roster-arrow{color:var(--pb-fg-4);font-size:1.1rem;margin-left:.2rem}.so-chip{border-radius:999px;color:#fff;font-size:.62rem;font-weight:var(--pb-w-semi);padding:.08rem .32rem;white-space:nowrap}.so-chip--test{background:#2a6e3c}.so-chip--cycle{background:#e07a10}.so-chip--qa{background:#7f77dd}.so-chip--flag{background:#dc2626}.so-roster-empty,.so-section-empty{padding:.6rem}.so-detail{flex:1 1;min-width:0;overflow-y:auto;padding:.9rem 1.2rem 2rem}.so-title{color:#7f77dd;color:var(--pb-cycle,#7f77dd)}.so-back-btn{align-items:center;background:#eef2ff;background:var(--pb-indigo-soft,#eef2ff);border:1px solid #c7d2fe;border:1px solid var(--pb-indigo-border,#c7d2fe);border-radius:99px;border-radius:var(--pb-r-pill,99px);color:#4f46e5;color:var(--pb-indigo-deep,#4f46e5);cursor:pointer;display:inline-flex;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-semi);gap:.3rem;margin-bottom:.9rem;padding:.32rem .8rem;transition:background .12s ease}.so-back-btn:hover{background:#c7d2fe;background:var(--pb-indigo-border,#c7d2fe)}.so-detail-head{background:#eef2ff;background:var(--pb-indigo-soft,#eef2ff);border:1px solid #c7d2fe;border:1px solid var(--pb-indigo-border,#c7d2fe);border-radius:10px;border-radius:var(--pb-r-7,10px);flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.1rem;padding:.9rem 1rem}.so-detail-head,.so-detail-id{align-items:center;display:flex}.so-detail-id{gap:.7rem;min-width:0}.so-avatar{align-items:center;background:#7f77dd;background:var(--pb-cycle,#7f77dd);border-radius:50%;box-shadow:0 2px 6px #7f77dd66;color:#fff;display:flex;flex-shrink:0;font-size:.9rem;height:2.5rem;justify-content:center;width:2.5rem}.so-avatar,.so-detail-name{font-weight:var(--pb-w-bold)}.so-detail-name{color:#1e1b4b;color:var(--pb-indigo-fg,#1e1b4b);font-size:1.1rem;margin:0}.so-detail-email{color:#4f46e5;color:var(--pb-indigo-deep,#4f46e5);font-size:.74rem;margin:.1rem 0 0}.so-detail-stats{display:flex;flex-wrap:wrap;gap:.45rem}.so-stat{background:var(--pb-bg-surface);border:1px solid #0000;border-radius:99px;border-radius:var(--pb-r-pill,99px);color:var(--pb-fg-3);font-size:var(--pb-ts-xs);padding:.3rem .7rem}.so-stat b{font-weight:var(--pb-w-bold)}.so-stat--test{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.so-stat--test b{color:#15803d}.so-stat--cycle{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.so-stat--cycle b{color:#c2410c}.so-stat--qa{background:#eef2ff;background:var(--pb-indigo-soft,#eef2ff);border-color:#c7d2fe;border-color:var(--pb-indigo-border,#c7d2fe);color:#3730a3;color:var(--pb-indigo-deepest,#3730a3)}.so-stat--qa b{color:#4f46e5;color:var(--pb-indigo-deep,#4f46e5)}.so-stat--flag{background:#fee2e2;border-color:#fecaca;color:#991b1b}.so-stat--flag b{color:#dc2626}.so-section{margin-bottom:1.5rem}.so-section-title{align-items:center;color:var(--pb-fg-1);display:flex;font-size:.78rem;font-weight:var(--pb-w-bold);gap:.45rem;letter-spacing:.05em;margin:0 0 .6rem;text-transform:uppercase}.so-section-dot{border-radius:50%;flex-shrink:0;height:.55rem;width:.55rem}.so-section--test .so-section-dot{background:#2a6e3c}.so-section--cycle .so-section-dot{background:#e07a10}.so-section--qa .so-section-dot{background:#7f77dd;background:var(--pb-cycle,#7f77dd)}.so-section--annotation .so-section-dot{background:#0d9488}.so-section-count{border-radius:999px;color:#fff;font-size:.66rem;font-weight:var(--pb-w-bold);min-width:1.1rem;padding:.05rem .45rem;text-align:center}.so-section--test .so-section-count{background:#2a6e3c}.so-section--cycle .so-section-count{background:#e07a10}.so-section--qa .so-section-count{background:#7f77dd;background:var(--pb-cycle,#7f77dd)}.so-section--annotation .so-section-count{background:#0d9488}.so-muted{color:var(--pb-fg-5);font-size:var(--pb-ts-xs);font-style:italic}.so-drop{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-left-width:3px;border-radius:var(--pb-r-5);margin-bottom:.5rem;overflow:hidden;transition:box-shadow .12s ease,border-color .12s ease}.so-drop:hover{box-shadow:0 2px 8px #0000000f;box-shadow:var(--pb-shadow-card,0 2px 8px #0000000f)}.so-drop--test{border-left-color:#2a6e3c}.so-drop--cycle{border-left-color:#e07a10}.so-drop--qa{border-left-color:#7f77dd;border-left-color:var(--pb-cycle,#7f77dd)}.so-drop-head{align-items:center;background:none;border:none;cursor:pointer;display:flex;flex-wrap:wrap;gap:.5rem;padding:.65rem .85rem;text-align:left;transition:background .12s ease;width:100%}.so-drop-head:hover{background:var(--pb-bg-muted)}.so-drop-head[aria-expanded=true]{border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--pb-border-softer,#f3f4f6)}.so-drop--test .so-drop-head[aria-expanded=true]{background:#f5fbf7}.so-drop--cycle .so-drop-head[aria-expanded=true]{background:#fffaf4}.so-drop--qa .so-drop-head[aria-expanded=true]{background:#f5f3ff;background:var(--pb-indigo-soft-2,#f5f3ff)}.so-drop-caret{color:var(--pb-fg-4);flex-shrink:0;font-size:.7rem;width:.85rem}.so-drop .ia-attempt-label{font-weight:var(--pb-w-semi)}.so-drop--test .ia-attempt-label{color:#15803d}.so-drop--cycle .ia-attempt-label{color:#c2410c}.so-drop--qa .ia-attempt-label{color:#4f46e5;color:var(--pb-indigo-deep,#4f46e5)}.so-drop-head .ia-attempt-date{margin-left:auto}.so-drop-body{padding:.75rem .9rem .9rem}.so-flag-chip{color:#dc2626;font-size:.66rem;font-weight:var(--pb-w-semi)}.so-hint-chip,.so-msg-count{color:var(--pb-fg-4);font-size:.66rem}.so-status{border-radius:999px;font-size:.62rem;font-weight:var(--pb-w-semi);padding:.08rem .4rem}.so-status--done{background:#dcfce7;color:#15803d}.so-status--wip{background:#fef9c3;color:#a16207}.so-q-list{display:flex;flex-direction:column;gap:.4rem;margin:.5rem 0 .3rem}.so-q-item{background:var(--pb-bg-muted);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);overflow:hidden}.so-q-item--open{background:var(--pb-bg-surface)}.so-q-head{align-items:center;background:none;border:none;cursor:pointer;display:flex;gap:.5rem;padding:.5rem .7rem;text-align:left;transition:background .12s ease;width:100%}.so-q-head:hover{background:var(--pb-bg-muted)}.so-q-caret{color:var(--pb-fg-4);flex-shrink:0;font-size:.68rem;width:.8rem}.so-q-num{color:var(--pb-fg-1);font-size:var(--pb-ts-xs);font-weight:var(--pb-w-bold)}.so-cat{color:var(--pb-fg-4);font-size:.68rem}.so-override{background:#eef0ff;background:var(--pb-indigo-soft,#eef0ff);border-radius:999px;color:var(--pb-indigo);font-size:.6rem;font-weight:var(--pb-w-semi);padding:.05rem .35rem}.so-q-detail{border-top:1px solid #f3f4f6;border-top:1px solid var(--pb-border-softer,#f3f4f6);padding:.1rem .75rem .65rem}.so-question{color:var(--pb-fg-1);font-size:.8rem;line-height:1.45;margin:.5rem 0 .35rem}.so-q-label{color:#4f46e5;color:var(--pb-indigo-deep,#4f46e5);font-weight:var(--pb-w-bold)}.so-answer{color:var(--pb-fg-2);font-size:.78rem;line-height:1.45;margin:.2rem 0}.so-answer-label{font-weight:var(--pb-w-semi)}.so-answer-label,.so-feedback{color:var(--pb-fg-4);color:var(--pb-fg-3,var(--pb-fg-4))}.so-feedback{font-size:.72rem;margin:.3rem 0 0}.so-feedback p{margin:.1rem 0}.so-fb-good{color:#15803d}.so-fb-bad,.so-fb-good{font-weight:var(--pb-w-semi)}.so-fb-bad{color:#b91c1c}.so-fb-mid{color:#a16207;font-weight:var(--pb-w-semi)}.so-note{color:var(--pb-fg-4);color:var(--pb-fg-3,var(--pb-fg-4));font-size:.72rem;margin:.25rem 0 0}.so-transcript{margin-top:.5rem}.so-transcript-toggle{background:none;border:none;color:var(--pb-indigo);cursor:pointer;font-size:.72rem;font-weight:var(--pb-w-med);padding:0}.so-transcript-toggle:hover{text-decoration:underline}.so-transcript-body{border-left:2px solid var(--pb-border-soft);gap:.5rem;margin-top:.5rem;padding-left:.5rem}.so-msg,.so-transcript-body{display:flex;flex-direction:column}.so-msg{gap:.15rem}.so-msg-role{color:var(--pb-fg-4);font-size:.62rem;font-weight:var(--pb-w-semi)}.so-msg-text{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);color:var(--pb-fg-2);font-size:.78rem;line-height:1.4;padding:.4rem .6rem}.so-msg-text>:first-child{margin-top:0}.so-msg-text>:last-child{margin-bottom:0}.so-msg--student .so-msg-text{background:#eef0ff;background:var(--pb-indigo-soft,#eef0ff)}.so-msg--instructor .so-msg-text{background:#fef9c3}.so-msg-time{color:#888;font-size:.75rem;font-weight:400;margin-left:.5rem}.so-cost-chip{background:#f1f1f1;background:var(--pb-bg-2,#f1f1f1);border-radius:999px;color:#555;color:var(--pb-fg-3,#555);font-size:.7rem;padding:.05rem .45rem}.so-cost-chip,.so-stat--spend b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.aa-panel{flex:1 1;flex-direction:column;height:100%;overflow:hidden}.aa-header,.aa-panel{background:#fff;background:var(--pb-bg-surface,#fff);display:flex}.aa-header{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--pb-border-soft,#e8e8e8);flex-shrink:0;gap:1rem;justify-content:space-between;padding:.75rem 1.1rem}.aa-header-left{align-items:center;display:flex;gap:.75rem;min-width:0}.aa-back-btn{background:none;border:1px solid #ddd;border:1px solid var(--pb-border-soft,#ddd);border-radius:6px;color:#555;color:var(--pb-fg-2,#555);cursor:pointer;font-size:.8rem;padding:.3rem .65rem;transition:background .15s,color .15s;white-space:nowrap}.aa-back-btn:hover{background:#f5f5f5;background:var(--pb-bg-muted,#f5f5f5)}.aa-back-btn:hover,.aa-header-title{color:#111;color:var(--pb-fg-1,#111)}.aa-header-title{align-items:center;display:flex;font-size:.95rem;font-weight:700;gap:.4rem}.aa-header-icon{color:#7f77dd;font-size:1rem}.aa-header-paper{color:#999;color:var(--pb-fg-3,#999);font-size:.78rem;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aa-header-actions{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.aa-clear-btn,.aa-refresh-btn{background:none;border:1px solid #ddd;border:1px solid var(--pb-border-soft,#ddd);border-radius:6px;color:#888;color:var(--pb-fg-3,#888);cursor:pointer;font-size:.78rem;padding:.3rem .65rem;transition:background .15s,color .15s;white-space:nowrap}.aa-refresh-btn:hover{background:#f5f5f5;background:var(--pb-bg-muted,#f5f5f5);color:#111;color:var(--pb-fg-1,#111)}.aa-clear-btn{border-color:#f5c6c3;color:#c0392b}.aa-clear-btn:hover{background:#fff0ef;color:#a93226}.aa-filter-bar{align-items:center;background:#f9f9f9;background:var(--pb-bg-muted,#f9f9f9);border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--pb-border-soft,#e8e8e8);display:flex;flex-shrink:0;flex-wrap:wrap;gap:.5rem;padding:.55rem 1.25rem}.aa-filter-label{color:#888;color:var(--pb-fg-3,#888);font-size:.75rem;font-weight:600;white-space:nowrap}.aa-filter-chips{display:flex;flex-wrap:wrap;gap:.35rem}.aa-filter-chip{background:#fff;background:var(--pb-bg-surface,#fff);border:1px solid #ddd;border:1px solid var(--pb-border-soft,#ddd);border-radius:99px;color:#555;color:var(--pb-fg-2,#555);cursor:pointer;font-size:.75rem;padding:.25rem .7rem;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.aa-filter-chip:hover{background:#f5f5f5;background:var(--pb-bg-muted,#f5f5f5)}.aa-filter-chip--active{background:#7f77dd;border-color:#7f77dd;color:#fff;font-weight:600}.aa-filter-chip--active:hover{background:#6a63c8;border-color:#6a63c8}.aa-filter-custom{align-items:center;display:flex;gap:.4rem}.aa-date-input{background:#fff;background:var(--pb-bg-surface,#fff);border:1px solid #ddd;border:1px solid var(--pb-border-soft,#ddd);border-radius:6px;color:#111;color:var(--pb-fg-1,#111);font-size:.75rem;outline:none;padding:.22rem .5rem}.aa-date-input:focus{border-color:#7f77dd}.aa-date-sep{color:#888;color:var(--pb-fg-3,#888);font-size:.75rem}.aa-filter-active-label{color:#888;color:var(--pb-fg-3,#888);font-size:.73rem;margin-left:auto}.aa-filter-active-label strong{color:#6257c8}.aa-stat-strip{background:#fff;background:var(--pb-bg-surface,#fff);border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--pb-border-soft,#e8e8e8);display:flex;flex-shrink:0;gap:.75rem;overflow-x:auto;padding:1rem 1.25rem}.aa-stat-loading{align-self:center;color:#999;color:var(--pb-fg-3,#999);font-size:.82rem;padding:.4rem 0}.aa-stat-card{border-radius:12px;display:flex;flex:1 1 160px;flex-direction:column;gap:.3rem;min-width:150px;padding:1rem 1.1rem .85rem}.aa-stat-card:first-child{background:#f0eeff}.aa-stat-card:nth-child(2){background:#edfaf4}.aa-stat-card:nth-child(3){background:#fff5ed}.aa-stat-icon{font-size:1.25rem;line-height:1;margin-bottom:.2rem}.aa-stat-label{color:#555;color:var(--pb-fg-2,#555);font-size:.72rem;font-weight:600;letter-spacing:.01em}.aa-stat-value{color:#111;color:var(--pb-fg-1,#111);font-size:1.6rem;font-weight:800;line-height:1.1}.aa-stat-card:first-child .aa-stat-value{color:#6257c8}.aa-stat-card:nth-child(2) .aa-stat-value{color:#1a8a65}.aa-stat-card:nth-child(3) .aa-stat-value{color:#c4712e}.aa-stat-sub{color:#888;color:var(--pb-fg-3,#888);font-size:.75rem;margin-top:.05rem}.aa-chat-body{flex:1 1;overflow-y:auto}.aa-chat-body,.aa-welcome{display:flex;flex-direction:column}.aa-welcome{align-items:center;margin:auto;max-width:560px;padding:2.5rem 1.5rem;text-align:center}.aa-welcome-icon{color:#7f77dd;font-size:2.2rem;line-height:1;margin-bottom:.65rem}.aa-welcome-title{color:#111;color:var(--pb-fg-1,#111);font-size:1.15rem;font-weight:700;margin:0 0 .5rem}.aa-welcome-sub{color:#555;color:var(--pb-fg-2,#555);font-size:.87rem;line-height:1.55;margin:0 0 1.5rem}.aa-suggestions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.aa-suggestion-chip{background:#f5f5f5;background:var(--pb-bg-muted,#f5f5f5);border:1px solid #ddd;border:1px solid var(--pb-border-soft,#ddd);border-radius:99px;color:#444;color:var(--pb-fg-2,#444);cursor:pointer;font-size:.8rem;line-height:1.3;padding:.42rem .9rem;text-align:left;transition:background .15s,border-color .15s,color .15s}.aa-suggestion-chip:hover:not(:disabled){background:#f0eeff;border-color:#7f77dd;color:#5b52c8}.aa-suggestion-chip:disabled{cursor:not-allowed;opacity:.5}.aa-messages{display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.aa-msg{display:flex}.aa-msg--user{justify-content:flex-end}.aa-msg--assistant{justify-content:flex-start}.aa-msg-bubble{border-radius:14px;font-size:.88rem;line-height:1.55;max-width:80%;padding:.65rem .95rem}.aa-msg-bubble--user{background:#7f77dd;border-bottom-right-radius:4px;color:#fff}.aa-msg-bubble--assistant{background:#f5f5f5;background:var(--pb-bg-muted,#f5f5f5);border:1px solid #e8e8e8;border:1px solid var(--pb-border-soft,#e8e8e8);border-bottom-left-radius:4px;color:#111;color:var(--pb-fg-1,#111);max-width:88%}.aa-msg-bubble--assistant p{margin:0 0 .5rem}.aa-msg-bubble--assistant p:last-child{margin-bottom:0}.aa-msg-bubble--assistant ol,.aa-msg-bubble--assistant ul{margin:.3rem 0 .5rem 1.2rem;padding:0}.aa-msg-bubble--assistant li{margin-bottom:.2rem}.aa-msg-bubble--assistant strong{font-weight:700}.aa-msg-bubble--assistant h2,.aa-msg-bubble--assistant h3{color:#111;color:var(--pb-fg-1,#111);font-size:.88rem;font-weight:700;margin:.6rem 0 .25rem}.aa-msg-bubble--assistant table{border-collapse:collapse;font-size:.82rem;margin-top:.5rem;width:100%}.aa-msg-bubble--assistant td,.aa-msg-bubble--assistant th{border:1px solid #ddd;border:1px solid var(--pb-border-soft,#ddd);padding:.3rem .55rem;text-align:left}.aa-msg-bubble--assistant th{background:#efefef;background:var(--pb-bg-muted-2,#efefef);font-weight:600}.aa-msg-bubble--thinking{padding:.55rem .9rem}.aa-dots{align-items:center;display:flex;gap:4px;height:18px}.aa-dots span{animation:aa-dot-bounce 1.2s ease-in-out infinite;background:#7f77dd;border-radius:50%;height:6px;width:6px}.aa-dots span:nth-child(2){animation-delay:.2s}.aa-dots span:nth-child(3){animation-delay:.4s}@keyframes aa-dot-bounce{0%,80%,to{opacity:.4;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}.aa-input-row{background:#fff;background:var(--pb-bg-surface,#fff);border-top:1px solid #e8e8e8;border-top:1px solid var(--pb-border-soft,#e8e8e8);display:flex;flex-shrink:0;gap:.5rem;padding:.8rem 1.1rem}.aa-input{background:#f5f5f5;background:var(--pb-bg-muted,#f5f5f5);border:1px solid #ddd;border:1px solid var(--pb-border-soft,#ddd);border-radius:8px;color:#111;color:var(--pb-fg-1,#111);flex:1 1;font-size:.88rem;outline:none;padding:.55rem .85rem;transition:border-color .15s,background .15s}.aa-input:focus{background:#fff;background:var(--pb-bg-surface,#fff);border-color:#7f77dd}.aa-input:disabled{cursor:not-allowed;opacity:.6}.aa-send-btn{background:#7f77dd;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.88rem;font-weight:600;padding:.55rem 1.2rem;transition:background .15s;white-space:nowrap}.aa-send-btn:hover:not(:disabled){background:#6a63c8}.aa-send-btn:disabled{cursor:not-allowed;opacity:.5}.php-overlay{background:#00000059;display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:500}.php-panel{animation:php-slide-in .2s ease;background:#fff;box-shadow:-4px 0 24px #0000001f;display:flex;flex-direction:column;height:100%;max-width:95vw;width:380px}@keyframes php-slide-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}.php-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.php-title{color:#1a1a1a;font-size:15px;font-weight:600}.php-close{background:none;border:none;color:#666;cursor:pointer;font-size:20px;line-height:1;padding:0 4px}.php-body{flex:1 1;overflow-y:auto;padding:16px 20px}.php-empty,.php-error,.php-loading{color:#888;font-size:13px;margin-top:32px;text-align:center}.php-error{color:#d32f2f}.php-group{margin-bottom:24px}.php-group-label{color:#999;font-size:11px;font-weight:700;letter-spacing:.06em;margin-bottom:10px;text-transform:uppercase}.php-row{background:#fafafa;border:1px solid #e8e8e8;border-radius:8px;margin-bottom:8px;overflow:hidden;transition:border-color .15s}.php-row--active{background:#f5f4ff;border-color:#7f77dd}.php-row-meta{display:flex;flex-direction:column;gap:10px;padding:12px 14px}.php-row-left{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.php-type-badge{background:#ede9ff;border-radius:99px;color:#5b52c8;font-size:11px;font-weight:600;padding:2px 7px}.php-summary{color:#555;font-size:12px}.php-date{color:#aaa;font-size:11px}.php-active-badge{background:#7f77dd;border-radius:99px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.05em;padding:2px 6px;text-transform:uppercase}.php-row-actions{display:flex;flex-wrap:wrap;gap:6px}.php-btn{background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:12px;padding:5px 12px;transition:background .15s}.php-btn:disabled{cursor:not-allowed;opacity:.5}.php-plan-name{cursor:pointer;padding:2px 0}.php-name-text{color:#1a1a1a;font-size:13px;font-weight:600}.php-name-placeholder{color:#bbb;font-size:12px}.php-plan-name:hover .php-name-placeholder{color:#7f77dd}.php-rename-row{align-items:center;display:flex;gap:6px}.php-rename-input{border:1px solid #7f77dd;border-radius:6px;flex:1 1;font-size:13px;outline:none;padding:5px 8px}.php-btn--duplicate{border-color:#aaa;color:#444}.php-btn--duplicate:hover:not(:disabled){background:#f5f4ff;border-color:#7f77dd;color:#5b52c8}.php-btn--activate{border-color:#7f77dd;color:#7f77dd}.php-btn--activate:hover:not(:disabled){background:#7f77dd;color:#fff}.php-btn--delete:hover:not(:disabled){background:#fff0f0;border-color:#e57373;color:#c62828}.php-btn--preview{border-color:#aaa;color:#444}.php-btn--preview:hover:not(:disabled){background:#f0f0f0}.php-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.php-modal{background:#fff;border-radius:14px;box-shadow:0 12px 48px #0000002e;display:flex;flex-direction:column;max-height:85vh;max-width:95vw;overflow:hidden;width:720px}.php-modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-shrink:0;justify-content:space-between;padding:14px 20px}.php-modal-title{color:#333;font-size:14px;font-weight:600}.php-modal-header-actions{align-items:center;display:flex;gap:10px}.php-modal-body{display:flex;flex:1 1;flex-direction:column;overflow-y:auto}.php-drawer-save{background:#7f77dd;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:5px 14px;transition:background .15s}.php-drawer-save:hover:not(:disabled){background:#6a63c8}.php-drawer-save:disabled{cursor:not-allowed;opacity:.6}.php-drawer-save--saved{background:#1d9e75}.php-drawer-save--saved:hover:not(:disabled){background:#178a63}.php-bank-section{border-top:1px solid #f0f0f0;padding:14px 20px 18px}.php-bank-row{align-items:center;display:flex;gap:10px}.php-bank-label{color:#444;flex:1 1;font-size:13px;font-weight:600}.php-bank-input{border:1px solid #ddd;border-radius:6px;color:#333;font-size:13px;padding:4px 8px;text-align:center;width:64px}.php-bank-input:focus{border-color:#7f77dd;outline:none}.php-bank-of{color:#888;font-size:12px;white-space:nowrap}.mhs{display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding:1.25rem}.mhs-topbar{align-items:center;display:flex}.mhs-back-btn{background:none;border:none;color:#888;cursor:pointer;font-size:.82rem;padding:.25rem .5rem .25rem 0;transition:color .15s}.mhs-back-btn:hover{color:#333}.mhs-create-btn{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:.4rem .9rem;transition:background .15s}.mhs--cycle .mhs-create-btn{background:#e07a10}.mhs--cycle .mhs-create-btn:hover{background:#c8680c}.mhs--test .mhs-create-btn{background:var(--pb-blue)}.mhs--test .mhs-create-btn:hover{background:var(--pb-blue-hover)}.mhs-create-btn--full{border-radius:8px;padding:.65rem .9rem;text-align:center;width:100%}.mhs-heading{align-items:center;display:flex;gap:.65rem}.mhs-heading-icon{font-size:1.6rem;line-height:1}.mhs-title{color:#1a1a1a;font-size:1rem;font-weight:700;margin:0}.mhs-subtitle{color:#888;font-size:.78rem;margin:0;max-width:480px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mhs-list{display:flex;flex-direction:column;gap:.6rem}.mhs-state-msg{color:#999;font-size:.82rem;margin:.5rem 0;text-align:center}.mhs-state-msg--error{color:#d32f2f}.mhs-row{background:#f4f4f4;border:1px solid #c7c7c7;border-radius:8px;display:flex;flex-direction:column;gap:.55rem;padding:.75rem .9rem;transition:border-color .15s}.mhs--cycle .mhs-row--active{background:#fffaf4;border-color:#e07a10}.mhs--test .mhs-row--active{background:#f2f8f4;border-color:#3a7d50}.mhs-row-top{display:flex;flex-direction:column;gap:.3rem}.mhs-row-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.mhs-summary{color:#2a2a2a;font-size:.78rem}.mhs-date{color:#8e8e8e;font-size:.72rem}.mhs-active-badge{border-radius:99px;color:#fff;font-size:.65rem;font-weight:700;letter-spacing:.05em;padding:2px 6px;text-transform:uppercase}.mhs--cycle .mhs-active-badge{background:#e07a10}.mhs--test .mhs-active-badge{background:var(--pb-blue)}.mhs-plan-name{cursor:pointer}.mhs-name-text{color:#1a1a1a;font-size:.85rem;font-weight:600}.mhs-name-placeholder{color:#8e8e8e;font-size:.78rem}.mhs-plan-name:hover .mhs-name-placeholder{color:#555}.mhs-rename-row{align-items:center;display:flex;gap:.4rem}.mhs-rename-input{border-radius:6px;flex:1 1;font-size:.82rem;outline:none;padding:4px 8px}.mhs--cycle .mhs-rename-input{border:1px solid #e07a10}.mhs--test .mhs-rename-input{border:1px solid var(--pb-blue)}.mhs-row-actions{display:flex;flex-wrap:wrap;gap:.4rem}.mhs-btn{background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:.75rem;padding:4px 10px;transition:background .15s,border-color .15s}.mhs-btn:disabled{cursor:not-allowed;opacity:.5}.mhs-btn--save{border-color:#7f77dd;color:#7f77dd}.mhs-btn--save:hover:not(:disabled){background:#7f77dd;color:#fff}.mhs-btn--preview:hover:not(:disabled){background:#f0f0f0}.mhs-btn--duplicate:hover:not(:disabled){background:#f5f4ff;border-color:#7f77dd;color:#5b52c8}.mhs--cycle .mhs-btn--activate{border-color:#e07a10;color:#e07a10}.mhs--cycle .mhs-btn--activate:hover:not(:disabled){background:#e07a10;color:#fff}.mhs--test .mhs-btn--activate{border-color:var(--pb-blue);color:var(--pb-blue)}.mhs--test .mhs-btn--activate:hover:not(:disabled){background:var(--pb-blue);color:#fff}.mhs-btn--delete:hover:not(:disabled){background:#fff0f0;border-color:#e57373;color:#c62828}.mhs-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.mhs-modal{background:#fff;border-radius:14px;box-shadow:0 12px 48px #0000002e;display:flex;flex-direction:column;max-height:85vh;max-width:95vw;overflow:hidden;width:720px}.mhs-modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-shrink:0;justify-content:space-between;padding:14px 20px}.mhs-modal-title{color:#333;font-size:14px;font-weight:600}.mhs-modal-header-actions{align-items:center;display:flex;gap:10px}.mhs-modal-body{display:flex;flex:1 1;flex-direction:column;overflow-y:auto}.mhs-modal-close{background:none;border:none;color:#666;cursor:pointer;font-size:20px;line-height:1;padding:0 4px}.mhs-modal-save{background:#7f77dd;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:5px 14px;transition:background .15s}.mhs-modal-save:hover:not(:disabled){background:#6a63c8}.mhs-modal-save:disabled{cursor:not-allowed;opacity:.6}.mhs-modal-save--saved{background:#1d9e75}.mhs-modal-save--saved:hover:not(:disabled){background:#178a63}.mhs-retake-section{border-top:1px solid #f0f0f0;display:flex;flex-direction:column;gap:6px;padding:10px 20px 12px}.mhs-retake-section .retake-policy-header{margin-bottom:0}.mhs-retake-section .info-tooltip-popup{bottom:calc(100% + 6px);top:auto}.mhs-retake-section .retake-policy-options{flex-direction:row;flex-wrap:wrap;gap:4px 16px}.mhs-retake-label{color:#444;font-size:13px;font-weight:600}.mhs-per-student-row{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;gap:10px;padding-bottom:10px}.mhs-per-student-label{color:#444;flex:1 1;font-size:13px;font-weight:600}.mhs-per-student-input{border:1px solid #ddd;border-radius:6px;color:#333;font-size:13px;padding:4px 8px;text-align:center;width:64px}.mhs-per-student-input:focus{border-color:#7f77dd;outline:none}.mhs-per-student-of{color:#888;font-size:12px;white-space:nowrap}.chat-section{background:var(--pb-bg-chat);display:flex;flex:0 0 40%;flex-direction:column;height:100%;min-height:0;position:relative}.chat-section--analytics{background:var(--pb-bg-muted);overflow:hidden}.chat-section--analytics .ia-panel{flex:1 1;height:100%;min-height:0}.chat-thinking-bar{background:#0000;flex-shrink:0;height:3px;overflow:hidden;position:relative}.chat-thinking-bar--active{background:#e0e7ff}.chat-thinking-bar--active:after{animation:thinking-sweep var(--pb-dur-think) ease-in-out infinite;background:linear-gradient(90deg,#0000,var(--pb-indigo),#0000);content:"";height:100%;left:-40%;position:absolute;top:0;width:40%}@keyframes thinking-sweep{0%{left:-40%}to{left:100%}}.chat-header{background:var(--pb-bg-surface);border-bottom:1px solid var(--pb-border);padding:.65rem 1rem}.chat-header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:.25rem}.chat-header-top--centered{position:relative}.chat-header-h3--center{left:50%;pointer-events:none;position:absolute;transform:translateX(-50%)}.chat-header-row{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.chat-header-row--sub{align-items:center;margin-top:0}.chat-header-title{font-size:var(--pb-ts-h3);margin:0}.chat-header-subtitle{color:var(--pb-fg-4);flex:1 1;font-size:var(--pb-ts-small);margin:0}.chat-header h3{font-size:var(--pb-ts-h3);margin:0}.chat-header p{color:var(--pb-fg-4);font-size:var(--pb-ts-small);margin:0}.mode-toggle{border:1px solid var(--pb-border);border-radius:var(--pb-r-5);display:flex;gap:0;overflow:hidden}.mode-toggle--large .mode-btn{font-size:.88rem;font-weight:var(--pb-w-semi);padding:.28rem .9rem}.mode-btn{background:var(--pb-bg-surface);border:none;border-right:1px solid var(--pb-border);color:var(--pb-fg-3);cursor:pointer;font-size:.8rem;line-height:1;margin:0;padding:.25rem .75rem}.mode-btn:last-child{border-right:none}.mode-btn.active{background:var(--pb-blue);border-right-color:var(--pb-blue);color:var(--pb-bg-surface)}.mode-btn:hover:not(.active){background:var(--pb-bg-page)}.chat-header--instructor{background:#f0f4ff;border-bottom-color:#c5d3f5}.chat-header--instructor h3{color:#2a4db5}.chat-header-actions{align-items:center;display:flex;gap:.4rem}.mode-toggle-segment{border:1px solid #d1d5db;border-radius:6px;display:flex;overflow:hidden}.mode-toggle-btn{background:#fff;border:none;border-right:1px solid #d1d5db;color:#6b7280;cursor:pointer;font-size:.76rem;font-weight:500;padding:.22rem .6rem;transition:background .15s,color .15s;white-space:nowrap}.mode-toggle-btn:last-child{border-right:none}.mode-toggle-btn:hover:not(:disabled):not(.mode-toggle-btn--active){background:#f3f4f6;color:#374151}.mode-toggle-btn--active{background:#7f77dd;color:#fff;font-weight:600}.mode-toggle-btn:disabled{cursor:not-allowed;opacity:.5}.new-chat-btn{background:var(--pb-green);border:none;border-radius:var(--pb-r-4);color:var(--pb-bg-surface);cursor:pointer;font-size:var(--pb-ts-xxs);font-weight:var(--pb-w-semi);padding:.25rem .65rem;white-space:nowrap}.new-chat-btn:hover:not(:disabled){background:var(--pb-green-hover)}.new-chat-btn:disabled{background:var(--pb-green-border-2);cursor:not-allowed}.chat-history-btn{background:var(--pb-border-soft);border:none;border-radius:var(--pb-r-4);color:var(--pb-fg-2);cursor:pointer;font-size:var(--pb-ts-xxs);font-weight:var(--pb-w-med);padding:.25rem .65rem;white-space:nowrap}.chat-history-btn:hover{background:#d1d5db}.chat-history-panel{background:var(--pb-bg-surface);border-bottom:1px solid var(--pb-border-soft);box-shadow:var(--pb-shadow-pop)}.chat-history-title{color:var(--pb-fg-5);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-semi);letter-spacing:.05em;padding:.5rem .85rem .3rem;text-transform:uppercase}.chat-history-item{align-items:center;background:none;border:none;border-top:1px solid var(--pb-border-softer);cursor:pointer;display:flex;gap:.5rem;padding:.5rem .85rem;text-align:left;width:100%}.chat-history-item:hover{background:var(--pb-bg-muted)}.chat-history-item--active{background:var(--pb-blue-soft)}.chat-history-preview{color:var(--pb-fg-2);flex:1 1;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-history-item--active .chat-history-preview{color:var(--pb-blue-fg);font-weight:var(--pb-w-med)}.chat-history-date{color:var(--pb-fg-5);font-size:var(--pb-ts-micro);white-space:nowrap}.chat-ctx-backdrop{inset:0;position:fixed;z-index:999}.chat-ctx-menu{background:var(--pb-bg-surface);border:1px solid var(--pb-border);border-radius:6px;box-shadow:var(--pb-shadow-pop);min-width:160px;padding:3px;position:fixed;z-index:1000}.chat-ctx-item{background:none;border:none;border-radius:4px;cursor:pointer;display:block;font-size:.82rem;padding:.4rem .75rem;text-align:left;width:100%}.chat-ctx-item--danger{color:#dc2626}.chat-ctx-item--danger:hover{background:#fef2f2}.test-assist-btns{display:flex;gap:.5rem;margin-top:8px}.test-assist-btns .point-to-text-btn{flex:1 1;margin-top:0}.point-to-text-btn{background:#fff;border:1px solid #c4c0f0;border-radius:5px;color:#7f77dd;cursor:pointer;display:block;font-size:.78rem;font-weight:500;margin-top:8px;padding:.35rem .75rem;text-align:center;transition:background .15s,border-color .15s;width:100%}.point-to-text-btn:hover:not(:disabled){background:#f5f3ff;border-color:#7f77dd}.point-to-text-btn:disabled{cursor:not-allowed;opacity:.45}.mcq-inline-options{display:flex;flex-direction:column;gap:.4rem;margin-top:.75rem}.mcq-question-text{background:#f5f3ff;border-left:3px solid #7f77dd;border-radius:4px;color:#333;font-size:.88rem;font-weight:600;line-height:1.4;margin-bottom:.4rem;padding:.5rem .6rem}.mcq-inline-choices{display:flex;flex-direction:column;gap:.35rem}.mcq-inline-btn{align-items:center;background:#fff;border:1.5px solid #c4c0f0;border-radius:8px;cursor:pointer;display:flex;font-size:.84rem;gap:.6rem;padding:.45rem .7rem;text-align:left;transition:background .15s,border-color .15s;width:100%}.mcq-inline-btn:hover{background:#f5f3ff;border-color:#7f77dd}.mcq-inline-btn--selected{background:#f0eeff;border-color:#7f77dd;border-width:2px}.mcq-option-letter{align-items:center;background:#7f77dd;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.75rem;font-weight:700;height:1.5rem;justify-content:center;width:1.5rem}.mcq-inline-btn--selected .mcq-option-letter{background:#5b52c4}.mcq-option-text{color:#333;line-height:1.3}.mcq-submit-btn{align-self:flex-end;background:#7f77dd;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.83rem;font-weight:600;margin-top:.25rem;padding:.35rem 1rem;transition:background .15s,opacity .15s}.mcq-submit-btn:hover:not(:disabled){background:#5b52c4}.mcq-submit-btn:disabled{cursor:not-allowed;opacity:.4}.mcq-multi-hint{color:#7f77dd;font-size:.78rem;font-weight:600;letter-spacing:.03em;margin:0 0 .35rem;text-transform:uppercase}.mcq-inline-btn--check{gap:.5rem}.mcq-checkbox{align-items:center;background:#fff;border:2px solid #c4c0f0;border-radius:4px;color:#fff;display:inline-flex;flex-shrink:0;font-size:.75rem;font-weight:700;height:1.2rem;justify-content:center;transition:background .15s,border-color .15s;width:1.2rem}.mcq-checkbox--checked{background:#7f77dd;border-color:#7f77dd}.cycle-next-bar{border-top:1px solid var(--pb-border-soft);display:flex;gap:.5rem;justify-content:flex-end;padding:.5rem .75rem}.cycle-next-btn{background:#4f46e5;background:var(--pb-indigo-deep,#4f46e5);border:none;border-radius:var(--pb-r-5);color:#fff;cursor:pointer;font-size:.82rem;font-weight:600;padding:.35rem 1rem;transition:background .15s}.cycle-next-btn:hover:not(:disabled){background:#6366f1;background:var(--pb-indigo,#6366f1)}.cycle-next-btn:disabled{background:#d1d5db;color:#9ca3af;cursor:not-allowed}.cycle-visual-btn{background:#0000;border:1.5px solid #4f46e5;border:1.5px solid var(--pb-indigo-deep,#4f46e5);border-radius:var(--pb-r-5);color:#4f46e5;color:var(--pb-indigo-deep,#4f46e5);cursor:pointer;font-size:.82rem;font-weight:600;padding:.35rem 1rem;transition:background .15s,color .15s}.cycle-visual-btn:hover{background:#4f46e5;background:var(--pb-indigo-deep,#4f46e5);color:#fff}.test-change-btn{background:var(--pb-bg-surface);border:1px solid var(--pb-border);border-radius:var(--pb-r-3);color:var(--pb-fg-3);cursor:pointer;font-size:.75rem;padding:.25rem .5rem}.test-change-btn:hover{background:var(--pb-bg-page)}.chat-reset-btn{background:var(--pb-bg-surface);border:1px solid var(--pb-border);border-radius:var(--pb-r-3);color:var(--pb-fg-3);cursor:pointer;font-size:.75rem;padding:.25rem .6rem;transition:background .12s,color .12s}.chat-reset-btn:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5;color:#dc2626}.chat-reset-btn:disabled{cursor:not-allowed;opacity:.4}.instructor-home{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding:1rem 1.25rem}.instructor-home-title{color:var(--pb-fg);font-size:1.1rem;font-weight:var(--pb-w-bold);margin:0 0 .2rem}.instructor-home-subtitle{color:var(--pb-fg-3);font-size:.85rem;margin:0 0 .75rem}.instructor-home-cards{display:flex;flex:1 1;flex-direction:column;gap:.55rem;min-height:0}.instructor-home-card{grid-column-gap:.7rem;grid-row-gap:.25rem;align-items:start;background:var(--pb-bg-surface);border:1px solid var(--pb-border);border-radius:var(--pb-r-7);column-gap:.7rem;display:grid;flex:0 0 auto;grid-template-columns:auto 1fr;grid-template-rows:auto auto auto;min-height:0;padding:.7rem .9rem;row-gap:.25rem}.instructor-home-card-icon{
  /* !important to survive the dynamic chat-zoom font override (.chat-section *) */font-size:1.3rem!important;grid-column:1;grid-row:1/-1;line-height:1}.instructor-home-card h3{color:var(--pb-fg);font-size:.92rem;font-weight:var(--pb-w-semi);grid-column:2;grid-row:1;margin:0}.instructor-home-card p{color:var(--pb-fg-3);font-size:.78rem;grid-column:2;grid-row:2;line-height:1.4;margin:0}.instructor-home-card-btn{align-self:start;background:var(--pb-blue);border:none;border-radius:var(--pb-r-5);color:#fff;cursor:pointer;font-size:.8rem;font-weight:var(--pb-w-med);grid-column:2;grid-row:3;justify-self:start;margin-top:.2rem;padding:.35rem .9rem;transition:background .15s}.instructor-home-card-btn:hover:not(:disabled){background:var(--pb-blue-hover)}.instructor-home-card--featured{background:#fffaf4;border-color:#f0a04a}.instructor-home-card--blue{background:var(--pb-blue-soft);border-color:var(--pb-blue-border)}.instructor-home-card-btn--featured{background:#e07a10}.instructor-home-card-btn--featured:hover:not(:disabled){background:#c8680c}.instructor-home-card--qa{background:#f5f3ff;border-color:#a78bfa}.instructor-home-card-btn--qa{background:#6d28d9}.instructor-home-card-btn--qa:hover:not(:disabled){background:#5b21b6}.instructor-home-card--test{background:#f2f8f4;border-color:#3a7d50}.instructor-home-card-btn--test{background:var(--pb-blue)}.instructor-home-card-btn--test:hover:not(:disabled){background:var(--pb-blue-hover)}.instructor-home-card--guidelines{background:#fff0f5;border-color:#e8a0b8}.instructor-home-card-btn--guidelines{background:#c8577a}.instructor-home-card-btn--guidelines:hover:not(:disabled){background:#b04468}.instructor-home-card--active{box-shadow:0 0 0 2px currentColor}.instructor-home-card--featured.instructor-home-card--active{box-shadow:0 0 0 2px #e07a10}.instructor-home-card--test.instructor-home-card--active{box-shadow:0 0 0 2px var(--pb-blue)}.instructor-home-active-badge{background:#16a34a;border-radius:99px;color:#fff;display:inline-block;
  /* !important to survive the dynamic chat-zoom font override (.chat-section *) */font-size:10px!important;font-weight:600;letter-spacing:.04em;margin-left:6px;padding:1px 6px;text-transform:uppercase;vertical-align:middle}.instructor-home-card--assistant{background:#f5f3ff;border-color:#c4bfee}.instructor-home-card-btn--assistant{background:#7f77dd}.instructor-home-card-btn--assistant:hover:not(:disabled){background:#6a63c8}.guided-empty-state{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;gap:.5rem;min-height:100%;padding:1rem 1.25rem 1.25rem;text-align:center}.guided-empty-icon{font-size:1.7rem;line-height:1}.guided-empty-heading{color:var(--pb-fg);font-size:1rem;font-weight:var(--pb-w-semi);margin:0}.guided-empty-hint{color:var(--pb-fg-3);font-size:.82rem;line-height:1.5;margin:0;max-width:340px}.guided-structure-page{display:flex;flex:1 1;flex-direction:column;gap:.75rem;overflow:hidden;padding:1rem}.guided-structure-intro{align-items:flex-start;display:flex;gap:.75rem}.guided-structure-intro p{color:var(--pb-fg-3);flex:1 1;font-size:.8rem;line-height:1.5;margin:0}.guided-structure-scroll{display:flex;flex:1 1;flex-direction:column;gap:.75rem;min-height:0;overflow-y:auto}.guided-structure-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;overflow-y:visible;padding:0}.guided-structure-item{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-7);display:flex;flex-direction:column;gap:.4rem;padding:.7rem .85rem;transition:border-color var(--pb-dur-fast),box-shadow var(--pb-dur-fast)}.guided-structure-item:hover{border-color:var(--pb-indigo-border);box-shadow:var(--pb-shadow-card)}.guided-structure-item:focus-within{border-color:var(--pb-cycle);box-shadow:0 0 0 2px #7f77dd26}.guided-structure-item-header{align-items:center;display:flex;gap:.5rem}.guided-structure-move-btns{display:flex;flex-direction:column;gap:1px}.guided-structure-move-btn{background:none;border:none;border-radius:var(--pb-r-3);color:var(--pb-fg-5);cursor:pointer;font-size:.7rem;line-height:1;padding:.1rem .2rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast)}.guided-structure-move-btn:hover:not(:disabled){background:var(--pb-indigo-soft);color:var(--pb-cycle)}.guided-structure-move-btn:disabled{cursor:default;opacity:.25}.guided-structure-item-num{background:var(--pb-cycle);border-radius:var(--pb-r-3);color:var(--pb-bg-surface);flex-shrink:0;font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);min-width:1.25rem;padding:.1rem .45rem;text-align:center;white-space:nowrap}.guided-structure-item-title{background:#0000;border:none;border-radius:var(--pb-r-4);color:var(--pb-fg);flex:1 1;font-family:inherit;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-semi);margin-left:-.35rem;min-width:0;outline:none;padding:.15rem .35rem;transition:background var(--pb-dur-fast)}.guided-structure-item-title:hover{background:var(--pb-bg-subtle)}.guided-structure-item-title:focus{background:var(--pb-indigo-soft)}.guided-structure-item-pages{background:var(--pb-bg-strip);border:1px solid var(--pb-border-softer);border-radius:var(--pb-r-pill);color:var(--pb-fg-4);flex-shrink:0;font-size:var(--pb-ts-micro);padding:.1rem .5rem;white-space:nowrap}.guided-structure-item-remove{background:none;border:none;border-radius:var(--pb-r-3);color:var(--pb-fg-5);cursor:pointer;flex-shrink:0;font-size:.85rem;line-height:1;padding:.15rem .3rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast)}.guided-structure-item-remove:hover:not(:disabled){background:var(--pb-error-soft);color:var(--pb-error)}.guided-structure-item-remove:disabled{cursor:default;opacity:.3}.guided-structure-item-desc{background:#0000;border:none;border-radius:var(--pb-r-4);border-top:1px solid var(--pb-border-softer);box-sizing:border-box;color:var(--pb-fg-4);font-family:inherit;font-size:var(--pb-ts-xxs);line-height:1.5;outline:none;padding:.4rem .35rem .1rem;resize:none;transition:background var(--pb-dur-fast),color var(--pb-dur-fast);width:100%}.guided-structure-item-desc:hover{background:var(--pb-bg-subtle)}.guided-structure-item-desc:focus{background:var(--pb-indigo-soft);color:var(--pb-fg-2)}.guided-structure-bottom-row{align-items:stretch;display:flex;gap:.6rem}.guided-structure-bottom-row .sections-popup-regen-btn{background:#fffaf4;border:1px solid #f0a04a;border-radius:8px;border-radius:var(--pb-r-5,8px);color:#e07a10;font-size:.85rem;font-weight:600;padding:.55rem 1rem;white-space:nowrap}.guided-structure-bottom-row .sections-popup-regen-btn:hover:not(:disabled){background:#fff0df;border-color:#e07a10;color:#c8680c}.guided-structure-add-btn{background:#e07a10;border:none;border-radius:8px;border-radius:var(--pb-r-5,8px);color:#fff;cursor:pointer;flex:1 1;font-family:inherit;font-size:.85rem;font-weight:600;padding:.55rem 1rem;transition:background .15s,box-shadow .15s}.guided-structure-add-btn:hover{background:#c8680c;box-shadow:0 2px 6px #e07a1059}.guided-structure-ai-row{display:flex;flex-shrink:0;gap:.4rem}.guided-structure-ai-input{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);color:var(--pb-fg);flex:1 1;font-family:inherit;font-size:var(--pb-ts-xxs);outline:none;padding:.4rem .65rem;transition:border-color var(--pb-dur-fast),box-shadow var(--pb-dur-fast)}.guided-structure-ai-input:focus{border-color:var(--pb-indigo);box-shadow:var(--pb-focus-ring-indigo)}.guided-structure-ai-input:disabled{opacity:.6}.guided-structure-ai-send{background:var(--pb-indigo);border:none;border-radius:var(--pb-r-5);color:#fff;cursor:pointer;font-size:var(--pb-ts-xxs);font-weight:var(--pb-w-semi);padding:.4rem .85rem;transition:background var(--pb-dur-fast),opacity var(--pb-dur-fast);white-space:nowrap}.guided-structure-ai-send:hover:not(:disabled){background:var(--pb-indigo-deep)}.guided-structure-ai-send:disabled{cursor:default;opacity:.45}.guided-structure-ai-status{color:#6c757d;color:var(--pb-text-secondary,#6c757d);flex-shrink:0;font-size:.75rem;font-style:italic;margin:0}.guided-structure-footer{align-items:center;display:flex;flex-shrink:0;gap:.5rem;justify-content:space-between;padding-top:.25rem}.guided-structure-back-btn{background:none;border:1px solid #e2e6ea;border:1px solid var(--pb-border-soft,#e2e6ea);border-radius:8px;border-radius:var(--pb-r-5,8px);color:#6c757d;color:var(--pb-text-secondary,#6c757d);cursor:pointer;font-size:.8rem;padding:.4rem .9rem;transition:background .15s}.guided-structure-back-btn:hover{background:#f8f9fa;background:var(--pb-bg-base,#f8f9fa)}.guided-structure-continue-btn{background:#e07a10;border:none;border-radius:8px;border-radius:var(--pb-r-5,8px);color:#fff;cursor:pointer;font-size:.82rem;font-weight:600;padding:.45rem 1.1rem;transition:background .15s,opacity .15s}.guided-structure-continue-btn:hover:not(:disabled){background:#c8680c}.guided-structure-continue-btn:disabled{cursor:default;opacity:.5}.guided-initial-textarea{background:var(--pb-bg-surface);border:1px solid var(--pb-border);border-radius:8px;border-radius:var(--pb-r-5,8px);box-sizing:border-box;color:var(--pb-fg);flex:1 1;font-family:inherit;font-size:.85rem;line-height:1.5;max-width:480px;min-height:5.5rem;padding:.75rem;resize:none;transition:border-color .15s;width:100%}.guided-initial-textarea:focus{border-color:#e07a10;outline:none}.guided-initial-textarea:disabled{opacity:.6}.guided-initial-send-btn{align-self:center;background:#e07a10;border:none;border-radius:8px;border-radius:var(--pb-r-5,8px);color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1.2rem;transition:background .15s,opacity .15s}.guided-initial-send-btn:hover:not(:disabled){background:#c8680c}.guided-initial-send-btn:disabled{cursor:default;opacity:.5}.guided-goals-page{display:flex;flex-direction:column;width:100%}.guided-goals-topbar{align-items:center;display:flex;justify-content:space-between;padding:0;width:100%}.guided-goals-back-btn{background:none;border:1px solid #e2e6ea;border:1px solid var(--pb-border-soft,#e2e6ea);border-radius:8px;border-radius:var(--pb-r-5,8px);color:#6c757d;color:var(--pb-text-secondary,#6c757d);cursor:pointer;font-size:.8rem;padding:.4rem .9rem;transition:background .15s}.guided-goals-back-btn:hover{background:#f8f9fa;background:var(--pb-bg-base,#f8f9fa)}.guided-goals-skip-btn{background:#e07a10;border:none;border-radius:8px;border-radius:var(--pb-r-5,8px);color:#fff;cursor:pointer;font-size:.82rem;font-weight:600;padding:.45rem 1.1rem;transition:background .15s,opacity .15s}.guided-goals-skip-btn:hover:not(:disabled){background:#c8680c}.guided-goals-skip-btn:disabled{cursor:default;opacity:.5}.chat-section--test-guided .guided-goals-skip-btn{background:var(--pb-blue)}.chat-section--test-guided .guided-goals-skip-btn:hover:not(:disabled){background:var(--pb-blue-hover)}.chat-section--test-guided .guided-structure-continue-btn{background:var(--pb-blue)}.chat-section--test-guided .guided-structure-continue-btn:hover:not(:disabled){background:var(--pb-blue-hover)}.guided-step-back-btn{align-self:flex-start;background:none;border:none;color:#888;cursor:pointer;font-size:.82rem;margin-top:.5rem;padding:.25rem 0}.guided-step-back-btn:hover{color:#444}.guided-flow-stepbar{background:#fff;background:var(--pb-bg-surface,#fff);border-bottom:1px solid #eee;border-bottom:1px solid var(--pb-border,#eee);display:flex;flex-shrink:0;justify-content:center;padding:.45rem 1rem}.guided-flow-stepbar .guided-step-bar{margin-bottom:0}.guided-step-bar{align-items:center;display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:1rem}.guided-step-label{border-radius:999px;color:#bbb;font-size:.78rem;font-weight:500;padding:.2rem .5rem;white-space:nowrap}.guided-step-label.past{color:#999}.guided-step-label.current{background:#fff0e0;color:#e07a10;font-weight:700}.guided-step-label--link{background:none;border:none;cursor:pointer;font-family:inherit;margin:0;transition:background .15s,color .15s}.guided-step-label--link:hover:not(:disabled){background:#fff0e0;color:#e07a10}.guided-step-label--link:disabled{cursor:default}.guided-step-sep{color:#ccc;font-size:.75rem}.guided-recommendation-bar{align-items:center;background:#fffaf4;border-top:1px solid #f0a04a;display:flex;flex-shrink:0;gap:.75rem;justify-content:space-between;padding:.65rem 1rem}.guided-recommendation-label{color:#7a4a10;font-size:.82rem;font-weight:500}.guided-take-me-btn{background:#e07a10;border:none;border-radius:8px;border-radius:var(--pb-r-5,8px);color:#fff;cursor:pointer;font-size:.82rem;font-weight:600;padding:.4rem 1rem;transition:background .15s;white-space:nowrap}.guided-take-me-btn:hover{background:#c8680c}.instructor-home-card-btn:disabled{cursor:default;opacity:.5}.guided-presets-page{display:flex;flex-direction:column;gap:.75rem;width:100%}.guided-presets-intro{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.guided-presets-intro p{color:var(--pb-fg-3);flex:1 1;font-size:.8rem;line-height:1.5;margin:0}.setup-card-actions-row{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.advanced-setup-btn{background:none;border:1px solid #e2e6ea;border:1px solid var(--pb-border-soft,#e2e6ea);border-radius:8px;border-radius:var(--pb-r-5,8px);color:#6c757d;color:var(--pb-text-secondary,#6c757d);cursor:pointer;font-size:.75rem;font-weight:500;padding:.35rem .75rem;transition:background .15s,border-color .15s,color .15s}.advanced-setup-btn:hover:not(:disabled){background:#f8f9fa;background:var(--pb-bg-base,#f8f9fa);border-color:#6c757d;border-color:var(--pb-text-secondary,#6c757d);color:#212529;color:var(--pb-text-primary,#212529)}.advanced-setup-btn:disabled{cursor:default;opacity:.4}.advanced-setup-btn.active{background:#f8f9fa;background:var(--pb-bg-base,#f8f9fa);border-color:#6c757d;border-color:var(--pb-text-secondary,#6c757d)}.advanced-setup-inline{border:1px solid #e2e6ea;border:1px solid var(--pb-border-soft,#e2e6ea);border-radius:8px;border-radius:var(--pb-r-5,8px);overflow:hidden}.advanced-setup-inline-header{align-items:center;background:#f8f9fa;background:var(--pb-bg-base,#f8f9fa);border-bottom:1px solid #e2e6ea;border-bottom:1px solid var(--pb-border-soft,#e2e6ea);display:flex;gap:.4rem;padding:.4rem .6rem}.advanced-setup-section-list{list-style:none;margin:0;max-height:320px;overflow-y:auto;padding:0}.advanced-setup-section-item{border-bottom:1px solid #e2e6ea;border-bottom:1px solid var(--pb-border-soft,#e2e6ea);padding:.55rem .75rem}.advanced-setup-section-item:last-child{border-bottom:none}.advanced-setup-section-top{align-items:baseline;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.3rem}.advanced-setup-section-title{color:#212529;color:var(--pb-text-primary,#212529);font-size:.8rem;font-weight:600}.advanced-setup-section-pages{color:#6c757d;color:var(--pb-text-secondary,#6c757d);flex:1 1;font-size:.72rem;white-space:nowrap}.advanced-setup-section-title.skipped{color:#6c757d;color:var(--pb-text-secondary,#6c757d);text-decoration:line-through}.advanced-setup-skip-btn{background:none;border:1px solid #e2e6ea;border:1px solid var(--pb-border-soft,#e2e6ea);border-radius:4px;color:#6c757d;color:var(--pb-text-secondary,#6c757d);cursor:pointer;font-size:.68rem;font-weight:500;padding:.1rem .45rem;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.advanced-setup-skip-btn:hover{background:#f8f9fa;background:var(--pb-bg-base,#f8f9fa)}.advanced-setup-skip-btn.active{background:#fde8e8;border-color:#e07070;color:#c0392b}.controls-dimmed{opacity:.35;pointer-events:none}.advanced-setup-section-notes{background:#fff;background:var(--pb-bg-surface,#fff);border:1px solid #e2e6ea;border:1px solid var(--pb-border-soft,#e2e6ea);border-radius:4px;box-sizing:border-box;color:#212529;color:var(--pb-text-primary,#212529);font-family:inherit;font-size:.75rem;line-height:1.4;margin-top:.15rem;padding:.3rem .45rem;resize:vertical;transition:border-color .15s;width:100%}.advanced-setup-section-notes:focus{border-color:#4a90e2;border-color:var(--pb-accent,#4a90e2);outline:none}.setup-card-badge-row{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.setup-card-title{background:color-mix(in srgb,#6c757d 10%,#0000);background:color-mix(in srgb,var(--pb-text-secondary,#6c757d) 10%,#0000);border:1px solid color-mix(in srgb,#6c757d 30%,#0000);border:1px solid color-mix(in srgb,var(--pb-text-secondary,#6c757d) 30%,#0000);border-radius:20px;color:#6c757d;color:var(--pb-text-secondary,#6c757d)}.setup-card-title,.setup-cycles-badge{font-size:.73rem;font-weight:600;padding:.15rem .6rem;white-space:nowrap}.setup-cycles-badge{background:color-mix(in srgb,#e07a10 12%,#0000);border:1px solid #f0a04a;border-radius:20px;color:#e07a10}.setup-sections-btn{align-self:flex-start;background:none;border:1px solid #f0a04a;border-radius:8px;border-radius:var(--pb-r-5,8px);color:#e07a10;cursor:pointer;font-size:.78rem;font-weight:500;padding:.35rem .75rem;transition:background .15s,border-color .15s}.setup-sections-btn:hover:not(:disabled){background:#fff5ea;border-color:#e07a10}.setup-sections-btn:disabled{color:#6c757d;color:var(--pb-text-secondary,#6c757d);cursor:default}.sections-popup-overlay{align-items:center;background:#00000059;display:flex;inset:0;justify-content:center;position:fixed;z-index:1200}.sections-popup{background:#fff;background:var(--pb-bg-surface,#fff);border-radius:12px;border-radius:var(--pb-r-7,12px);box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;gap:.75rem;max-height:70vh;max-width:624px;overflow:hidden;padding:1.25rem 1.4rem;width:90%}.sections-popup-header{align-items:center;display:flex;gap:.6rem}.sections-popup-title{color:#212529;color:var(--pb-text-primary,#212529);flex:1 1;font-size:.95rem;font-weight:600}.sections-popup-count{background:color-mix(in srgb,#4a90e2 10%,#0000);background:color-mix(in srgb,var(--pb-accent,#4a90e2) 10%,#0000);border-radius:20px;color:#4a90e2;color:var(--pb-accent,#4a90e2);font-size:.78rem;font-weight:500;padding:.15rem .55rem}.sections-popup-close{background:none;border:none;border-radius:4px;color:#6c757d;color:var(--pb-text-secondary,#6c757d);cursor:pointer;font-size:.9rem;line-height:1;padding:.2rem .3rem;transition:background .12s,color .12s}.sections-popup-close:hover{background:#f8f9fa;background:var(--pb-bg-base,#f8f9fa);color:#212529;color:var(--pb-text-primary,#212529)}.sections-popup-ai-btn,.sections-popup-reset-btn{border:1px solid #e2e6ea;border:1px solid var(--pb-border-soft,#e2e6ea);border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:500;padding:.25rem .6rem;transition:background .15s,border-color .15s,opacity .15s}.sections-popup-ai-btn:disabled,.sections-popup-reset-btn:disabled{cursor:default;opacity:.55}.sections-popup-ai-btn{background:color-mix(in srgb,#4a90e2 10%,#0000);background:color-mix(in srgb,var(--pb-accent,#4a90e2) 10%,#0000);border-color:color-mix(in srgb,#4a90e2 30%,#0000);border-color:color-mix(in srgb,var(--pb-accent,#4a90e2) 30%,#0000);color:#4a90e2;color:var(--pb-accent,#4a90e2)}.sections-popup-ai-btn:hover:not(:disabled){background:color-mix(in srgb,#4a90e2 18%,#0000);background:color-mix(in srgb,var(--pb-accent,#4a90e2) 18%,#0000)}.sections-popup-ai-btn.loading{font-style:italic}.sections-popup-reset-btn{background:none;color:#6c757d;color:var(--pb-text-secondary,#6c757d)}.sections-popup-reset-btn:hover:not(:disabled){background:#f8f9fa;background:var(--pb-bg-base,#f8f9fa);color:#212529;color:var(--pb-text-primary,#212529)}.sections-popup-regen-btn{background:none;border:1px solid #e2e6ea;border:1px solid var(--pb-border-soft,#e2e6ea);border-radius:6px;color:#6c757d;color:var(--pb-text-secondary,#6c757d);cursor:pointer;font-size:.75rem;font-weight:500;padding:.25rem .6rem;transition:background .15s,border-color .15s,opacity .15s}.sections-popup-regen-btn:hover:not(:disabled){background:#f8f9fa;background:var(--pb-bg-base,#f8f9fa);color:#212529;color:var(--pb-text-primary,#212529)}.sections-popup-regen-btn:disabled{cursor:default;opacity:.55}.sections-popup-regen-btn.loading{font-style:italic}.sections-popup-list{display:flex;flex-direction:column;gap:0;list-style:none;margin:0;overflow-y:auto;padding:0}.sections-popup-item{border-bottom:1px solid #e2e6ea;border-bottom:1px solid var(--pb-border-soft,#e2e6ea);display:flex;flex-direction:column;gap:.2rem;padding:.6rem 0}.sections-popup-item:first-child{padding-top:0}.sections-popup-item:last-child{border-bottom:none;padding-bottom:0}.sections-popup-item-top{align-items:baseline;display:flex;gap:.6rem;justify-content:space-between}.sections-popup-item-title{color:#212529;color:var(--pb-text-primary,#212529);font-size:.85rem;font-weight:600}.sections-popup-item-pages{color:#6c757d;color:var(--pb-text-secondary,#6c757d);font-size:.75rem;white-space:nowrap}.sections-popup-item-desc{font-size:.78rem;line-height:1.4}.sections-popup-empty,.sections-popup-item-desc{color:#6c757d;color:var(--pb-text-secondary,#6c757d);margin:0}.sections-popup-empty{font-size:.82rem;font-style:italic}.sections-popup-regen-msg{color:#6c757d;color:var(--pb-text-secondary,#6c757d);font-size:.85rem;font-style:italic;margin:.5rem 0;text-align:center}.sections-popup-item-controls{border-top:1px dashed #e2e6ea;border-top:1px dashed var(--pb-border-soft,#e2e6ea);display:flex;flex-direction:column;gap:.45rem;margin-top:.45rem;padding-top:.45rem}.sections-popup-control{display:flex;flex-direction:column;gap:.15rem}.sections-popup-control-label{color:#6c757d;color:var(--pb-text-secondary,#6c757d);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.sections-popup-slider-row{align-items:center;display:flex;gap:.5rem}.sections-popup-slider-row input[type=range]{accent-color:#4a90e2;accent-color:var(--pb-accent,#4a90e2);cursor:pointer;flex:1 1;height:4px}.sections-popup-slider-max,.sections-popup-slider-min{color:#6c757d;color:var(--pb-text-secondary,#6c757d);font-size:.7rem;white-space:nowrap}.sections-popup-slider-val{color:#4a90e2;color:var(--pb-accent,#4a90e2);font-size:.75rem;font-weight:600;min-width:3.5rem;text-align:right}.setup-rows-grid{grid-column-gap:.75rem;grid-row-gap:.6rem;align-items:center;column-gap:.75rem;display:grid;grid-template-columns:auto max-content 1fr;row-gap:.6rem}.setup-rows-grid>.setup-row{display:contents}.setup-row{align-items:center;display:flex;gap:.75rem;min-height:28px}.setup-row--enable{border-bottom:1px solid var(--pb-border-soft);margin-bottom:.2rem;padding-bottom:.6rem}.setup-disabled-msg{color:var(--pb-fg-4);font-size:.8rem;line-height:1.5;margin:.5rem 0 0}.setup-row-label{color:var(--pb-fg-4);font-size:.58rem;font-weight:var(--pb-w-bold);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.info-tooltip-wrap{position:relative}.info-tooltip-btn,.info-tooltip-wrap{align-items:center;display:flex;flex-shrink:0}.info-tooltip-btn{background:#dddaf8;border:none;border-radius:50%;color:#5b52c4;cursor:pointer;font-size:9px;font-style:italic;font-weight:800;height:16px;justify-content:center;line-height:1;padding:0;transition:background .15s,color .15s;width:16px}.info-tooltip-btn:hover{background:#7f77dd;color:#fff}.info-tooltip-popup{background:#fff;border:1px solid #e0ddf8;border-radius:7px;box-shadow:0 4px 14px #0000001a;color:#444;font-size:.75rem;font-weight:400;left:0;letter-spacing:0;line-height:1.5;padding:.5rem .65rem;pointer-events:none;position:absolute;text-transform:none;top:calc(100% + 6px);width:220px;z-index:300}.setup-toggle-group{display:flex;flex:1 1;flex-wrap:wrap;gap:.3rem}.setup-toggle-btn{background:var(--pb-bg-surface);border:1.5px solid #d1d5db;border-radius:var(--pb-r-pill);color:var(--pb-fg-3);cursor:pointer;font-size:.78rem;font-weight:var(--pb-w-med);padding:.22rem .65rem;transition:border-color .12s,background .12s,color .12s;white-space:nowrap}.setup-toggle-btn:hover{background:var(--pb-indigo-soft-2);border-color:var(--pb-indigo-border-2);color:var(--pb-indigo-deepest)}.setup-toggle-btn.active{background:var(--pb-indigo-deep);border-color:var(--pb-indigo-deep);color:#fff;font-weight:var(--pb-w-semi)}.setup-row-slider{align-items:center;display:flex;flex:1 1;gap:.6rem}.setup-row-slider input[type=range]{accent-color:var(--pb-indigo-deep);cursor:pointer;flex:1 1;height:4px}.setup-slider-count{color:var(--pb-indigo-deep);font-size:.9rem;font-weight:var(--pb-w-bold);min-width:2ch;text-align:right}.setup-card-notes{background:var(--pb-bg-muted);border:1px solid #d1d5db;border-radius:var(--pb-r-5);box-sizing:border-box;color:var(--pb-fg-1);font-family:inherit;font-size:var(--pb-ts-xs);padding:.45rem .6rem;resize:vertical;width:100%}.setup-card-notes:focus{background:var(--pb-bg-surface);border-color:var(--pb-indigo);box-shadow:var(--pb-focus-ring-indigo);outline:none}.setup-options--modes{display:flex;gap:.6rem}.setup-options--chips{grid-gap:.4rem;display:grid;gap:.4rem;grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.setup-options--inline{display:flex;gap:.4rem}.setup-chip-btn{background:var(--pb-bg-surface);border:1.5px solid #d1d5db;border-radius:var(--pb-r-5);cursor:pointer;display:flex;flex-direction:column;gap:.1rem;padding:.35rem .5rem;text-align:left;transition:border-color var(--pb-dur-fast),background var(--pb-dur-fast)}.setup-chip-btn:hover{background:var(--pb-indigo-soft-2);border-color:var(--pb-indigo)}.setup-chip-btn.active{background:var(--pb-indigo-soft);border-color:var(--pb-indigo-deep)}.setup-chip-title{color:var(--pb-fg-1);font-size:.8rem;font-weight:var(--pb-w-semi)}.setup-chip-btn.active .setup-chip-title{color:var(--pb-indigo-deepest)}.setup-chip-desc{color:var(--pb-fg-5);font-size:.65rem;line-height:1.3}.setup-slider-value{color:var(--pb-indigo-deep);font-size:var(--pb-ts-body-s);font-weight:var(--pb-w-bold);margin-left:.6rem}.setup-slider{accent-color:var(--pb-indigo-deep);cursor:pointer;height:4px;width:100%}.setup-slider-labels{color:var(--pb-fg-5);display:flex;font-size:var(--pb-ts-micro);justify-content:space-between;margin-top:-2px}.setup-options--check-pills{display:flex;flex-wrap:wrap;gap:.4rem}.setup-check-pill{align-items:center;background:var(--pb-bg-surface);border:1.5px solid #d1d5db;border-radius:var(--pb-r-pill);color:var(--pb-fg-2);cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:var(--pb-w-med);gap:.4rem;padding:.3rem .65rem;transition:border-color var(--pb-dur-fast),background var(--pb-dur-fast),color var(--pb-dur-fast)}.setup-check-pill:hover{background:var(--pb-indigo-soft-2);border-color:var(--pb-indigo-border-2)}.setup-check-pill.active{background:var(--pb-indigo-soft);border-color:var(--pb-indigo-deep);color:var(--pb-indigo-deepest);font-weight:var(--pb-w-semi)}.setup-check-box{align-items:center;background:var(--pb-bg-surface);border:1.5px solid #d1d5db;border-radius:3px;display:flex;flex-shrink:0;height:14px;justify-content:center;transition:border-color var(--pb-dur-fast),background var(--pb-dur-fast);width:14px}.setup-check-box.checked{background:var(--pb-indigo-deep);border-color:var(--pb-indigo-deep);color:var(--pb-bg-surface)}.setup-check-box svg{height:7px;width:8px}.instructor-mode-btn{align-items:flex-start;background:var(--pb-bg-surface);border:1.5px solid #d1d5db;border-radius:var(--pb-r-6);cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:.15rem;padding:.55rem .65rem;text-align:left;transition:border-color var(--pb-dur-fast),background var(--pb-dur-fast)}.instructor-mode-btn:hover{background:var(--pb-indigo-soft-2);border-color:var(--pb-indigo)}.instructor-mode-btn.active{background:var(--pb-indigo-soft);border-color:var(--pb-indigo-deep)}.instructor-mode-icon{font-size:1.1rem}.instructor-mode-title{color:var(--pb-fg-1);font-size:var(--pb-ts-xs);font-weight:var(--pb-w-semi)}.instructor-mode-btn.active .instructor-mode-title{color:var(--pb-indigo-deepest)}.instructor-mode-desc{color:var(--pb-fg-4);font-size:.72rem;line-height:1.35}.instructor-setup-instructions-label{color:var(--pb-fg-2);font-size:.82rem;font-weight:var(--pb-w-semi)}.instructor-setup-optional{color:var(--pb-fg-5);font-weight:var(--pb-w-reg)}.instructor-setup-textarea{border:1px solid #d1d5db;border-radius:var(--pb-r-5);box-sizing:border-box;color:var(--pb-fg-1);font-family:inherit;font-size:var(--pb-ts-xs);padding:.5rem;resize:vertical;width:100%}.instructor-setup-textarea:focus{border-color:var(--pb-indigo);box-shadow:var(--pb-focus-ring-indigo);outline:none}.instructor-setup-submit{align-self:flex-end;background:var(--pb-indigo-deep);border:none;border-radius:var(--pb-r-5);color:var(--pb-bg-surface);cursor:pointer;font-size:.88rem;font-weight:var(--pb-w-semi);padding:.45rem 1.1rem}.instructor-setup-submit:hover:not(:disabled){background:var(--pb-indigo-darker)}.instructor-setup-submit:disabled{background:var(--pb-indigo-border-2);cursor:not-allowed}.plan-edit-screen,.plan-final-screen{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.plan-edit-screen .lesson-plan-preview{flex:1 1;min-height:0}.plan-edit-retake-field{padding:.75rem 1rem}.plan-edit-ai-bar,.plan-edit-retake-field{border-top:1px solid var(--pb-border);flex-shrink:0}.plan-edit-ai-bar{align-items:flex-end;background:var(--pb-bg-surface);display:flex;gap:.5rem;padding:.6rem 1rem}.plan-edit-ai-input{background:var(--pb-bg-base);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);color:var(--pb-fg);flex:1 1;font-family:inherit;font-size:.82rem;line-height:1.45;padding:.45rem .65rem;resize:none}.plan-edit-ai-input:focus{border-color:var(--pb-blue);box-shadow:0 0 0 2px #2a6e3c1f;outline:none}.plan-edit-ai-btn{background:var(--pb-blue);border:none;border-radius:var(--pb-r-5);color:#fff;cursor:pointer;flex-shrink:0;font-size:.82rem;font-weight:600;padding:.45rem 1rem;transition:background .15s;white-space:nowrap}.plan-edit-ai-btn:hover:not(:disabled){background:var(--pb-blue-hover)}.plan-edit-ai-btn:disabled{cursor:default;opacity:.5}.plan-final-screen{overflow-y:auto}.plan-final-meta{display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem 1rem}.plan-final-field{display:flex;flex-direction:column;gap:.35rem}.plan-final-label{color:var(--pb-fg-2);font-size:.78rem;font-weight:var(--pb-w-semi);letter-spacing:.04em;text-transform:uppercase}.plan-final-optional{color:#aaa;color:var(--pb-fg-4,#aaa);font-weight:400;letter-spacing:0;text-transform:none}.plan-final-export-btns,.plan-final-summary{display:flex;flex-wrap:wrap;gap:.5rem}.plan-summary-stat{align-items:center;background:#f0f7f2;border:1px solid var(--pb-blue-border);border-radius:8px;border-radius:var(--pb-r-5,8px);display:flex;flex-direction:column;gap:.2rem;min-width:4.5rem;padding:.55rem .9rem}.plan-summary-val{color:var(--pb-blue);font-size:1rem;font-weight:700;font-weight:var(--pb-w-bold,700);line-height:1}.plan-summary-key{color:var(--pb-fg-3);font-size:.68rem;letter-spacing:.04em;text-align:center;text-transform:uppercase;white-space:nowrap}.plan-final-screen--cycles .plan-summary-stat{background:#fff8ee;background:var(--pb-amber-soft,#fff8ee);border-color:#f0a04a;border-color:var(--pb-amber-border,#f0a04a)}.plan-final-screen--cycles .plan-summary-val{color:#e07a10;color:var(--pb-amber,#e07a10)}.plan-final-screen.plan-final-screen--cycles .guided-structure-continue-btn{background:var(--pb-amber)}.plan-final-screen.plan-final-screen--cycles .guided-structure-continue-btn:hover:not(:disabled){background:var(--pb-amber-hover)}.plan-final-cycles{display:flex;flex-direction:column;gap:6px;padding:0 1rem 1.5rem}.plan-edit-screen .guided-goals-topbar,.plan-final-screen .guided-goals-topbar{border-bottom:1px solid var(--pb-border);flex-shrink:0;padding:.75rem 1rem}.plan-edit-screen .guided-structure-continue-btn,.plan-final-screen .guided-structure-continue-btn{background:var(--pb-blue)}.plan-edit-screen .guided-structure-continue-btn:hover:not(:disabled),.plan-final-screen .guided-structure-continue-btn:hover:not(:disabled){background:var(--pb-blue-hover)}.plan-approved-banner{align-items:center;background:var(--pb-green-soft);border-bottom:1px solid var(--pb-green-border);color:var(--pb-green-hover);display:flex;flex-shrink:0;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-semi);gap:.4rem;justify-content:center;padding:.45rem 1rem}.ia-tab-bar{background:var(--pb-bg-surface);border-bottom:1px solid var(--pb-border-soft);display:flex;flex-shrink:0}.ia-tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:var(--pb-fg-4);cursor:pointer;flex:1 1;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);padding:.55rem 1rem;transition:color var(--pb-dur-fast),border-color var(--pb-dur-fast)}.ia-tab-btn:hover:not(.ia-tab-btn--active){background:var(--pb-bg-muted);color:var(--pb-fg-2)}.ia-tab-btn--active{border-bottom-color:var(--pb-indigo-deep);color:var(--pb-indigo-deep);font-weight:var(--pb-w-semi)}.test-setup{display:flex;flex:1 1;flex-direction:column;gap:.75rem;min-height:0;overflow:hidden;padding:1rem}.test-setup-header{flex-shrink:0}.test-setup-title{color:var(--pb-fg-2);font-size:var(--pb-ts-small);font-weight:var(--pb-w-semi);margin:0 0 .2rem}.test-setup-hint{color:var(--pb-fg-5);font-size:var(--pb-ts-xs);margin:0}.test-setup-hint code{background:var(--pb-bg-muted);border-radius:var(--pb-r-2);color:var(--pb-violet-fg);font-family:Menlo,Consolas,monospace;font-size:.75rem;padding:.05rem .3rem}.test-setup-form{display:flex;flex:1 1;flex-direction:column;gap:.6rem;min-height:0}.test-setup-textarea{background:var(--pb-bg-muted);border:1.5px solid var(--pb-border-soft);border-radius:var(--pb-r-6);color:var(--pb-fg-2);flex:1 1;font-family:Menlo,Consolas,monospace;font-size:.8rem;line-height:1.6;min-height:0;padding:.85rem 1rem;resize:none;transition:border-color var(--pb-dur-fast),background var(--pb-dur-fast)}.test-setup-textarea:focus{background:var(--pb-bg-surface);border-color:var(--pb-violet);outline:none}.test-setup-textarea--cycle:focus{border-color:var(--pb-indigo)}.test-setup-textarea::placeholder{color:var(--pb-fg-5)}.test-setup-error{color:var(--pb-error-deep);flex-shrink:0;font-size:var(--pb-ts-xs);margin:0}.messages-container{flex:1 1;overflow-y:auto;padding:1rem}.empty-state{padding:1.5rem 1rem}.empty-state-hint{color:var(--pb-fg-5);font-size:.82rem;margin:0 0 .85rem;text-align:center}.suggested-questions{display:flex;flex-direction:column;gap:.45rem}.suggested-chip{background:var(--pb-bg-surface);border:1px solid #d1d5db;border-radius:var(--pb-r-6);color:var(--pb-fg-2);cursor:pointer;font-size:var(--pb-ts-xs);line-height:1.4;padding:.55rem .85rem;text-align:left;transition:border-color var(--pb-dur-fast),background var(--pb-dur-fast),color var(--pb-dur-fast)}.suggested-chip:hover:not(:disabled){background:var(--pb-blue-soft);border-color:var(--pb-blue);color:var(--pb-blue-fg)}.suggested-chip:disabled{cursor:not-allowed;opacity:.5}.section-intro-banner{align-items:center;animation:slideDown var(--pb-dur-norm) ease-out;background:var(--pb-green-soft);border-bottom:1px solid var(--pb-green-border);display:flex;flex-shrink:0;gap:.6rem;justify-content:space-between;padding:.55rem .85rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.section-intro-content{align-items:center;display:flex;flex:1 1;gap:.45rem;min-width:0}.section-intro-icon{flex-shrink:0;font-size:var(--pb-ts-xs)}.section-intro-text{color:var(--pb-green-fg);font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section-intro-actions{align-items:center;display:flex;flex-shrink:0;gap:.35rem}.section-intro-yes-btn{background:var(--pb-green);border:none;border-radius:var(--pb-r-4);color:var(--pb-bg-surface);cursor:pointer;font-size:var(--pb-ts-xxs);font-weight:var(--pb-w-med);padding:.25rem .65rem;white-space:nowrap}.section-intro-yes-btn:hover:not(:disabled){background:var(--pb-green-hover)}.section-intro-yes-btn:disabled{background:var(--pb-green-border-2);cursor:not-allowed}.section-intro-dismiss{background:none;border:none;color:var(--pb-fg-4);cursor:pointer;font-size:1.15rem;line-height:1;padding:0 .2rem}.section-intro-dismiss:hover{color:var(--pb-fg)}.message{margin-bottom:var(--pb-space-5)}.user-message{display:flex;justify-content:flex-end}.message-header{font-size:var(--pb-ts-xs);font-weight:var(--pb-w-semi);margin-bottom:.25rem}.message-content{border-radius:var(--pb-r-3);line-height:1.5;padding:.75rem}.user-message .message-content{background:var(--pb-blue-soft);border:1px solid var(--pb-blue-border);color:var(--pb-blue-fg-deep);max-width:85%}.ai-message .message-content{background:#0000;border:none;color:var(--pb-fg-1);font-size:14px;line-height:1.65;padding-left:0;padding-right:0}.instructor-message .message-content{background:#eef2ff;background:var(--pb-indigo-soft,#eef2ff);border:1px solid #c7d2fe;border-left:3px solid #6366f1;border:1px solid var(--pb-indigo-border,#c7d2fe);border-left:3px solid var(--pb-indigo,#6366f1)}.instructor-message .message-header{color:#4338ca;color:var(--pb-indigo-deep,#4338ca);font-weight:600}.thinking-bubble{align-items:center;background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft)!important;border-radius:var(--pb-r-8)!important;display:inline-flex;gap:.3rem;padding:.55rem .85rem!important;width:fit-content}.thinking-text{color:var(--pb-fg-4);font-size:.88rem;font-style:italic}.thinking-dots span{animation:thinking-dot-bounce 1.2s ease-in-out infinite;color:var(--pb-indigo);display:inline-block;font-size:1.1rem}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes thinking-dot-bounce{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.chat-lgtm-content{align-items:center;display:flex;flex-wrap:wrap;gap:.7rem}.lgtm-btn{background:#16a34a;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.38rem 1.1rem;transition:background .15s;white-space:nowrap}.lgtm-btn:hover{background:#15803d}.lgtm-hint{color:#6b7280;font-size:.78rem;font-style:italic}.chat-options-question{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.6rem}.chat-options-question:last-of-type{margin-bottom:0}.chat-options-label{color:#374151;font-size:.78rem;font-weight:600}.chat-options-choices{display:flex;flex-wrap:wrap;gap:.4rem}.chat-options-btn{background:#fff;border:1.5px solid #d1d5db;border-radius:99px;color:#374151;cursor:pointer;font-size:.82rem;padding:.3rem .75rem;transition:background .12s,border-color .12s,color .12s;white-space:nowrap}.chat-options-btn:hover:not(.chat-options-btn--selected){background:#f3f4f6;border-color:#9ca3af}.chat-options-btn--selected{background:#2a4db5;border-color:#2a4db5;color:#fff;font-weight:600}.options-number-input{border:1px solid #d1d5db;border-radius:5px;color:#1f2937;font-size:.85rem;padding:.28rem .5rem;width:90px}.options-number-input:focus{border-color:#2a4db5;box-shadow:0 0 0 2px #2a4db526;outline:none}.num-q-slider-wrap{align-items:center;display:flex;flex-wrap:wrap;gap:.65rem}.num-q-slider{accent-color:#2a4db5;cursor:pointer;flex:1 1;height:4px;max-width:220px;min-width:120px}.num-q-value{color:#2a4db5;font-size:1rem;font-weight:700;min-width:2ch;text-align:center}.num-q-hint{color:#9ca3af;font-size:.7rem;white-space:nowrap}.chat-options-submit{background:#2a4db5;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;margin-top:.5rem;padding:.38rem 1.1rem;transition:background .15s}.chat-options-submit:hover:not(:disabled){background:#1e3a8a}.chat-options-submit:disabled{background:#93aad4;cursor:not-allowed}.context-nudge{align-items:center;background:var(--pb-amber-soft);border-top:1px solid var(--pb-amber-border);display:flex;gap:.75rem;padding:.6rem .85rem}.context-nudge-text{color:#854d0e;color:var(--pb-amber-fg,#854d0e);flex:1 1;font-size:var(--pb-ts-xxs);line-height:1.45}.context-nudge-actions{align-items:center;display:flex;flex-shrink:0;gap:.4rem}.context-nudge-btn{background:var(--pb-amber);border:none;border-radius:var(--pb-r-3);color:var(--pb-bg-surface);cursor:pointer;font-size:var(--pb-ts-xxs);font-weight:var(--pb-w-semi);padding:.35rem .8rem;white-space:nowrap}.context-nudge-btn:hover{background:var(--pb-amber-hover)}.context-nudge-dismiss{background:#0000;border:none;border-radius:var(--pb-r-3);color:#854d0e;color:var(--pb-amber-fg,#854d0e);cursor:pointer;font-size:1.1rem;line-height:1;padding:0 .45rem}.context-nudge-dismiss:hover{background:var(--pb-amber-border)}.message-input-form{background:var(--pb-bg-surface);border-top:1px solid var(--pb-border);display:flex;gap:.5rem;padding:1rem}.message-input{border:1px solid var(--pb-border);border-radius:var(--pb-r-3);flex:1 1;padding:.5rem}.send-btn{background:var(--pb-blue);border:none;border-radius:var(--pb-r-3);color:var(--pb-bg-surface);cursor:pointer;padding:.5rem 1rem}.send-btn:disabled{background:var(--pb-border-strong)}.selection-context-chip{align-items:center;background:var(--pb-blue-soft);border-top:1px solid var(--pb-blue-border);color:var(--pb-blue-fg-deep);display:flex;font-size:var(--pb-ts-xxs);gap:.4rem;padding:.4rem .75rem}.selection-context-label{font-weight:var(--pb-w-semi);white-space:nowrap}.selection-context-text{color:var(--pb-fg-2);flex:1 1;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selection-context-clear{background:none;border:none;color:var(--pb-fg-4);cursor:pointer;font-size:1rem;line-height:1;padding:0 .2rem}.selection-context-clear:hover{color:var(--pb-fg)}.pull-context-card{background:var(--pb-blue-softer);border-left:3px solid #3b82f6;margin-top:.75rem;padding:.75rem 1rem}.instructor-correction-card,.pull-context-card{border-radius:0 var(--pb-r-5) var(--pb-r-5) 0;font-size:var(--pb-ts-xs)}.instructor-correction-card{background:#fff0f0;background:var(--pb-error-soft,#fff0f0);border-left:3px solid #c00;border-left:3px solid var(--pb-error,#c00);margin-top:.6rem;padding:.6rem .85rem}.instructor-correction-header{color:#991b1b;color:var(--pb-error-deep,#991b1b);font-size:.72rem;font-weight:var(--pb-w-bold);letter-spacing:.04em;margin-bottom:.3rem;text-transform:uppercase}.instructor-correction-body{color:var(--pb-fg-1);line-height:1.5;margin:0}.pull-context-header{color:#3b82f6;font-size:.75rem;font-weight:var(--pb-w-semi);letter-spacing:.04em;margin-bottom:.4rem;text-transform:uppercase}.pull-context-body{color:#1e293b;line-height:1.5;margin:0 0 .4rem}.pull-context-reasoning{color:#64748b;font-style:italic;margin:0 0 .5rem}.pull-context-source{color:#3b82f6;display:inline-block;font-weight:var(--pb-w-med);text-decoration:none}.pull-context-source:hover{text-decoration:underline}.selection-define-btn,.selection-note-btn,.selection-walkthrough-btn{background:none;border:none;color:var(--pb-blue-fg-deep);cursor:pointer;font-size:var(--pb-ts-body-s);line-height:1;padding:0 .3rem;transition:transform var(--pb-dur-fast)}.selection-define-btn:hover:not(:disabled),.selection-note-btn:hover,.selection-walkthrough-btn:hover:not(:disabled){transform:scale(1.15)}.selection-define-btn:disabled,.selection-walkthrough-btn:disabled{cursor:wait;opacity:.5}.definition-panel{background:var(--pb-indigo-soft);border-top:1px solid var(--pb-indigo-border);display:flex;flex-direction:column;gap:.45rem;padding:.6rem .85rem}.definition-header{align-items:center;display:flex;justify-content:space-between}.definition-label{color:var(--pb-indigo-darker);font-size:.75rem;font-weight:var(--pb-w-semi);letter-spacing:.04em;text-transform:uppercase}.definition-dismiss{background:none;border:none;color:var(--pb-fg-4);cursor:pointer;font-size:1rem;line-height:1;padding:0 .25rem}.definition-dismiss:hover{color:var(--pb-fg-1)}.definition-term{border-left:2px solid #818cf8;color:var(--pb-fg-3);font-size:.8rem;font-style:italic;padding-left:.5rem}.definition-body{color:var(--pb-fg-1);font-size:var(--pb-ts-small);line-height:1.5;white-space:pre-wrap}.definition-loading{color:var(--pb-fg-4);font-style:italic}.note-input-wrapper{background:var(--pb-amber-soft);border-top:1px solid var(--pb-amber-border);display:flex;flex-direction:column;gap:.5rem;padding:.6rem .75rem}.note-input{border:1px solid var(--pb-amber-border-2);border-radius:var(--pb-r-3);box-sizing:border-box;font-family:inherit;font-size:var(--pb-ts-small);min-height:60px;padding:.5rem;resize:vertical;width:100%}.note-input:focus{border-color:var(--pb-amber);box-shadow:var(--pb-focus-ring-amber);outline:none}.note-input-actions{display:flex;gap:.4rem;justify-content:flex-end}.note-cancel-btn,.note-save-btn{border:1px solid #0000;border-radius:var(--pb-r-3);cursor:pointer;font-size:.8rem;font-weight:var(--pb-w-med);padding:.35rem .8rem}.note-cancel-btn{background:var(--pb-bg-surface);border-color:#d1d5db;color:var(--pb-fg-2)}.note-cancel-btn:hover{background:var(--pb-border-softer)}.note-save-btn{background:var(--pb-amber);color:var(--pb-bg-surface)}.note-save-btn:hover:not(:disabled){background:var(--pb-amber-hover)}.note-save-btn:disabled{background:var(--pb-amber-disabled);cursor:not-allowed}.walkthrough-panel{border-top:1px solid var(--pb-green-border);flex-direction:column;gap:.45rem;max-height:320px;overflow-y:auto;padding:.6rem .85rem}.walkthrough-header,.walkthrough-panel{background:var(--pb-green-soft);display:flex}.walkthrough-header{align-items:center;justify-content:space-between;padding-bottom:.2rem;position:sticky;top:0}.walkthrough-label{color:var(--pb-green-hover);font-size:.75rem;font-weight:var(--pb-w-semi);letter-spacing:.04em;text-transform:uppercase}.walkthrough-dismiss{background:none;border:none;color:var(--pb-fg-4);cursor:pointer;font-size:1rem;line-height:1;padding:0 .25rem}.walkthrough-dismiss:hover{color:var(--pb-fg-1)}.walkthrough-selection{border-left:2px solid #4ade80;color:var(--pb-fg-3);font-size:.8rem;font-style:italic;padding-left:.5rem}.walkthrough-body{color:var(--pb-fg-1);font-size:var(--pb-ts-small);line-height:1.55}.walkthrough-body ol,.walkthrough-body ul{margin:.25rem 0 .25rem 1.2rem;padding:0}.walkthrough-body li{margin-bottom:.35rem}.walkthrough-body p{margin:.3rem 0}.walkthrough-body code{background:var(--pb-green-pill-bg);border-radius:var(--pb-r-2);font-size:.85em;padding:.1em .3em}.walkthrough-loading{color:var(--pb-fg-4);font-style:italic}.ai-message .message-content pre{background:#1e1e2e;border-radius:var(--pb-r-5);color:#cdd6f4;font-size:.82rem;line-height:1.55;margin:.5rem 0;overflow-x:auto;padding:.75rem 1rem;position:relative}.ai-message .message-content pre code{background:none;border-radius:0;color:inherit;font-size:inherit;padding:0}.ai-message .message-content code{background:#f1f5f9;border-radius:var(--pb-r-3);color:#1e293b;font-family:var(--pb-font-mono);font-size:.83em;padding:.15em .4em}.code-block-wrapper{margin:.5rem 0;position:relative}.code-copy-btn{background:#ffffff1f;border:1px solid #fff3;border-radius:var(--pb-r-3);color:#cdd6f4;cursor:pointer;font-size:var(--pb-ts-micro);padding:.2rem .55rem;position:absolute;right:.5rem;top:.45rem;transition:background var(--pb-dur-fast)}.code-copy-btn:hover{background:#ffffff38}.code-copy-btn.copied{border-color:#a6e3a1;color:#a6e3a1}.ai-message .message-content table{border-collapse:collapse;font-size:.88rem;margin:.6rem 0;width:100%}.ai-message .message-content td,.ai-message .message-content th{border:1px solid #d1d5db;padding:.4rem .75rem;text-align:left}.ai-message .message-content th{background:var(--pb-border-softer);color:var(--pb-fg-2);font-weight:var(--pb-w-semi)}.ai-message .message-content tr:nth-child(2n) td{background:var(--pb-bg-muted)}.ai-message .message-content blockquote{background:var(--pb-indigo-soft);border-left:4px solid var(--pb-indigo);border-radius:0 var(--pb-r-6) var(--pb-r-6) 0;color:var(--pb-indigo-fg);margin:.6rem 0;padding:.6rem 1rem}.ai-message .message-content blockquote p{margin:.25rem 0}.ai-message .message-content blockquote h3{color:var(--pb-indigo-deepest);font-size:var(--pb-ts-body);margin:0 0 .4rem}.ai-message .message-content h1,.ai-message .message-content h2,.ai-message .message-content h3,.ai-message .message-content h4{line-height:1.3;margin:.75rem 0 .3rem}.ai-message .message-content h1{font-size:1.15rem}.ai-message .message-content h2{font-size:1.05rem}.ai-message .message-content h3{font-size:.97rem}.ai-message .message-content h4{color:var(--pb-fg-2);font-size:.92rem}.ai-message .message-content ol,.ai-message .message-content ul{margin:.3rem 0 .3rem 1.3rem;padding:0}.ai-message .message-content li{line-height:1.5;margin-bottom:.25rem}.ai-message .message-content p{margin:.35rem 0}.ai-message .message-content hr{border:none;border-top:1px solid var(--pb-border-soft);margin:.75rem 0}.mermaid-diagram{background:#fafbfc;border:1px solid #e1e4e8;border-radius:var(--pb-r-5);margin:.75rem 0;overflow-x:auto;padding:.75rem;text-align:center}.mermaid-diagram svg{height:auto;max-width:100%}.mermaid-error{background:#fff5f5;border:1px solid #fecaca;border-radius:var(--pb-r-5);color:var(--pb-error-deep);font-size:var(--pb-ts-xs);margin:.75rem 0;padding:.75rem}.mermaid-error-label{font-weight:var(--pb-w-semi);margin-bottom:.4rem}.mermaid-error pre{color:#374151;font-size:var(--pb-ts-xxs);margin:0;white-space:pre-wrap}.test-source-tabs{background:var(--pb-bg-muted);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-6);display:flex;flex-shrink:0;gap:.2rem;padding:.2rem}.test-source-tab{background:none;border:none;border-radius:var(--pb-r-5);color:var(--pb-fg-4);cursor:pointer;flex:1 1;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);padding:.45rem .75rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast)}.test-source-tab:hover:not(.active){background:var(--pb-border-softer);color:var(--pb-fg-2)}.test-source-tab.active{background:var(--pb-bg-surface);box-shadow:0 1px 3px #00000014;color:var(--pb-violet-fg);font-weight:var(--pb-w-semi)}.test-source-tab:disabled{cursor:not-allowed;opacity:.45}.test-source-tab:disabled:hover{background:none;color:var(--pb-fg-4)}.test-source-panel--empty{align-items:flex-start;background:var(--pb-bg-muted);border-color:var(--pb-border-soft);border-style:dashed;justify-content:center}.test-setup-empty{color:var(--pb-fg-4);font-size:var(--pb-ts-xs);line-height:1.5;margin:0}.test-setup-empty strong{color:var(--pb-fg-2);font-weight:var(--pb-w-semi)}.test-source-panel{background:var(--pb-violet-soft);gap:.4rem;padding:1.1rem 1.2rem}.setup-cover,.test-source-panel{border:1.5px solid var(--pb-violet-border);border-radius:var(--pb-r-7);display:flex;flex:1 1;flex-direction:column;min-height:0}.setup-cover{background:var(--pb-bg-surface);gap:.75rem;overflow:hidden;padding-bottom:.1rem}.setup-cover--cycle{border-color:var(--pb-indigo-border)}.setup-cover-hero{align-items:flex-start;background:linear-gradient(135deg,var(--pb-violet-soft),#fff0);border-radius:var(--pb-r-7) var(--pb-r-7) 0 0;display:flex;flex-direction:column;gap:.2rem;padding:.9rem 1.1rem}.setup-cover--cycle .setup-cover-hero{background:linear-gradient(135deg,var(--pb-indigo-soft),#fff0)}.setup-cover-kicker{color:var(--pb-violet-fg);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);letter-spacing:.07em;text-transform:uppercase}.setup-cover--cycle .setup-cover-kicker{color:var(--pb-indigo-deep)}.setup-cover-title{color:var(--pb-indigo-deepest);font-size:1.2rem;font-weight:var(--pb-w-bold);line-height:1.2;margin:0}.setup-cover-stats{display:flex;gap:.5rem;padding:0 1.1rem}.setup-stat{align-items:center;background:var(--pb-bg-muted);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-6);display:flex;flex:1 1;flex-direction:column;gap:.05rem;padding:.5rem .4rem}.setup-stat-num{color:var(--pb-fg);font-size:1.05rem;font-weight:var(--pb-w-bold)}.setup-stat-label{color:var(--pb-fg-4);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-med);letter-spacing:.03em;text-transform:uppercase}.setup-cover-section{padding:0 1.1rem}.setup-cover-section--grow{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.setup-cover-section--grow .setup-journey{overflow-y:auto}.setup-cover-section-title{color:var(--pb-fg-4);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);letter-spacing:.05em;margin-bottom:.4rem;text-transform:uppercase}.setup-breakdown{display:flex;flex-direction:column;gap:.35rem;list-style:none;margin:0;padding:0}.setup-breakdown li{align-items:center;color:var(--pb-fg-2);display:flex;font-size:var(--pb-ts-xs);gap:.55rem}.setup-dot{border-radius:50%;flex-shrink:0;height:9px;width:9px}.setup-dot--mcq{background:#7c3aed}.setup-dot--sa{background:#2563eb}.setup-dot--cf{background:#db2777}.setup-journey{display:flex;flex:1 1;flex-direction:column;gap:.3rem;list-style:none;margin:0;min-height:0;padding:0}.setup-journey-step{align-items:center;display:flex;gap:.6rem;min-height:0}.setup-journey-num{align-items:center;background:var(--pb-indigo);border-radius:50%;color:#fff;display:flex;flex:0 0 auto;font-size:.72rem;font-weight:var(--pb-w-bold);height:22px;justify-content:center;transition:width .15s,height .15s,font-size .15s;width:22px}.setup-journey--roomy{gap:.25rem;justify-content:space-evenly}.setup-journey--roomy .setup-journey-step{flex:1 1;max-height:3rem}.setup-journey--cozy{gap:.45rem}.setup-journey--dense{gap:.25rem}.setup-journey--dense .setup-journey-num{font-size:.66rem;height:18px;width:18px}.setup-journey--dense .setup-journey-title{font-size:var(--pb-ts-micro)}.setup-journey-body{align-items:baseline;display:flex;gap:.45rem;min-width:0}.setup-journey-title{color:var(--pb-fg);font-size:var(--pb-ts-xs);font-weight:var(--pb-w-semi);line-height:1.3}.setup-journey-reads,.setup-journey-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.setup-journey-reads{color:var(--pb-fg-4);font-size:var(--pb-ts-micro)}.setup-cover-note{background:#fffbeb;border:1px solid #fde68a;border-radius:var(--pb-r-6);color:#92400e;font-size:var(--pb-ts-micro);line-height:1.45;margin:auto 1.1rem .9rem;padding:.6rem .8rem}.setup-cover-note--cycle{background:var(--pb-indigo-soft);border-color:var(--pb-indigo-border);color:var(--pb-indigo-darker)}.test-setup--test .test-source-tab.active{color:var(--pb-blue)}.test-setup--test .test-setup-textarea:focus{background:var(--pb-bg-surface);border-color:#3a7d50}.test-setup--test .test-begin-btn{background:var(--pb-blue)}.test-setup--test .test-begin-btn:hover:not(:disabled){background:var(--pb-blue-hover)}.test-setup--test .setup-cover{border-color:var(--pb-blue-border)}.test-setup--test .setup-cover-hero{background:linear-gradient(135deg,#e8f3ec,#fff0)}.test-setup--test .setup-cover-kicker,.test-setup--test .setup-cover-title{color:var(--pb-blue-hover)}.test-setup--cycle .test-source-tab.active{color:#c8680c}.test-setup--cycle .test-setup-textarea--cycle:focus,.test-setup--cycle .test-setup-textarea:focus{background:var(--pb-bg-surface);border-color:#f0a04a}.test-setup--cycle .test-begin-btn{background:#e07a10}.test-setup--cycle .test-begin-btn:hover:not(:disabled){background:#c8680c}.test-setup--cycle .setup-cover{border-color:#f3d4ab}.test-setup--cycle .setup-cover-hero{background:linear-gradient(135deg,#fff3e2,#fff0)}.test-setup--cycle .setup-cover-kicker{color:#c8680c}.test-setup--cycle .setup-cover-title{color:#9a4d08}.test-setup--cycle .setup-journey-num{background:#e07a10}.test-setup--cycle .setup-journey-step:not(:last-child):before{background:#f3d4ab}.test-setup--cycle .setup-cover-note--cycle{background:#fff3e2;border-color:#f3d4ab;color:#92500e}.instructor-test-label{color:var(--pb-violet-fg);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);letter-spacing:.06em;text-transform:uppercase}.instructor-test-paper-name{color:var(--pb-indigo-deepest);font-size:1.1rem;font-weight:var(--pb-w-bold);line-height:1.3;margin:0}.instructor-test-meta{color:var(--pb-fg-4);font-size:var(--pb-ts-xs);margin:0}.plan-due-date-badge{background:#fef3c7;border-radius:99px;color:#92400e;display:inline-block;font-size:.73rem;font-weight:600;margin-left:.4rem;padding:.05rem .45rem}.test-setup-custom{display:flex;flex:1 1;flex-direction:column;gap:.5rem;min-height:0}.test-begin-btn{background:var(--pb-violet);border:none;border-radius:var(--pb-r-6);color:var(--pb-bg-surface);cursor:pointer;flex-shrink:0;font-size:var(--pb-ts-small);font-weight:var(--pb-w-semi);padding:.7rem;transition:background var(--pb-dur-fast);width:100%}.test-begin-btn:hover:not(:disabled){background:var(--pb-violet-hover)}.test-begin-btn:disabled{cursor:not-allowed;opacity:.6}.test-setup-divider{align-items:center;color:var(--pb-fg-5);display:flex;font-size:.8rem;gap:.75rem;margin:.25rem 0}.test-setup-divider:after,.test-setup-divider:before{border-top:1px solid var(--pb-border-soft);content:"";flex:1 1}.test-setup-loading{color:var(--pb-fg-5);flex-shrink:0;font-size:var(--pb-ts-xs);font-style:italic;margin:0}.results-panel{border-top:1px solid var(--pb-border-soft);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.results-panel-header{align-items:center;border-bottom:1px solid var(--pb-border-softer);display:flex;justify-content:space-between;padding:.75rem 1rem .5rem}.results-panel-title{color:var(--pb-fg-1);font-size:var(--pb-ts-body-s);font-weight:var(--pb-w-semi);margin:0}.results-panel-header-actions{align-items:center;display:flex;gap:.5rem}.copy-json-btn{background:var(--pb-border-softer);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);color:var(--pb-fg-2);cursor:pointer;font-size:var(--pb-ts-xxs);font-weight:var(--pb-w-med);padding:.28rem .7rem;transition:background var(--pb-dur-fast),border-color var(--pb-dur-fast),color var(--pb-dur-fast);white-space:nowrap}.copy-json-btn:hover{background:#e0e7ff;border-color:var(--pb-indigo-border-2);color:var(--pb-indigo-deepest)}.copy-json-btn.copied{background:var(--pb-green-pill-bg);border-color:var(--pb-green-border-2);color:var(--pb-green-fg)}.results-panel-close{background:none;border:none;border-radius:var(--pb-r-3);color:var(--pb-fg-4);cursor:pointer;font-size:var(--pb-ts-body);padding:.2rem .4rem}.results-panel-close:hover{background:var(--pb-border-softer)}.results-panel-empty,.results-panel-loading{color:var(--pb-fg-4);font-size:var(--pb-ts-xs);font-style:italic;margin:1rem}.results-table-wrapper{flex:1 1;overflow-y:auto;padding:0 .5rem .5rem}.results-table{border-collapse:collapse;font-size:.83rem;width:100%}.results-table th{border-bottom:1px solid var(--pb-border-soft);color:var(--pb-fg-4);font-size:.75rem;font-weight:var(--pb-w-semi);letter-spacing:.04em;padding:.5rem .6rem;text-align:left;text-transform:uppercase}.results-row td{padding:.55rem .6rem;vertical-align:middle}.results-question-row td,.results-row td{border-bottom:1px solid var(--pb-border-softer)}.results-question-row td{background:var(--pb-bg-muted);color:var(--pb-fg-3);font-size:var(--pb-ts-xxs);padding:.3rem .6rem .3rem 1.4rem}.results-q-label{color:var(--pb-fg-2)!important;font-weight:var(--pb-w-semi)}.results-grade-badge{border-radius:var(--pb-r-pill);display:inline-block;font-size:var(--pb-ts-xxs);font-weight:var(--pb-w-semi);padding:.15rem .5rem}.results-grade-badge.grade-good{background:var(--pb-green-pill-bg);color:var(--pb-green-fg)}.results-grade-badge.grade-mid{background:var(--pb-error-warn-yel);color:#854d0e}.results-grade-badge.grade-low{background:var(--pb-error-bg-pill);color:var(--pb-error-deep)}.results-expand-btn{background:none;border:none;color:var(--pb-fg-4);cursor:pointer;font-size:.7rem;padding:.2rem .4rem}.instructor-tabs{display:flex;gap:.5rem;margin-top:.5rem}.instructor-tab{align-items:center;background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:.8rem;font-weight:500;gap:.3rem;padding:.35rem .6rem .45rem;text-align:center;transition:background .15s,color .15s,border-color .15s}.instructor-tab:hover{background:#f3f4f6;color:#374151}.instructor-tab--active{background:#ede9fe;border-color:#a78bfa;color:#5b21b6;font-weight:600}.instructor-tab-label,.tab-enable-toggle{align-items:center;display:flex;gap:4px}.tab-enable-toggle{cursor:pointer}.tab-enable-track{background:#d1d5db;border-radius:99px;flex-shrink:0;height:13px;position:relative;transition:background .2s;width:24px}.tab-enable-toggle--on .tab-enable-track{background:#7c3aed}.tab-enable-thumb{background:#fff;border-radius:50%;box-shadow:0 1px 2px #0003;height:9px;left:2px;position:absolute;top:2px;transition:left .2s;width:9px}.tab-enable-toggle--on .tab-enable-thumb{left:13px}.tab-enable-label{color:#9ca3af;font-size:.65rem;font-weight:400;line-height:1}.tab-enable-toggle--on .tab-enable-label{color:#7c3aed}.instructor-tab--active .tab-enable-toggle--on .tab-enable-label{color:#6d28d9}.instructor-tab--active .tab-enable-toggle--on .tab-enable-track{background:#6d28d9}.tab-info-icon{align-items:center;background:#c4b5fd;border-radius:50%;color:#3b0764;cursor:default;display:inline-flex;flex-shrink:0;font-size:.6rem;font-style:italic;font-weight:800;height:13px;justify-content:center;margin-left:5px;position:relative;vertical-align:middle;width:13px}.instructor-tab--active .tab-info-icon{background:#a78bfa;color:#fff}.tab-info-icon:before{background:#1f2937;border-radius:6px;box-shadow:0 2px 8px #0000002e;color:#f9fafb;content:attr(data-tooltip);font-size:.75rem;font-style:normal;font-weight:400;line-height:1.45;padding:.45rem .65rem;top:calc(100% + 7px);white-space:normal;width:190px}.tab-info-icon:after,.tab-info-icon:before{left:50%;opacity:0;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .15s;z-index:200}.tab-info-icon:after{border:5px solid;border-color:#0000 #0000 #1f2937;content:"";top:calc(100% + 1px)}.tab-info-icon:hover:after,.tab-info-icon:hover:before{opacity:1}.instructor-prompt-panel{display:flex;flex:1 1;flex-direction:column;gap:.75rem;overflow-y:auto;padding:1rem}.instructor-prompt-hint{color:#6b7280;font-size:.82rem;line-height:1.5}.instructor-prompt-textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#1f2937;flex:1 1;font-family:inherit;font-size:.87rem;line-height:1.5;min-height:140px;outline:none;padding:.75rem;resize:vertical;transition:border-color .15s}.instructor-prompt-textarea:focus{border-color:#a78bfa;box-shadow:0 0 0 2px #ede9fe}.instructor-prompt-actions{align-items:center;display:flex;gap:.75rem}.instructor-prompt-summarize-btn{background:#fff;border:1.5px solid #a78bfa;border-radius:7px;color:#7c3aed;cursor:pointer;font-size:.85rem;font-weight:600;padding:.45rem 1.1rem;transition:background .15s,color .15s}.instructor-prompt-summarize-btn:hover:not(:disabled){background:#ede9fe}.instructor-prompt-summarize-btn:disabled{cursor:not-allowed;opacity:.6}.instructor-prompt-save-btn{background:#7c3aed;border:none;border-radius:7px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.45rem 1.1rem;transition:background .15s}.instructor-prompt-save-btn:hover:not(:disabled){background:#6d28d9}.instructor-prompt-save-btn:disabled{cursor:not-allowed;opacity:.6}.instructor-prompt-saved{color:#16a34a;font-size:.82rem;font-weight:500}.instructor-prompt-summary{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:8px;color:#3b0764;font-size:.85rem;line-height:1.6;padding:.75rem 1rem}.instructor-prompt-summary-label{color:#7c3aed;font-size:.75rem;font-weight:700;letter-spacing:.05em;margin-bottom:.4rem;text-transform:uppercase}.confidence-slider-wrap{border-top:1px solid var(--pb-border);flex-shrink:0;padding:.2rem 1rem .25rem}.confidence-slider-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1px}.confidence-slider-label{color:var(--pb-fg-3);font-size:.68rem}.confidence-slider-value{color:var(--pb-violet);font-size:.68rem;font-weight:var(--pb-w-semi)}.confidence-slider{accent-color:var(--pb-violet);cursor:pointer;height:14px;margin:0;touch-action:pan-x;width:100%}.confidence-slider-labels{color:var(--pb-fg-5);display:flex;font-size:.575rem;justify-content:space-between;line-height:1;margin-top:-1px}.cycle-author-panel{display:flex;flex:1 1 auto;flex-direction:column;gap:12px;min-height:0;overflow-y:auto;padding:12px}.cycle-author-breadcrumb{background:var(--pb-bg-chat);border-bottom:1px solid var(--pb-border-soft);display:flex;justify-content:center;margin:-12px -12px 0;padding:8px 12px;position:sticky;top:-12px;z-index:3}.cycle-author-breadcrumb .guided-step-bar{margin-bottom:0}.cycle-author-topbar-left,.cycle-author-topbar-right{align-items:center;display:flex;flex:1 1}.cycle-author-topbar-right{justify-content:flex-end}.cycle-author-topbar{align-items:center;background:var(--pb-bg-chat);display:flex;gap:12px;justify-content:space-between;margin:-12px -12px 0;padding:12px;position:sticky;top:-12px;z-index:2}.cycle-author-breadcrumb~.cycle-author-topbar{margin-top:0;top:22px}.cycle-author-topbar-label{color:var(--pb-fg-4);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.cycle-author-rail{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:10px;flex-shrink:0}.cycle-author-rail-toggle{align-items:center;background:#0000;border:none;border-radius:10px;cursor:pointer;display:flex;gap:8px;justify-content:space-between;padding:9px 12px;transition:background var(--pb-dur-fast);width:100%}.cycle-author-rail--open .cycle-author-rail-toggle{border-bottom:1px solid var(--pb-border-soft);border-radius:10px 10px 0 0}.cycle-author-rail-toggle:hover{background:var(--pb-bg-hover)}.cycle-author-rail-toggle-label{color:var(--pb-fg-3);font-size:.75rem;font-weight:600;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.cycle-author-rail-chevron{color:var(--pb-fg-4);flex:0 0 auto;font-size:.65rem}.cycle-author-steps{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:6px 12px 10px}.cycle-author-step{align-items:flex-start;border-radius:8px;display:flex;gap:8px;padding:5px 6px}.cycle-author-step-marker{align-items:center;background:var(--pb-bg-muted);border:1px solid var(--pb-border-soft);border-radius:50%;color:var(--pb-fg-4);display:flex;flex:0 0 auto;font-size:.7rem;font-weight:700;height:20px;justify-content:center;width:20px}.cycle-author-step-body{display:flex;flex-direction:column;line-height:1.2;min-width:0}.cycle-author-step-title{color:var(--pb-fg-2);font-size:.82rem;font-weight:600}.cycle-author-step-reads{color:var(--pb-fg-5);font-size:.7rem}.cycle-author-step--current{background:var(--pb-amber-soft)}.cycle-author-step--current .cycle-author-step-marker{background:var(--pb-amber);border-color:var(--pb-amber-border);color:#fff}.cycle-author-step--current .cycle-author-step-title{color:var(--pb-fg-1)}.cycle-author-step--done .cycle-author-step-marker{background:var(--pb-green);border-color:var(--pb-green-border);color:#fff}.cycle-author-step--done:hover{background:var(--pb-bg-hover)}.cycle-author-step--revisiting{background:var(--pb-bg-hover);outline:2px solid var(--pb-green);outline-offset:-2px}.cycle-author-step--revisiting .cycle-author-step-marker{background:var(--pb-green);border-color:var(--pb-green-border);color:#fff}.cycle-author-step--upcoming{opacity:.6}.cycle-author-topbar-label--revisit{color:var(--pb-green)}.cycle-author-back-btn{background:#0000;border:1px solid var(--pb-border-soft);border-radius:8px;color:var(--pb-fg-2);cursor:pointer;flex:0 0 auto;font-size:.82rem;font-weight:600;padding:7px 14px;transition:background var(--pb-dur-fast),border-color var(--pb-dur-fast);white-space:nowrap}.cycle-author-back-btn:hover:not(:disabled){background:var(--pb-bg-hover);border-color:var(--pb-border-strong)}.cycle-author-back-btn:disabled{cursor:not-allowed;opacity:.5}.cycle-author-draft{min-height:40px}.cycle-author-empty{color:var(--pb-fg-4);font-size:.85rem;padding:24px;text-align:center}.cycle-author-upcoming{border-top:1px dashed #ddd;border-top:1px dashed var(--pb-border,#ddd);display:flex;flex-direction:column;gap:8px;margin-top:14px;padding-top:12px}.cycle-author-upcoming-label{color:var(--pb-fg-4);font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.cycle-author-upcoming .cycle-card{opacity:.85}.cycle-author-upcoming-pending{align-items:center;background:#f9fafb;background:var(--pb-bg-muted,#f9fafb);border:1px dashed #ddd;border:1px dashed var(--pb-border,#ddd);border-radius:8px;color:var(--pb-fg-4);display:flex;font-size:.82rem;gap:8px;padding:10px 12px}.cycle-author-upcoming-pending .cycle-number{align-items:center;background:#7f77dd;background:var(--pb-cycle,#7f77dd);border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.72rem;font-weight:700;height:1.4rem;justify-content:center;width:1.4rem}.cycle-author-upcoming-pending .cycle-title{color:var(--pb-fg-2);font-weight:600}.cycle-author-pending-note{font-style:italic;margin-left:auto}.cycle-author-finalize-btn{background:var(--pb-amber);border:1px solid var(--pb-amber-border);border-radius:8px;color:#fff;cursor:pointer;flex:0 0 auto;font-size:.85rem;font-weight:700;padding:8px 16px;transition:background var(--pb-dur-fast);white-space:nowrap}.cycle-author-finalize-btn:hover:not(:disabled){background:var(--pb-amber-hover)}.cycle-author-finalize-btn:disabled{background:var(--pb-amber-disabled);cursor:not-allowed}.chat-section--test-guided .guided-initial-textarea:focus{border-color:#3a7d50}.chat-section--test-guided .guided-initial-send-btn{background:var(--pb-blue)}.chat-section--test-guided .guided-initial-send-btn:hover:not(:disabled){background:var(--pb-blue-hover)}.chat-section--test-guided .guided-step-label--link:hover:not(:disabled),.chat-section--test-guided .guided-step-label.current{background:#f2f8f4;color:var(--pb-blue)}.chat-section--test-guided .guided-recommendation-bar{background:#f2f8f4;border-top-color:#3a7d50}.chat-section--test-guided .guided-recommendation-label{color:var(--pb-blue-hover)}.chat-section--test-guided .guided-take-me-btn{background:var(--pb-blue)}.chat-section--test-guided .guided-take-me-btn:hover{background:var(--pb-blue-hover)}.chat-section--test-guided .setup-cycles-badge{background:color-mix(in srgb,var(--pb-blue) 12%,#0000);border-color:#3a7d50;color:var(--pb-blue)}.guided-structure-item-settings{display:flex;flex-direction:column;gap:0}.guided-structure-settings-toggle{align-self:flex-start;background:none;border:1px solid #e2e6ea;border:1px solid var(--pb-border-soft,#e2e6ea);border-radius:999px;border-radius:var(--pb-r-pill,999px);color:#888;color:var(--pb-fg-4,#888);cursor:pointer;font-size:.72rem;font-weight:600;letter-spacing:.02em;margin-top:.25rem;padding:.2rem .65rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast),border-color var(--pb-dur-fast)}.guided-structure-settings-toggle.open,.guided-structure-settings-toggle:hover{background:var(--pb-indigo-soft);border-color:var(--pb-cycle);color:var(--pb-cycle)}.guided-structure-settings-panel{background:#f8f9fa;background:var(--pb-bg-subtle,#f8f9fa);border:1px solid #eef0f2;border:1px solid var(--pb-border-softer,#eef0f2);border-radius:8px;border-radius:var(--pb-r-5,8px);display:flex;flex-direction:column;gap:.55rem;margin-top:.5rem;padding:.65rem .75rem}.guided-goals-presets{border-top:1px solid #eef0f2;border-top:1px solid var(--pb-border-softer,#eef0f2);display:flex;flex-direction:column;gap:.55rem;margin-top:1rem;padding-top:.8rem;width:100%}.guided-goals-preset-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.guided-goals-preset-label{color:#666;color:var(--pb-fg-3,#666);flex-shrink:0;font-size:.82rem;font-size:var(--pb-ts-xs,.82rem);font-weight:600;min-width:4.5rem}.guided-structure-dropdowns{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-bottom:.5rem}.guided-structure-dropdown-item{align-items:center;background:#fffaf4;border:1px solid #f0a04a;border-radius:999px;border-radius:var(--pb-r-pill,999px);display:flex;gap:0;overflow:hidden;transition:box-shadow var(--pb-dur-fast)}.guided-structure-dropdown-item:focus-within{box-shadow:0 0 0 2px #e07a1033}.guided-structure-dropdown-label{color:#e07a10;font-size:.75rem;font-weight:700;letter-spacing:.01em;padding:.25rem .55rem .25rem .7rem;pointer-events:none;white-space:nowrap}.guided-structure-dropdown-select{appearance:auto;background:#0000;border:none;border-left:1px solid #f0a04a;color:#92400e;cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:500;outline:none;padding:.25rem .55rem .25rem .45rem}.guided-structure-dropdown-with-tooltip{align-items:center;display:flex;gap:.35rem;position:relative}.guided-structure-dropdown-with-tooltip .info-tooltip-popup{bottom:auto;left:calc(100% + 6px);right:auto;top:50%;transform:translateY(-50%)}.thread-sidebar-toggle{background:var(--pb-bg-surface);border:1px solid #ddd;border-radius:6px;color:#555;cursor:pointer;font-size:14px;line-height:1;padding:.3rem .55rem;transition:background .15s,color .15s,border-color .15s}.thread-sidebar-toggle:hover{background:#f0eeff;border-color:#7f77dd;color:#5b52c8}.chat-body{flex-direction:row}.chat-body,.chat-main{display:flex;flex:1 1;min-height:0;overflow:hidden}.chat-main,.thread-sidebar{flex-direction:column}.thread-sidebar{background:#f7f7fb;background:var(--pb-bg-subtle,#f7f7fb);border-left:1px solid #e0e0e8;border-left:1px solid var(--pb-border,#e0e0e8);display:flex;flex-shrink:0;order:2;overflow:hidden;transition:width .2s ease;width:180px}.thread-sidebar--collapsed{width:36px}.thread-sidebar-header{align-items:center;border-bottom:1px solid #e0e0e8;border-bottom:1px solid var(--pb-border,#e0e0e8);display:flex;flex-shrink:0;justify-content:space-between;min-height:42px;padding:10px 8px 10px 14px}.thread-sidebar--collapsed .thread-sidebar-header{justify-content:center;padding:10px 4px}.thread-sidebar-collapse-btn{background:none;border:none;border-radius:4px;color:#aaa;cursor:pointer;flex-shrink:0;font-size:18px;line-height:1;padding:2px 4px;transition:color .1s,background .1s}.thread-sidebar-collapse-btn:hover{background:#ede9ff;color:#5b52c8}.thread-sidebar-title{color:#222;color:var(--pb-fg-1,#222);font-size:13px;font-weight:600;letter-spacing:.1px}.thread-sidebar-close{background:none;border:none;color:#999;cursor:pointer;font-size:20px;line-height:1;padding:0 2px;transition:color .1s}.thread-sidebar-close:hover{color:#333}.q-navigator{margin-top:10px}.q-nav-chips{display:flex;flex-wrap:wrap;gap:5px}.q-nav-chip{background:#fff;border:1px solid #ddd;border-radius:7px;color:#888;cursor:pointer;font-size:12px;font-weight:600;height:28px;transition:all .15s;width:28px}.q-nav-chip:disabled{cursor:default;opacity:.45}.q-nav-chip--done{background:#ecebfb;border-color:#d6d2f5;color:#5b53c6}.q-nav-chip--current{border-color:#7f77dd;color:#5b53c6}.q-nav-chip--viewing{background:#7f77dd;border-color:#7f77dd;color:#fff}.q-nav-reviewing{align-items:center;background:#fff7e6;border:1px solid #ffe0a3;border-radius:8px;color:#8a6d3b;display:flex;font-size:12px;justify-content:space-between;margin-top:8px;padding:6px 10px}.q-nav-return{background:none;border:none;color:#5b53c6;cursor:pointer;font-size:12px;font-weight:600}.header-mode-switch{background:#f1f0fb;border-radius:9px;display:inline-flex;gap:3px;padding:2px}.header-mode-btn{background:#0000;border:none;border-radius:7px;color:#555;cursor:pointer;font-size:12px;font-weight:500;padding:5px 10px;transition:background .15s,color .15s;white-space:nowrap}.header-mode-btn:hover:not(.header-mode-btn--active){background:#e6e4f7}.header-mode-btn--active{background:#7f77dd;color:#fff}.header-mode-btn:disabled{cursor:default;opacity:.6}.thread-sidebar-new-btn{background:#7f77dd;border:none;border-radius:8px;color:#fff;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:500;margin:10px 12px 4px;padding:7px 12px;text-align:left;transition:background .15s}.thread-sidebar-new-btn:hover{background:#6a62c8}.thread-sidebar-body{flex:1 1;overflow-y:auto;padding-bottom:16px}.thread-sidebar-section{margin-top:6px}.thread-section-header{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:10.5px;font-weight:700;justify-content:space-between;letter-spacing:.6px;padding:7px 14px 5px;text-transform:uppercase;transition:color .1s;width:100%}.thread-section-header:hover{color:#666}.thread-section-items{padding:0 6px}.thread-section-empty{color:#bbb;font-size:12px;font-style:italic;padding:3px 10px 8px}.thread-item{align-items:center;border-radius:8px;display:flex;margin-bottom:1px;overflow:hidden;transition:background .1s}.thread-item:hover:not(.thread-item--active){background:#ededf8}.thread-item--active{background:#e8e7ff}.thread-item--instructor{border-left:2px solid #7f77dd;margin-bottom:2px}.thread-item--instructor .thread-item-title{color:#5b52c8;font-weight:500}.thread-item-badge{background:#ede9ff;border-radius:4px;color:#7f77dd;display:inline-block;font-size:10px;font-weight:500;margin-left:5px;padding:1px 5px;vertical-align:middle}.thread-item-btn{background:none;border:none;cursor:pointer;flex:1 1;min-width:0;padding:7px 6px 7px 10px;text-align:left}.thread-item-title{color:#444;display:block;font-size:12.5px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-item--active .thread-item-title{color:#5b52c8;font-weight:500}.thread-item-date{color:#bbb;display:block;font-size:10px;margin-top:2px}.thread-item-actions{align-items:center;display:flex;flex-shrink:0;opacity:0;transition:opacity .12s}.thread-item--active .thread-item-actions,.thread-item:hover .thread-item-actions{opacity:1}.thread-item-rename{background:none;border:none;color:#ccc;cursor:pointer;font-size:13px;line-height:1;padding:4px 3px 4px 4px;transition:color .12s}.thread-item-rename:hover{color:#7f77dd}.thread-item-delete{background:none;border:none;color:#ccc;cursor:pointer;font-size:15px;line-height:1;padding:4px 8px 4px 2px;transition:color .12s}.thread-item-delete:hover{color:#e05555}.thread-title-input{background:#fff;border:1px solid #7f77dd;border-radius:6px;flex:1 1;font-size:12px;margin:4px 6px 4px 8px;outline:none;padding:5px 8px;width:100%}.retake-policy-section{background:#f9f8ff;border:1px solid #e8e5ff;border-radius:8px;margin-top:1rem;padding:.75rem .9rem}.retake-policy-header{align-items:center;display:flex;gap:6px;margin-bottom:.55rem}.retake-policy-title{color:#5a5a7a;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.retake-policy-options{display:flex;flex-direction:column;gap:6px}.retake-policy-option{align-items:center;color:#333;cursor:pointer;display:flex;font-size:13px;gap:8px}.retake-policy-option input[type=radio]{accent-color:#7f77dd;cursor:pointer}.retake-mix-row{align-items:center;border-top:1px solid #e8e5ff;display:flex;gap:10px;margin-top:8px;padding-top:8px}.retake-mix-label{color:#666;font-size:12px;min-width:60px;white-space:nowrap}.retake-mix-label:last-child{text-align:right}.retake-mix-slider{accent-color:#7f77dd;flex:1 1}.retake-policy-option--disabled{filter:blur(.5px);opacity:.35;pointer-events:none}.retake-new-hint{color:#7f77dd;font-size:11px;font-style:italic}.topic-distribution-section{background:#f9f8ff;border:1px solid #e0ddf8;border-radius:10px;margin-top:1rem;padding:.75rem .9rem}.topic-distribution-header{align-items:center;display:flex;gap:.4rem;margin-bottom:.75rem}.topic-distribution-title{color:#3d3768;flex:1 1;font-size:.78rem;font-weight:600}.topic-distribution-total{background:#ede9ff;border-radius:20px;color:#7f77dd;font-size:.75rem;font-weight:700;padding:.1rem .45rem}.topic-distribution-action-btn{background:#7f77dd;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.68rem;font-weight:600;padding:.18rem .55rem;transition:background .15s;white-space:nowrap}.topic-distribution-action-btn:hover:not(:disabled){background:#6960c8}.topic-distribution-action-btn:disabled{cursor:not-allowed;opacity:.5}.topic-distribution-reset-btn{background:#e8e5ff;color:#5a53c0}.topic-distribution-reset-btn:hover:not(:disabled){background:#d0cbf8}.topic-distribution-loading{color:#888;font-size:.75rem;padding:.25rem 0}.topic-distribution-list{grid-column-gap:.5rem;grid-row-gap:.75rem;align-items:center;column-gap:.5rem;display:grid;grid-template-columns:auto max-content 1fr auto;row-gap:.75rem}.topic-distribution-row{display:contents}.topic-distribution-label{color:#444;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-distribution-slider{accent-color:#7f77dd;cursor:pointer;width:100%}.q-balance-toggle{align-items:center;background:#f0f0f0;border:1px solid #d8d8d8;border-radius:5px;color:#9b96d4;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.85rem;gap:.15rem;line-height:1;padding:.15rem .35rem}.q-balance-toggle-icon{font-size:.8rem}.q-balance-toggle:hover{background:#e8e8e8;border-color:silver;color:#6960c8}.q-balance-panel{grid-column-gap:.5rem;grid-row-gap:.35rem;align-items:center;background:#f9f8ff;border:1px solid #e0ddf8;border-radius:8px;column-gap:.5rem;display:grid;grid-column:1/-1;grid-template-columns:max-content 1fr auto;margin-top:-.15rem;padding:.55rem .7rem .45rem;row-gap:.35rem}.q-balance-row{display:contents}.q-balance-label{color:#555;font-size:.7rem;white-space:nowrap}.q-balance-slider{accent-color:#7f77dd;cursor:pointer;width:100%}.q-balance-pct{color:#7f77dd;font-size:.7rem;font-weight:600;min-width:2.4rem;text-align:right}.q-balance-footer{display:flex;grid-column:1/-1;justify-content:flex-end;margin-top:.05rem}.topic-distribution-pct{color:#7f77dd;font-size:.72rem;font-weight:600;min-width:2.8rem;text-align:right}.topic-distribution-delete{background:none;border:none;color:#bbb;cursor:pointer;flex-shrink:0;font-size:1rem;line-height:1;padding:0 .1rem;transition:color .15s}.topic-distribution-delete:hover:not(:disabled){color:#e05}.topic-distribution-delete:disabled{cursor:not-allowed;opacity:.3}.topic-distribution-add{display:flex;gap:.4rem;margin-top:.65rem}.topic-distribution-add-input{background:#fff;border:1px solid #d8d4f4;border-radius:6px;color:#333;flex:1 1;font-size:.75rem;outline:none;padding:.3rem .5rem}.topic-distribution-add-input:focus{border-color:#7f77dd}.topic-distribution-add-btn{background:#7f77dd;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.73rem;font-weight:600;padding:.3rem .7rem;transition:background .15s}.topic-distribution-add-btn:hover:not(:disabled){background:#6960c8}.topic-distribution-add-btn:disabled{cursor:not-allowed;opacity:.45}.new-chat-btn,.thread-sidebar-new-btn{background:var(--pb-blue)}.new-chat-btn:hover:not(:disabled),.thread-sidebar-new-btn:hover{background:var(--pb-blue-hover)}.new-chat-btn:disabled{background:var(--pb-blue-disabled)}.pb-icon{display:inline-block;flex-shrink:0;vertical-align:-.15em}.instructor-home-card-icon .pb-icon{vertical-align:middle}h3>.pb-icon,h4>.pb-icon,h5>.pb-icon{margin-right:7px}.thread-item:hover:not(.thread-item--active){background:var(--pb-bg-subtle)}.thread-item--active{background:var(--pb-blue-soft);box-shadow:inset 3px 0 0 var(--pb-blue)}.thread-item--active .thread-item-title{color:var(--pb-blue-fg-deep);font-weight:var(--pb-w-semi)}.thread-item--active .thread-item-date{color:var(--pb-blue-fg)}.empty-state-anchor{background:var(--pb-bg-subtle);border-left:3px solid var(--pb-blue);color:var(--pb-fg-2);font-size:13px;line-height:1.5;margin:0 0 10px;padding:8px 12px;text-align:left}.assignment{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:10px;margin:0 8px 10px;overflow:hidden}.assignment--current{border-color:var(--pb-blue-border);box-shadow:inset 3px 0 0 var(--pb-blue)}.assignment-head{background:var(--pb-bg-subtle);border:none;cursor:pointer;display:block;padding:9px 11px;text-align:left;width:100%}.assignment-head:hover{background:var(--pb-blue-soft)}.assignment-title{color:var(--pb-fg-1);display:block;font-size:13px;font-weight:var(--pb-w-semi)}.assignment-meta{color:var(--pb-fg-4);display:block;font-size:11px;margin-top:2px}.assignment-attempts{border-top:1px solid var(--pb-border-softer);padding:2px 4px 4px}.assignment-attempts .thread-item{margin-bottom:0}.assignment-attempts .thread-item-btn{padding:5px 8px}.assignment-attempts .thread-item-date,.assignment-attempts .thread-item-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-attempts .thread-item-date{font-size:11px;margin-top:1px}.past-attempt-bar{align-items:center;background:var(--pb-bg-subtle);border-bottom:1px solid var(--pb-border-soft);color:var(--pb-fg-4);display:flex;font-size:12px;gap:10px;justify-content:space-between;padding:7px 12px}.past-attempt-bar__back{background:var(--pb-bg-surface);border:1px solid var(--pb-blue-border);border-radius:var(--pb-r-3);color:var(--pb-blue-fg);cursor:pointer;font-size:12px;font-weight:var(--pb-w-med);padding:4px 10px;white-space:nowrap}.past-attempt-bar__back:hover{background:var(--pb-blue-soft)}.recap-backdrop{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:1000}.recap-modal{background:var(--pb-bg-surface);border-radius:var(--pb-r-7);box-shadow:var(--pb-shadow-modal);display:flex;flex-direction:column;max-height:85vh;max-width:640px;overflow:hidden;width:100%}.recap-modal-header{align-items:center;background:var(--pb-bg-muted);border-bottom:1px solid var(--pb-border-soft);display:flex;justify-content:space-between;padding:.9rem 1.1rem}.recap-modal-title{color:var(--pb-fg);font-size:var(--pb-ts-body);font-weight:var(--pb-w-bold)}.recap-modal-actions{align-items:center;display:flex;gap:.5rem}.recap-close-btn{background:none;border:none;color:var(--pb-fg-4);cursor:pointer;font-size:1.3rem;line-height:1;padding:0 .3rem}.recap-close-btn:hover{color:var(--pb-fg)}.recap-modal-body{flex:1 1;gap:1.5rem;overflow-y:auto;padding:1.25rem 1.4rem}.recap-loading,.recap-modal-body{display:flex;flex-direction:column}.recap-loading{align-items:center;color:var(--pb-fg-4);gap:1rem;padding:2.5rem 0}.recap-spinner{animation:recap-spin .7s linear infinite;border:3px solid var(--pb-border-soft);border-radius:50%;border-top-color:var(--pb-indigo);height:2rem;width:2rem}@keyframes recap-spin{to{transform:rotate(1turn)}}.recap-section{display:flex;flex-direction:column;gap:.75rem}.recap-section-title{align-items:center;color:var(--pb-indigo);display:flex;font-size:.8rem;font-weight:var(--pb-w-bold);gap:.5rem;letter-spacing:.06em;margin:0;text-transform:uppercase}.recap-card-count{background:var(--pb-violet-soft);border-radius:var(--pb-r-pill);color:var(--pb-violet-fg);font-size:var(--pb-ts-micro);font-weight:var(--pb-w-med);letter-spacing:0;padding:.1rem .5rem;text-transform:none}.recap-summary{color:var(--pb-fg-1);font-size:var(--pb-ts-body-s);line-height:1.65}.recap-summary ol,.recap-summary ul{margin:.25rem 0 .25rem 1.2rem;padding:0}.recap-summary li{margin-bottom:.3rem}.recap-summary p{margin:.2rem 0}.flashcard-list{gap:.65rem}.flashcard,.flashcard-list{display:flex;flex-direction:column}.flashcard{background:#fafbff;border:1px solid #e0e7ff;border-radius:var(--pb-r-6);gap:.45rem;padding:.75rem 1rem}.flashcard-number{color:var(--pb-indigo-border-2);font-size:.7rem;font-weight:var(--pb-w-semi);letter-spacing:.05em;text-transform:uppercase}.flashcard-question{color:var(--pb-indigo-fg);font-size:var(--pb-ts-body-s);font-weight:var(--pb-w-semi);line-height:1.45}.flashcard-answer{border-top:1px solid #e0e7ff;color:var(--pb-fg-2);font-size:.88rem;line-height:1.55;margin-top:.1rem;padding-top:.45rem}.flashcard-reveal-btn{align-self:flex-start;background:none;border:1px solid var(--pb-indigo-border);border-radius:var(--pb-r-3);color:var(--pb-indigo-deep);cursor:pointer;font-size:var(--pb-ts-xxs);font-weight:var(--pb-w-med);margin-top:.1rem;padding:.25rem .65rem}.flashcard-reveal-btn:hover{background:var(--pb-indigo-soft)}.recap-export-menu{position:relative}.recap-export-trigger{background:var(--pb-indigo);border:none;border-radius:var(--pb-r-4);color:var(--pb-bg-surface);cursor:pointer;font-size:.8rem;font-weight:var(--pb-w-med);padding:.3rem .7rem}.recap-export-trigger:hover{background:var(--pb-indigo-deep)}.recap-export-dropdown{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);box-shadow:var(--pb-shadow-dropdn);min-width:180px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:10}.recap-export-dropdown button{align-items:center;background:none;border:none;color:var(--pb-fg-2);cursor:pointer;display:flex;font-size:var(--pb-ts-xs);gap:.6rem;padding:.55rem .9rem;text-align:left;width:100%}.recap-export-dropdown button:hover{background:var(--pb-border-softer)}.recap-error{color:var(--pb-error-deep);font-size:var(--pb-ts-small);padding:2rem;text-align:center}.gp-overlay{background:#00000059;display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:500}.gp-panel{animation:gp-slide-in .2s ease;background:#fff;box-shadow:-4px 0 24px #0000001f;display:flex;flex-direction:column;height:100%;max-width:95vw;width:360px}@keyframes gp-slide-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}.gp-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.gp-title{color:#1a1a1a;font-size:15px;font-weight:600}.gp-close{background:none;border:none;color:#666;cursor:pointer;font-size:20px;line-height:1;padding:0 4px}.gp-add-form{border-bottom:1px solid #eee;flex-shrink:0;padding:14px 20px 10px}.gp-add-row{display:flex;gap:8px}.gp-add-input{border:1px solid #ddd;border-radius:7px;flex:1 1;font-size:13px;outline:none;padding:7px 10px;transition:border-color .15s}.gp-add-input:focus{border-color:#7f77dd}.gp-add-btn{background:#7f77dd;border:none;border-radius:7px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px;transition:background .15s;white-space:nowrap}.gp-add-btn:hover:not(:disabled){background:#6a63c8}.gp-add-btn:disabled{cursor:not-allowed;opacity:.6}.gp-add-error{color:#d32f2f;font-size:12px;margin:6px 0 0}.gp-add-hint{color:#aaa;font-size:11px;margin:6px 0 0}.gp-body{flex:1 1;overflow-y:auto;padding:12px 20px 20px}.gp-status{color:#888;font-size:13px;margin-top:32px;text-align:center}.gp-status--error{color:#d32f2f}.gp-group{margin-bottom:20px}.gp-group-letter{border-bottom:1px solid #f0f0f0;color:#bbb;font-size:11px;font-weight:700;letter-spacing:.07em;margin-bottom:8px;padding-bottom:4px;text-transform:uppercase}.gp-term-card{background:#fafafa;border:1px solid #ebebeb;border-radius:8px;margin-bottom:8px;padding:10px 12px}.gp-term-row{align-items:center;display:flex;gap:6px;margin-bottom:5px}.gp-term-name{color:#1a1a1a;flex:1 1;font-size:13px;font-weight:600}.gp-term-page{background:#f0f0f0;border-radius:99px;color:#aaa;font-size:11px;padding:1px 6px}.gp-term-delete{background:none;border:none;color:#ccc;cursor:pointer;font-size:16px;line-height:1;padding:0 2px;transition:color .15s}.gp-term-delete:hover:not(:disabled){color:#e57373}.gp-term-delete:disabled{opacity:.5}.gp-term-definition{color:#555;font-size:12px;line-height:1.5;margin:0}.gp-no-def{color:#bbb}.font-size-controls{align-items:center;display:flex;gap:2px}.font-size-btn{background:var(--pb-bg-surface);border:1px solid #ddd;border-radius:6px;color:#555;cursor:pointer;font-size:12px;font-weight:600;line-height:1;padding:.3rem .55rem;transition:background .15s,color .15s}.font-size-btn:hover:not(:disabled){background:#f0eeff;border-color:#7f77dd;color:#5b52c8}.font-size-btn:disabled{cursor:not-allowed;opacity:.35}.reading-container{display:flex;flex-direction:column;height:100vh}.reading-header{align-items:center;background:var(--pb-bg-subtle);border-bottom:1px solid var(--pb-border);display:flex;justify-content:space-between;padding:1rem}.header-left h1{font-size:var(--pb-ts-h1);margin:0}.paper-title{color:var(--pb-fg-4);font-size:var(--pb-ts-small);margin-left:1rem}.header-left{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.reading-back-link{color:var(--pb-blue);font-size:var(--pb-ts-small);text-decoration:none}.reading-back-link:hover{text-decoration:underline}.header-right{align-items:center;display:flex;gap:1rem}.logout-btn{background:var(--pb-blue);border:none;border-radius:var(--pb-r-3);color:var(--pb-bg-surface);cursor:pointer;padding:.5rem 1rem}.loading-container{align-items:center;display:flex;height:100vh;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top:4px solid var(--pb-blue);height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.session-info-bar{align-items:center;background:var(--pb-bg-strip);border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:15px 30px}.session-details{color:#333;font-size:16px}.session-details strong{font-weight:var(--pb-w-semi)}.page-range{color:var(--pb-fg-4);font-size:14px}.unlock-btn{background:var(--pb-green-bright);border:none;border-radius:var(--pb-r-3);color:var(--pb-bg-surface);cursor:pointer;font-size:14px;font-weight:var(--pb-w-semi);padding:10px 20px;transition:background .3s}.unlock-btn:hover:not(:disabled){background:var(--pb-green-bright-h)}.unlock-btn:disabled{background:var(--pb-border-strong);cursor:not-allowed}.pdf-panel{display:flex;flex-direction:column;overflow-x:hidden;overflow-y:hidden}.chat-panel,.pdf-panel{height:100%;min-width:0}.chat-panel{flex:1 1;overflow:hidden}.split-divider{background:#e0e0e0;cursor:col-resize;flex:0 0 5px;position:relative;transition:background var(--pb-dur-fast)}.split-divider:after{content:"";inset:0 -3px;position:absolute}.split-divider:hover{background:var(--pb-blue)}.reading-progress-bar{background:var(--pb-border-soft);flex-shrink:0;height:3px}.reading-progress-fill{background:var(--pb-green-bright);border-radius:0 2px 2px 0;height:100%;transition:width var(--pb-dur-slow) ease}.recap-toggle-btn{background:var(--pb-bg-surface);border:1px solid var(--pb-indigo-border);border-radius:var(--pb-r-5);color:var(--pb-indigo-darker);cursor:pointer;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);padding:.4rem .85rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast)}.recap-toggle-btn:hover{background:var(--pb-indigo-soft)}.recap-toggle-btn.active{background:var(--pb-indigo);border-color:var(--pb-indigo);color:var(--pb-bg-surface)}.recap-toggle-btn:disabled{cursor:not-allowed;opacity:.45}.recap-toggle-btn:disabled:hover{background:var(--pb-bg-surface);color:var(--pb-indigo-darker)}.toc-toggle-btn{background:var(--pb-bg-surface);border:1px solid var(--pb-green-border-2);border-radius:var(--pb-r-5);color:var(--pb-green-fg);cursor:pointer;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);padding:.4rem .85rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast)}.toc-toggle-btn:hover{background:var(--pb-green-soft)}.toc-toggle-btn.active{background:var(--pb-green);border-color:var(--pb-green);color:var(--pb-bg-surface)}.test-highlight-btn{background:var(--pb-purple-9c);border:none;border-radius:var(--pb-r-3);color:var(--pb-bg-surface);cursor:pointer;font-size:14px;margin-right:10px;padding:8px 16px;transition:background var(--pb-dur-norm)}.test-highlight-btn:hover{background:var(--pb-purple-7b)}.toc-sidebar{background:var(--pb-bg-surface);border-right:1px solid var(--pb-border);flex-shrink:0;overflow-y:auto;padding:20px;width:300px}.toc-sidebar h3{border-bottom:2px solid var(--pb-green-bright);color:#333;font-size:18px;margin:0 0 20px;padding-bottom:10px}.toc-list{gap:5px}.toc-item,.toc-list{display:flex;flex-direction:column}.toc-link{background:none;border:none;border-radius:var(--pb-r-3);color:#333;cursor:pointer;font-size:14px;padding:8px 12px;text-align:left;transition:background var(--pb-dur-norm);width:100%}.toc-link:hover:not(:disabled){background:var(--pb-bg-page)}.toc-link:disabled{color:var(--pb-fg-5);cursor:not-allowed}.toc-page{color:var(--pb-fg-4);font-size:12px;margin-left:5px}.toc-children{margin-top:5px}.analytics-toggle-btn{background:var(--pb-bg-surface);border:1px solid var(--pb-indigo-border);border-radius:var(--pb-r-5);color:var(--pb-indigo-darker);cursor:pointer;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);padding:.4rem .85rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast)}.analytics-toggle-btn:hover{background:var(--pb-indigo-soft)}.analytics-toggle-btn.active{background:var(--pb-indigo);border-color:var(--pb-indigo);color:var(--pb-bg-surface)}.glossary-selection-popup{animation:popup-appear .15s ease;background:#7f77dd;border:none;border-radius:8px;box-shadow:0 4px 16px #0000002e;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px;position:fixed;transform:translateX(-50%);white-space:nowrap;z-index:600}.glossary-selection-popup:hover{background:#6a63c8}@keyframes popup-appear{0%{opacity:0;transform:translateX(-50%) translateY(-4px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.glossary-toggle-btn{align-items:center;background:var(--pb-bg-surface);border:1px solid #c5c0f0;border-radius:var(--pb-r-5);color:#5b52c8;cursor:pointer;display:inline-flex;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);gap:.35rem;padding:.4rem .85rem;transition:background .15s,color .15s}.glossary-toggle-btn:hover{background:#ede9ff}.notes-toggle-btn{align-items:center;background:var(--pb-bg-surface);border:1px solid var(--pb-amber-border-2);border-radius:var(--pb-r-5);color:var(--pb-amber-fg);cursor:pointer;display:inline-flex;font-size:var(--pb-ts-xs);font-weight:var(--pb-w-med);gap:.35rem;padding:.4rem .85rem;transition:background var(--pb-dur-fast),color var(--pb-dur-fast)}.notes-toggle-btn:hover{background:var(--pb-amber-soft-2)}.notes-toggle-btn.active{background:var(--pb-amber);border-color:var(--pb-amber);color:var(--pb-bg-surface)}.notes-count{background:#0000001f;border-radius:10px;font-size:var(--pb-ts-micro);font-weight:var(--pb-w-bold);padding:0 .4rem}.notes-toggle-btn.active .notes-count{background:#ffffff40}.notes-sidebar{background:var(--pb-bg-surface);border-right:1px solid var(--pb-border);flex-shrink:0;overflow-y:auto;padding:20px;width:320px}.notes-sidebar h3{color:#333;font-size:18px;margin:0}.notes-sidebar-header{align-items:center;border-bottom:2px solid var(--pb-amber);display:flex;gap:8px;justify-content:space-between;margin-bottom:16px;padding-bottom:8px}.export-menu{display:inline-block;position:relative}.export-menu-trigger{background:var(--pb-bg-surface);border:1px solid var(--pb-amber);border-radius:var(--pb-r-3);color:var(--pb-amber-fg);cursor:pointer;font-size:12px;font-weight:var(--pb-w-med);padding:4px 10px;transition:background var(--pb-dur-fast)}.export-menu-trigger:hover:not(:disabled){background:var(--pb-amber-soft-2)}.export-menu-trigger:disabled{cursor:not-allowed;opacity:.5}.export-menu-dropdown{background:var(--pb-bg-surface);border:1px solid var(--pb-border-soft);border-radius:var(--pb-r-5);box-shadow:var(--pb-shadow-dropdn2);min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:10}.export-menu-dropdown button{align-items:center;background:var(--pb-bg-surface);border:none;color:var(--pb-fg-1);cursor:pointer;display:flex;font-size:13px;gap:10px;padding:9px 12px;text-align:left;width:100%}.export-menu-dropdown button:hover{background:var(--pb-amber-soft-2)}.export-icon{font-size:14px}.notes-empty{color:var(--pb-fg-4);font-size:13px;line-height:1.5;margin:0}.notes-list{gap:10px}.note-card,.notes-list{display:flex;flex-direction:column}.note-card{background:var(--pb-amber-soft);border:1px solid var(--pb-amber-border);border-radius:var(--pb-r-5);gap:6px;padding:10px 12px}.note-card-header{align-items:center;display:flex;justify-content:space-between}.note-page-btn{background:var(--pb-amber);border:none;border-radius:var(--pb-r-2);color:var(--pb-bg-surface);cursor:pointer;font-size:11px;font-weight:var(--pb-w-semi);padding:2px 8px}.note-page-btn:hover{background:var(--pb-amber-hover)}.note-delete-btn{background:none;border:none;color:var(--pb-fg-5);cursor:pointer;font-size:18px;line-height:1;padding:0 4px}.note-delete-btn:hover{color:#dc2626}.note-excerpt{border-left:2px solid var(--pb-amber-border-2);color:var(--pb-fg-4);font-size:12px;font-style:italic;line-height:1.4;padding-left:6px}.note-body{color:var(--pb-fg-1);font-size:13px;line-height:1.5;white-space:pre-wrap}.reading-content{display:flex;flex:1 1;overflow:hidden}.pb-annotation-overlay{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.pb-annotation-card{background:#fff;border-radius:12px;box-shadow:0 12px 32px #00000040;padding:20px 22px;width:min(520px,92vw)}.pb-annotation-card__head{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.pb-annotation-card__badge{color:#b45309;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.pb-annotation-card__close{background:none;border:none;color:#64748b;cursor:pointer;font-size:24px;line-height:1}.pb-annotation-card__question{color:#0f172a;font-size:17px;line-height:1.5;margin:0 0 14px}.pb-annotation-card__anchor{border-left:3px solid #f59e0b;color:#475569;font-size:13px;line-height:1.5;margin:0;padding-left:12px}.pb-annotation-prompt{align-items:center;background:#1e293b;border-radius:10px;bottom:28px;box-shadow:0 8px 24px #0000004d;display:flex;gap:14px;left:50%;max-width:min(620px,92vw);padding:10px 14px;position:fixed;transform:translateX(-50%);z-index:999}.pb-annotation-prompt__text{color:#cbd5e1;font-size:13px;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pb-annotation-btn{background:#f59e0b;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:600;padding:7px 14px}.pb-annotation-btn:hover:not(:disabled){background:#d97706}.pb-annotation-btn:disabled{cursor:not-allowed;opacity:.5}.pb-annotation-btn--ghost{background:#0000;color:#475569}.pb-annotation-btn--ghost:hover:not(:disabled){background:#f1f5f9}.pb-annotation-btn--danger{background:#dc2626}.pb-annotation-btn--danger:hover:not(:disabled){background:#b91c1c}.pb-annotation-card__actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.pb-annotation-input{border:1px solid #cbd5e1;border-radius:8px;font-family:inherit;font-size:14px;line-height:1.5;margin-top:14px;padding:10px 12px;resize:vertical;width:100%}.pb-annotation-input:focus{border-color:#f59e0b;outline:none}.pb-annotation-error{color:#b45309;font-size:13px;margin:10px 0 0}.pb-annotation-kinds{display:flex;gap:8px;margin-top:14px}.pb-annotation-kind{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#475569;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:8px 10px}.pb-annotation-kind.is-active{background:#fffbeb;border-color:#f59e0b;color:#b45309}.pb-annotation-bubble{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 24px #0f172a2e;max-width:calc(100vw - 24px);padding:14px 16px;position:fixed;width:320px;z-index:1000}.pb-annotation-bubble:before{background:#fff;border-bottom:1px solid #e2e8f0;border-left:1px solid #e2e8f0;content:"";height:12px;left:-7px;position:absolute;top:16px;transform:rotate(45deg);width:12px}.pb-annotation-bubble--left:before{left:auto;right:-7px;transform:rotate(225deg)}.pb-annotation-bubble--below:before{display:none}.pb-annotation-bubble__head{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.pb-annotation-bubble__body{color:#0f172a;font-size:15px;line-height:1.5;margin:8px 0 0}.header-left h1{color:var(--pb-fg-4);letter-spacing:.01em}.header-left h1,.paper-title{font-size:15px;font-weight:var(--pb-w-semi)}.paper-title{color:var(--pb-fg);margin-left:var(--pb-space-2)}.logout-btn{background:#0000;border:1px solid #0000;color:var(--pb-fg-4);padding:var(--pb-space-1) var(--pb-space-2)}.logout-btn:hover{border-color:var(--pb-border-soft);color:var(--pb-fg-1)}.glossary-toggle-btn,.notes-toggle-btn,.recap-toggle-btn,.toc-toggle-btn{background:var(--pb-bg-surface);border-color:var(--pb-border-soft);color:var(--pb-fg-3)}.glossary-toggle-btn.active,.glossary-toggle-btn:hover:not(:disabled),.notes-toggle-btn.active,.notes-toggle-btn:hover:not(:disabled),.recap-toggle-btn.active,.recap-toggle-btn:hover:not(:disabled),.toc-toggle-btn.active,.toc-toggle-btn:hover:not(:disabled){background:var(--pb-blue-soft);border-color:var(--pb-blue-border);color:var(--pb-blue-fg)}.reading-progress-fill{background:var(--pb-blue)}.pb-annotation-bubble__locked{color:var(--pb-fg-4);font-size:12px;font-style:italic;margin:8px 0 0}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--pb-font-sans);margin:0}
/*# sourceMappingURL=main.af57dcb8.css.map*/