/* CSS-drawn antique compass used as the Edu Compass app mark. */
.brand-mark{position:relative;isolation:isolate;overflow:hidden;width:34px;height:34px;border:2px solid #d9b461;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff6c6 0 7%,#d8bb70 8% 13%,#82602d 14% 18%,#f5e3a4 19% 67%,#96703b 68% 75%,#493216 76%);box-shadow:inset 0 1px 2px rgba(255,255,255,.85),inset 0 -2px 3px rgba(63,39,10,.45),0 3px 6px rgba(0,0,0,.28)}
.brand-mark::before,.brand-mark::after{content:"";position:absolute;z-index:1;left:50%;top:50%;width:1px;height:24px;background:rgba(77,50,17,.65);transform:translate(-50%,-50%)}
.brand-mark::after{width:24px;height:1px}
.compass-needle{position:absolute;z-index:2;left:50%;top:50%;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:13px solid #b72f21;transform:translate(-50%,-100%) rotate(28deg);filter:drop-shadow(0 1px rgba(255,255,255,.65))}
.compass-needle::after{content:"";position:absolute;left:-5px;top:13px;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:13px solid #264f77}
.water-theme .brand-mark{width:36px;height:36px;border-color:#f7e0a0;background:radial-gradient(circle at 35% 28%,#fff9d6 0 7%,#ecd078 8% 13%,#88622c 14% 18%,#f9e9ab 19% 67%,#9c783f 68% 75%,#4b3214 76%);border-radius:50%;font-size:0}
.ai-status{margin:0;color:var(--muted);font-size:12px;line-height:1.35}
.ai-fallback{margin:0 0 18px;border-left-color:var(--warning);background:#fff6df;color:#624300}
.tutor-context-controls{display:grid;grid-template-columns:1fr 1.4fr;gap:12px;margin:0 0 16px}@media (max-width:620px){.tutor-context-controls{grid-template-columns:1fr}}
.study-loading{display:flex;align-items:center;gap:15px;padding:18px 0}.study-loading span{width:34px;height:34px;border:4px solid var(--primary-weak);border-top-color:var(--primary);border-radius:50%;animation:study-spin .8s linear infinite}.study-loading h3{margin:0 0 4px}.study-loading p{margin:0}@keyframes study-spin{to{transform:rotate(360deg)}}.tutor-followups{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.tutor-message-system .tutor-followups .text-button{padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:var(--soft);font-size:12px}
.tutor-diagram{margin:10px 0 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,#fff,var(--primary-weak))}.tutor-diagram figcaption{font-weight:700;margin-bottom:8px}.tutor-diagram svg{display:block;width:100%;height:auto;min-width:520px}.tutor-diagram .diagram-edges line{stroke:var(--primary);stroke-width:2}.tutor-diagram .diagram-edges path{fill:var(--primary)}.tutor-diagram .diagram-edges text{font:11px Inter,Arial,sans-serif;fill:var(--muted);text-anchor:middle;paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round}.tutor-diagram .diagram-nodes rect{fill:#fff;stroke:var(--primary);stroke-width:1.5}.tutor-diagram .diagram-nodes text{font:600 12px Inter,Arial,sans-serif;fill:var(--ink);text-anchor:middle}@media (max-width:620px){.tutor-diagram{overflow-x:auto}}
.practice-context{background:linear-gradient(135deg,var(--primary-weak),#fff);border-left:4px solid var(--primary)}
.practice-context p:last-child{margin-bottom:0;white-space:pre-line}
.ai-writing-response{display:grid;gap:12px}.writing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.writing-actions .practice-meta{margin:0}.writing-feedback-card{margin-top:4px;padding:15px;border:1px solid var(--line);border-left:4px solid var(--primary);border-radius:12px;background:linear-gradient(145deg,#fff,var(--primary-weak))}.writing-feedback-card h4{margin:4px 0 10px}.writing-feedback-card h4 span{font-size:12px;font-weight:500;color:var(--muted)}.writing-feedback-card p{line-height:1.55}.writing-feedback-card ul{margin:7px 0 0;padding-left:20px}.writing-feedback-card li+li{margin-top:5px}.feedback-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:14px 0}@media (max-width:620px){.feedback-columns{grid-template-columns:1fr}}
.answer-option.selected{border-color:var(--primary);background:var(--primary-weak);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 16%,transparent)}.answer-option.correct-answer{border-color:var(--success);background:#edfff7}.answer-option.incorrect-answer{border-color:var(--warning);background:#fff6df}.quiz-submit-area{margin:26px 0;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--soft);text-align:center}.quiz-submit-area .practice-meta{margin:9px 0 0}.quiz-complete{margin:26px 0;padding:22px;border:1px solid var(--primary);border-radius:14px;background:linear-gradient(145deg,#fff,var(--primary-weak));text-align:center}.quiz-complete h3{margin:5px auto 16px;max-width:680px}.session-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.stimulus-chart{margin:16px 0 0;padding:14px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.72)}
.stimulus-chart figcaption{font-weight:700;margin-bottom:10px}.stimulus-bars{display:grid;gap:7px}.stimulus-bar-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(50px,2fr) 40px;gap:8px;align-items:center;font-size:12px}.stimulus-bar-row i{display:block;min-height:18px;border-radius:4px;background:linear-gradient(90deg,var(--primary),#62cbe5)}.stimulus-bar-row b{font-variant-numeric:tabular-nums}
.demo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.demo-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;text-align:left;border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:19px;color:var(--ink);font:inherit;cursor:pointer;box-shadow:var(--shadow)}.demo-card:hover{transform:translateY(-2px);border-color:var(--primary);background:var(--primary-weak)}.demo-card strong,.demo-card small{display:block}.demo-card small{color:var(--muted);margin-top:4px;line-height:1.35}.demo-card b{font-size:13px;color:var(--primary)}.demo-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--primary-weak);color:var(--primary);font-size:22px;font-weight:700}.demo-note{margin-top:20px}.demo-note h3{margin:2px 0 7px}.demo-note p{max-width:760px}.demo-note .button{margin-top:5px}@media (max-width:780px){.demo-grid{grid-template-columns:1fr}}

/* Desktop-first study setup: one centered form; generated practice opens in its own tab. */
body:not(.quiz-window) #study-view .study-result{display:none}
@media (min-width:981px){#study-view{max-width:860px;margin:0 auto}#study-view>.section-heading{margin-top:0}.study-builder{display:block;padding:30px}.study-form{max-width:700px;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 auto}.study-form .study-wide{grid-column:1 / -1}.study-form .button.study-wide{justify-self:center;min-width:250px}.study-form label{align-content:start}.study-form textarea{min-height:112px}}

/* User-provided Water-theme background. */
.water-theme{background:#5db4e3 url('assets/windowsxpbackground.jpg') center center / cover fixed no-repeat}
.water-theme::before,.water-theme .main-content::before{display:none}
.water-theme .metric-card,.water-theme .panel,.water-theme .focus-card,.water-theme .detail-panel,.water-theme .course-item,.water-theme .study-result{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(226,252,255,.89))}
