.library-review-page{min-height:100vh;padding:var(--spacing-2xl);background:var(--color-bg);justify-content:center;align-items:center;display:flex;position:relative}.library-review-close{top:var(--spacing-lg);right:var(--spacing-lg);background:var(--color-surface);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;box-shadow:0 1px 3px #00000014}.library-review-close:hover{color:var(--color-text-primary)}.library-review-container{text-align:center;align-items:center;gap:var(--spacing-lg);flex-direction:column;width:100%;max-width:480px;display:flex}.library-review-container h1{font-family:var(--font-display);color:var(--color-text-primary);margin:0;font-size:24px;font-style:italic;font-weight:400}.library-review-icon{background:color-mix(in srgb, var(--color-primary) 12%, var(--color-surface));width:72px;height:72px;color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.library-review-body{color:var(--color-text-secondary);margin:0;font-size:15.5px;line-height:1.6}.library-review-cta{width:100%;padding:var(--spacing-md);font-size:16px}.library-review-countdown{font-family:var(--font-display);color:var(--color-primary);font-size:72px;font-style:italic;font-weight:500}.library-review-quiz{align-items:center;gap:var(--spacing-lg);flex-direction:column;width:100%;display:flex}.library-review-progress{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin:0;font-size:12px;font-weight:700}.library-review-target-row{justify-content:center;align-items:center;gap:10px;display:flex}.library-review-target{font-family:var(--font-display);color:var(--color-text-primary);margin:0;font-size:26px;font-style:italic;font-weight:500}.cs-play-btn{border:1.5px solid var(--color-border);width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s,background .15s;display:flex}.cs-play-btn:hover{color:var(--color-primary);border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.cs-play-btn-active{color:var(--color-primary);border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 12%, transparent);animation:1s ease-in-out infinite cs-play-pulse}@keyframes cs-play-pulse{0%,to{opacity:1}50%{opacity:.55}}.library-review-options{flex-direction:column;gap:10px;width:100%;display:flex}.library-review-option{width:100%;font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-button);cursor:pointer;text-align:left;padding:14px 18px;font-size:15px;font-weight:600;transition:border-color .15s,background-color .15s}.library-review-option:hover:not(:disabled){border-color:var(--color-primary)}.library-review-option:disabled{cursor:default}.library-review-option-wrong{background:color-mix(in srgb, #8c6a1e 12%, var(--color-surface));color:#8c6a1e;border-color:#8c6a1e}.library-review-option-correct{border-color:var(--color-success);background:color-mix(in srgb, var(--color-success) 12%, var(--color-surface));color:var(--color-success)}.library-review-option-dimmed{opacity:.5}.library-review-feedback{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.library-review-feedback-text{color:#8c6a1e;background:color-mix(in srgb, #8c6a1e 10%, var(--color-surface));border-radius:var(--radius-card);margin:0;padding:12px 16px;font-size:14.5px;line-height:1.55}.library-review-next{width:100%;padding:var(--spacing-md)}.library-review-results-actions{flex-direction:column;gap:10px;width:100%;display:flex}.library-review-toast{bottom:var(--spacing-xl);background:var(--color-text-primary);color:var(--color-surface);border-radius:var(--radius-pill);padding:10px 18px;font-size:13.5px;font-weight:500;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}
