/* Compact practice workspace. Print styling remains in the base stylesheets. */
@media screen {
  #orbital-design main { padding-top:28px; }
  #orbital-design[data-mode=practice] main { display:grid; grid-template-columns:246px minmax(0,1fr); column-gap:28px; align-items:start; }
  #orbital-design .line-navigation, #orbital-design .page-heading, #orbital-design .workspace-toolbar,
  #orbital-design main > footer, #orbital-design #storage-notice { grid-column:1/-1; }
  #orbital-design .line-navigation { margin-bottom:14px; }
  #orbital-design .line-picker { background:#f0eaf5; border-radius:12px; padding:10px 16px; font-size:13px; }
  #orbital-design .page-heading h1 { font:600 24px/1.35 'Manrope','Segoe UI',sans-serif; letter-spacing:-.5px; max-width:880px; }
  #orbital-design .page-heading { margin-bottom:8px; }
  #orbital-design .workspace-toolbar { margin-bottom:24px; }
  #orbital-design .sidebar { position:sticky; top:20px; padding:18px 12px; background:#f3eff6; border:1px solid #e7dfed; border-radius:18px; }
  #orbital-design .sidebar-caption { font-size:10px; letter-spacing:1.4px; margin:0 10px 12px; color:#675a73; }
  #orbital-design #topics { grid-template-columns:minmax(0,1fr); gap:5px; max-height:calc(100vh - 110px); overflow-y:auto; scrollbar-width:thin; padding:3px; }
  #orbital-design .topic-button { display:grid; grid-template-columns:23px minmax(0,1fr); width:100%; padding:11px 9px; border:1px solid transparent; border-radius:10px; font-size:12px; text-align:left; }
  #orbital-design .topic-button.active { background:white; border-color:#d7c7e5; box-shadow:0 2px 6px #44305008; }
  #orbital-design .topic-button small { color:#62596c; font-size:10px; margin-top:4px; }
  #orbital-design .topics-toggle { display:none; }
  #orbital-design .content-layout { min-width:0; width:100%; max-width:790px; }
  #orbital-design .topic-heading { align-items:center; margin-bottom:16px; }
  #orbital-design .topic-heading h2 { font:600 17px/1.5 'Manrope','Segoe UI',sans-serif; }
  #orbital-design #position { padding:4px 10px; background:#eee8f3; border-radius:20px; font-size:11px; }
  #orbital-design .task-map-heading { display:flex; justify-content:space-between; flex-wrap:wrap; gap:6px; font-size:11px; margin-bottom:9px; color:#61576b; }
  #orbital-design .task-map-legend { font-size:10px; }
  #orbital-design .task-tabs { position:relative; max-height:108px; overflow-y:auto; gap:6px; padding:3px; margin:0 0 16px; scrollbar-width:thin; }
  #orbital-design .task-tab { min-width:32px; min-height:32px; width:32px; padding:0; font-size:11px; border-radius:9px; flex-shrink:0; }
  #orbital-design .task-card, #orbital-design .teacher-task { padding:22px; border:1px solid #e7e0eb; border-radius:18px; box-shadow:0 4px 18px #47395105; }
  #orbital-design .source-task-image { width:100%; max-width:700px; min-width:0; height:auto; margin:0 auto; }
  #orbital-design #explanation-body .print-source-image { width:100%; max-width:700px; height:auto; }
  #orbital-design .task-scroll-hint { display:none; }
  #orbital-design .selection-help, #orbital-design .answer-help { font-size:12px; }
  #orbital-design .task-top { margin-bottom:16px; }
  #orbital-design .task-status { padding:4px 9px; border-radius:20px; font-size:10px; }
  #orbital-design .task-navigation { margin:16px 0 22px; }
  #orbital-design .task-navigation .button { font-size:12px; min-height:42px; padding:9px 14px; }
  #orbital-design .rail { margin:0; display:block; }
  #orbital-design .note-card { padding:16px 18px; border-radius:14px; background:#f6f0e7; }
  #orbital-design .note-card p { font-size:12px; line-height:1.7; }
  #orbital-design #line-picker-dialog { width:min(780px,94vw); max-height:85vh; padding:26px; }
  #orbital-design .line-search-label { display:block; font-size:12px; margin:20px 0 8px; }
  #orbital-design #line-search { width:100%; min-height:46px; padding:10px 14px; border:1px solid #d6c8e2; border-radius:12px; background:white; font-size:14px; }
  #orbital-design .line-picker-list { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-top:18px; }
  #orbital-design .line-picker-list .line-link { padding:12px 14px; background:#fff; border-radius:12px; text-decoration:none; }
  #orbital-design .line-picker-list .line-link.active { background:#eee5f6; }
  #orbital-design .line-picker-list .line-link span { display:block; font-size:11px; line-height:1.5; margin-top:4px; color:#554b60; }
  #orbital-design .line-picker-list .line-link:hover { border-color:#a98cbd; }
  #orbital-design[data-mode=teacher] .content-layout { max-width:none; }
  #orbital-design #teacher-list { max-width:790px; margin:0 auto; }
  #orbital-design button:focus-visible, #orbital-design a:focus-visible, #orbital-design select:focus-visible { outline:3px solid #9474ad; outline-offset:3px; }
  @media (max-width:900px) {
    #orbital-design[data-mode=practice] main { grid-template-columns:210px minmax(0,1fr); column-gap:18px; padding-left:20px; padding-right:20px; }
    #orbital-design .task-card { padding:18px; }
  }
  @media (max-width:900px) {
    #orbital-design[data-mode=practice] main { display:block; padding:20px 12px 0; }
    #orbital-design .page-heading h1 { font-size:20px; }
    #orbital-design .workspace-toolbar { margin-bottom:16px; }
    #orbital-design .sidebar { position:static; padding:0; margin-bottom:20px; overflow:hidden; border-radius:12px; }
    #orbital-design .sidebar-caption { display:none; }
    #orbital-design .topics-toggle { display:flex; justify-content:space-between; gap:12px; width:100%; border:0; background:transparent; color:#211a28; text-align:left; font-size:12px; padding:14px; line-height:1.5; }
    #orbital-design #topics { display:none; max-height:320px; padding:8px; }
    #orbital-design[data-topics-open=true] #topics { display:grid; }
    #orbital-design .topic-heading h2 { font-size:15px; }
    #orbital-design .task-card, #orbital-design .teacher-task { padding:16px 12px; border-radius:14px; }
    #orbital-design .source-task-image { min-width:540px; }
    #orbital-design .task-scroll-hint { display:block; font-size:10px; color:#645b6b; }
    #orbital-design .task-tab { min-width:38px; min-height:38px; width:38px; }
    #orbital-design .task-tabs { max-height:96px; }
    #orbital-design .line-picker-list { grid-template-columns:1fr; }
    #orbital-design #line-picker-dialog { padding:18px; }
    #orbital-design #line-picker-dialog h2 { font-size:24px; }
    #orbital-design #explanation-body { overflow-x:auto; }
    #orbital-design #explanation-body .print-source-image { min-width:540px; max-width:none; }
  }
}

/* A welcoming entry for upcoming student tests. */
#orbital-design[data-mode=students]>.hero,#orbital-design[data-mode=students]>.chemistry-overview,#orbital-design[data-mode=students] .workspace-toolbar{display:none}
#orbital-design #students-view{max-width:850px;margin:0 auto 40px}
#orbital-design .students-welcome{position:relative;padding:38px;border:1px solid #e8dce7;border-radius:24px;background:#faf0f3}
#orbital-design .students-kicker{font-size:10px;letter-spacing:1.6px;color:#6f556c;margin-bottom:16px}
#orbital-design .students-welcome h2{font-size:38px;line-height:1.2;margin-bottom:18px}
#orbital-design .students-welcome>p:not(.students-kicker){max-width:570px;font-size:15px;line-height:1.8}
#orbital-design .students-heart{position:absolute;right:28px;top:20px;font-size:38px;color:#a06e91}
#orbital-design .students-signature{margin-top:22px;color:#6b506a}
#orbital-design .students-tests{margin-top:20px;padding:26px;border:1px solid #e4dce9;border-radius:18px;background:#fffdfb}
#orbital-design .students-tests h3{font-size:19px;margin-bottom:10px}
#orbital-design .students-tests p{font-size:14px;line-height:1.8;max-width:630px}
#orbital-design .students-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:20px}
#orbital-design[data-mode=practice] .rail{display:none}
@media(min-width:951px){#orbital-design .site-top .main-menu{order:3;width:100%;justify-content:center;margin-left:0}}
@media(max-width:600px){#orbital-design .students-welcome{padding:26px 20px}#orbital-design .students-welcome h2{font-size:31px}#orbital-design .students-kicker{max-width:230px;padding-right:25px}#orbital-design .students-tests{padding:20px}}

/* Compact student entrance alongside the profile. */
#orbital-design .site-top .students-entry{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:49px;padding:12px 18px;border:1px solid #dfccdf;border-radius:15px;background:linear-gradient(110deg,#f8e8ed,#eee5f8);color:#231c29;font:inherit;font-size:17px;font-weight:600;line-height:1.3;cursor:pointer;box-shadow:0 4px 16px #6551760a}
#orbital-design .site-top .students-entry:hover{background:#eddef1;border-color:#b89ac8}
#orbital-design .site-top .students-entry[aria-pressed=true]{background:#e8d8f0;border-color:#a782bc}
#orbital-design .site-top .students-entry:focus-visible{outline:3px solid #87629e;outline-offset:3px}
#orbital-design .site-top .students-entry span{color:#855875;font-size:1.2em}
#orbital-design .site-top .main-menu{flex-wrap:wrap}
#orbital-design .site-top .header-actions{display:flex;align-items:stretch;gap:10px;margin-left:auto}
@media(max-width:600px){#orbital-design .site-top .site-brand{width:100%}#orbital-design .site-top .header-actions{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}#orbital-design .site-top .students-entry,#orbital-design .site-top .header-actions .account-open{min-width:0;min-height:44px;margin:0;padding:10px 8px;font-size:14px;border-radius:13px;gap:6px}}

#orbital-design .reviews-root:not(:empty){padding:24px;margin:0 0 24px;border:1px solid #e2d8e9;background:#fffdfb;border-radius:22px}
#orbital-design .reviews-root h3{font-size:26px;margin-bottom:12px}
#orbital-design .reviews-root h4{font-size:18px;margin:16px 0 10px}
#orbital-design .reviews-root p{line-height:1.7;margin:10px 0;overflow-wrap:anywhere}
#orbital-design .reviews-root details{padding:16px;margin:16px 0;background:#f7f1f8;border-radius:15px}
#orbital-design .reviews-root summary{cursor:pointer;font-size:17px;font-weight:600}
#orbital-design .reviews-root form{display:grid;gap:14px;margin-top:16px}
#orbital-design .reviews-root label{display:grid;gap:7px;font-size:14px;min-width:0}
#orbital-design .reviews-root input,#orbital-design .reviews-root select,#orbital-design .reviews-root textarea{font:inherit;color:#231c29;border:1px solid #cdbed6;border-radius:10px;padding:10px;width:100%;box-sizing:border-box;min-width:0;background:#fff}
#orbital-design .reviews-root input[type=checkbox]{width:22px;height:22px}
#orbital-design .reviews-root textarea{min-height:90px;resize:vertical}
#orbital-design .reviews-root .button{white-space:normal;min-height:44px}
#orbital-design .review-criterion{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:12px;padding:12px;border:1px solid #dfd4e5;border-radius:12px}
#orbital-design .review-card{padding:22px;margin:18px 0;border:1px solid #dfd4e5;border-radius:18px;background:#fff}
#orbital-design .review-photos{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
#orbital-design .review-photos a{display:block;max-width:100%;flex:1 1 190px}
#orbital-design .review-photos img{display:block;width:100%;max-height:260px;object-fit:contain;border:1px solid #e5dce9;border-radius:10px}
#orbital-design .review-pre{white-space:pre-wrap}
#orbital-design .review-message{font-weight:600}
#orbital-design .review-actions{display:flex;gap:12px;flex-wrap:wrap}
@media(max-width:600px){#orbital-design .reviews-root:not(:empty){padding:16px}#orbital-design .review-card{padding:14px}#orbital-design .review-criterion{grid-template-columns:minmax(0,1fr)}}
