@import url('/lms/shared/theme.css');
*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:14px -apple-system,BlinkMacSystemFont,"Segoe UI","Malgun Gothic",sans-serif}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent;font:inherit}button{cursor:pointer;color:inherit;border:1px solid var(--line);border-radius:9px;background:white;padding:9px 12px;min-height:38px}a{text-decoration:none;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #a9c4ed;outline-offset:2px}button.primary{background:var(--blue);border-color:var(--blue);color:white}.app{max-width:1240px;margin:auto;padding:0 28px}.brand{height:78px;display:flex;align-items:center;gap:14px}.logo{display:flex;gap:9px;align-items:center;font-size:25px;font-weight:750;letter-spacing:-1px}.logo i{font-style:normal;font-size:27px;width:36px;height:36px;border-radius:11px;background:var(--green);color:#fff;text-align:center;line-height:34px}.logo-sub{display:block;font-size:7px;letter-spacing:1.7px;color:var(--muted);margin-top:0}.preview-label{margin-left:auto;font-size:11px;color:var(--muted)}#palette{font-size:11px;background:transparent}.role-tabs{display:flex;border-bottom:1px solid var(--line);gap:25px}.role-tabs a{padding:13px 4px;font-size:13px;color:var(--muted);border-bottom:2px solid transparent}.role-tabs a.active{color:var(--green);font-weight:700;border-color:var(--orange)}.shell{display:grid;grid-template-columns:155px minmax(0,1fr);gap:30px;padding-top:25px}aside{padding-top:7px}aside button{display:block;width:100%;text-align:left;border:none;background:transparent;margin-bottom:7px;color:var(--muted)}aside button.active{background:var(--green-soft);color:var(--green);font-weight:650}main{min-width:0;max-width:940px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px}.eyebrow{font-size:10px;letter-spacing:1.3px;color:var(--green);font-weight:650}.page-head h1{font-size:24px;letter-spacing:-.8px;margin:5px 0}.sub{color:var(--muted);font-size:12px;margin:0;line-height:1.5}.date{font-size:11px;color:var(--muted)}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:15px}.metric{padding:15px;border:1px solid var(--line);border-radius:12px;background:white;min-width:0}.metric small{color:var(--muted);font-size:11px}.metric strong{display:block;font-size:26px;letter-spacing:-.9px;margin:6px 0 3px}.metric span{font-size:10px;color:var(--green)}.metric.orange{background:var(--orange-soft);border-color:#eedbcb}.metric.green{background:var(--green-soft);border-color:#dce6de}.grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.panel{background:white;border:1px solid var(--line);border-radius:13px;padding:17px;min-width:0;margin-bottom:15px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:13px}.panel-title h2{font-size:14px;margin:0}.link{border:0;padding:0;min-height:30px;font-size:11px;color:var(--blue);background:none}.row{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding:11px 0}.row:first-of-type{border:0}.row b{font-size:12px}.row small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.badge{font-size:10px;padding:4px 7px;border-radius:5px;background:var(--green-soft);color:var(--green);white-space:nowrap}.badge.orange{background:var(--orange-soft);color:#a25329}.badge.blue{background:var(--blue-soft);color:var(--blue)}.attendance{height:12px;display:flex;border-radius:5px;overflow:hidden;margin:18px 0 10px;gap:3px}.attendance span{background:var(--green)}.attendance .late{background:var(--orange)}.attendance .absent{background:#c7cccf}.legend{display:flex;gap:15px;font-size:10px;color:var(--muted)}.legend i{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:2px;margin-right:4px}.legend .orange{background:var(--orange)}.legend .gray{background:#c7cccf}.actions{display:flex;gap:7px}.actions button{flex:1;font-size:12px}.mini-chart{width:100%;height:92px;display:block;margin-top:6px}.chart-labels{display:flex;justify-content:space-between;font-size:9px;color:var(--muted)}.chart-note{font-size:10px;color:var(--muted);margin:9px 0 0}.chart-top{font-size:24px;color:var(--green);letter-spacing:-1px}.chart-top small{font-size:10px;color:var(--green);letter-spacing:0;margin-left:10px}.students{display:grid;gap:7px}.student-row{width:100%;text-align:left;padding:12px;background:#fff;border:1px solid var(--line);display:block}.student-row.selected{background:var(--green-soft);border-color:var(--green)}.student-row>div{display:flex;justify-content:space-between;align-items:center;gap:6px}.student-row b{font-size:13px}.student-row p{font-size:11px;color:var(--muted);margin:6px 0 0;line-height:1.6;overflow-wrap:anywhere}.teacher-grid{grid-template-columns:1fr 1.1fr}.pills{display:flex;gap:5px;flex-wrap:wrap;margin:9px 0}.pills button{min-height:32px;font-size:10px;padding:6px 8px;background:var(--orange-soft);border-color:transparent}.commentbox{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px;font:inherit;resize:none;height:64px;font-size:12px}.check-row{display:flex;gap:7px;align-items:center;margin-bottom:9px;font-size:11px}.check-row input{accent-color:var(--green)}.record-status{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin:10px 0}.wide{width:100%;margin-top:7px}.task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.task{padding:13px 9px;text-align:left;background:#fafbf9}.task .symbol{font-size:15px;color:var(--green);display:block;margin-bottom:7px}.task b{display:block;font-size:12px}.task small{font-size:10px;color:var(--muted);display:block;margin-top:5px}.task:first-child{background:var(--orange-soft)}.progress-row{margin:12px 0}.progress-row>div{display:flex;justify-content:space-between;font-size:11px}.track{height:5px;border-radius:4px;background:#edf0eb;margin-top:7px;overflow:hidden}.track span{display:block;height:100%;background:var(--green);border-radius:4px}.track.orange span{background:var(--orange)}.report-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.report-head b{font-size:20px}.report-head small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.report-head select{border:1px solid var(--line);background:white;border-radius:7px;padding:6px;font-size:11px}.comment-text{font-size:12px;line-height:1.8;margin:0}.book-line{font-size:11px;color:var(--muted);line-height:1.7;margin:7px 0}.footer-note{font-size:10px;color:var(--muted);text-align:center;margin:10px}.mobile-nav{display:none}dialog{border:1px solid var(--line);border-radius:15px;padding:22px;width:420px;max-width:calc(100vw - 24px);max-height:85dvh;color:var(--ink)}dialog::backdrop{background:#25332d55}.close{float:right;min-width:35px}.palette-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.swatch{border-radius:9px;height:75px;margin:15px 0 7px}.palette-grid small{font-size:10px}.detail-copy{font-size:13px;line-height:1.8;white-space:pre-wrap}#toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:10px 16px;border-radius:9px;font-size:12px;display:none;z-index:10;width:max-content;max-width:90vw}
@media(min-width:1000px){.parent-grid{grid-template-columns:1.1fr 1fr}.parent-report{max-width:850px}.parent-report .metrics{margin-bottom:15px}}
@media(max-width:700px){.app{padding:0 14px 67px}.brand{height:57px;gap:7px}.logo{font-size:22px}.logo i{height:31px;width:31px;font-size:23px;line-height:30px}.logo-sub{font-size:6px}.preview-label{font-size:9px}#palette{padding:5px;font-size:10px;min-height:30px}.role-tabs{gap:0;justify-content:space-between}.role-tabs a{flex:1;text-align:center;font-size:11px;padding:10px 0}.shell{display:block;padding-top:16px}aside{display:none}.page-head{margin-bottom:12px}.page-head h1{font-size:20px;margin:4px 0}.eyebrow{font-size:8px}.sub{font-size:10px}.date{font-size:9px}.metrics{gap:7px;margin-bottom:10px}.metric{padding:11px 9px;border-radius:10px}.metric strong{font-size:23px;margin:4px 0}.metric small{font-size:10px}.metric span{font-size:9px}.grid{display:block}.panel{padding:12px;margin-bottom:10px;border-radius:11px}.panel-title{margin-bottom:7px}.panel-title h2{font-size:12px}.row{padding:8px 0}.row small{font-size:10px}.row b{font-size:11px}.attendance{margin:11px 0 9px;height:10px}.actions button{font-size:11px;padding:8px 5px}.mini-chart{height:68px}.chart-top{font-size:21px}.chart-note{font-size:9px;margin-top:6px}.chart-labels{font-size:8px}.student-row{padding:8px 10px}.student-row p{margin:3px 0 0;font-size:10px;line-height:1.5}.teacher-grid .panel-title{margin-bottom:5px}.teacher-grid .panel{margin-bottom:8px}.pills{margin:6px 0}.pills button{font-size:9px;padding:5px 7px;min-height:29px}.commentbox{height:48px;font-size:11px}.check-row{margin-bottom:5px}.record-status{margin:6px 0}.teacher-grid .wide{min-height:36px;font-size:12px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;justify-content:center;background:#fffefb;border-top:1px solid var(--line);padding:8px 12px max(8px,env(safe-area-inset-bottom));gap:6px;z-index:5}.mobile-nav button{min-width:65px;flex:1;max-width:150px;border:0;font-size:10px;padding:5px 2px;min-height:36px;background:none;color:var(--muted)}.mobile-nav button.active{background:var(--green-soft);color:var(--green);font-weight:700}.task-grid{gap:6px}.task{padding:9px 8px;min-height:70px}.task .symbol{margin-bottom:4px}.task b{font-size:11px}.task small{font-size:9px;margin-top:3px}.progress-row{margin:8px 0}.report-head{margin-bottom:10px}.report-head b{font-size:18px}.report-head small{font-size:10px}.comment-text{font-size:11px;line-height:1.7}.book-line{font-size:10px;margin:5px 0}.parent-report .panel{margin-bottom:8px}.parent-report .progress-row{margin:8px 0}.footer-note{font-size:9px;margin:7px}.compact-title{margin-bottom:8px}.check-row label{font-size:10px}}
@media(max-height:760px) and (max-width:700px){.shell{padding-top:10px}.page-head{margin-bottom:8px}.panel{padding:10px;margin-bottom:8px}.metric{padding:8px}.metrics{margin-bottom:8px}.task{min-height:63px;padding:7px}.mini-chart{height:54px}.student-row{padding:6px 8px}.teacher-grid .panel-title{margin-bottom:3px}.pills button{min-height:27px}.parent-report .panel-title{margin-bottom:4px}.parent-report .book-line{margin:3px 0}.parent-report .comment-text{line-height:1.6}.parent-report .chart-note{margin-top:3px}.parent-report .progress-row{margin:6px 0}.parent-report .report-head{margin-bottom:8px}}

@media(max-width:700px){body[data-role=student] .mini-chart{height:56px}body[data-role=parent] .page-head{margin-bottom:9px}body[data-role=parent] .metric{padding:9px 8px}body[data-role=parent] .mini-chart{height:48px;margin-top:0}body[data-role=parent] .panel-title{margin-bottom:4px}body[data-role=parent] .panel-title .link{min-height:24px}body[data-role=parent] .chart-note{display:none}body[data-role=parent] .panel{padding:10px;margin-bottom:8px}body[data-role=parent] .comment-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}body[data-role=parent] .book-line{font-size:9px;margin:4px 0 0}body[data-role=parent] .progress-row{margin:7px 0}body[data-role=parent] .footer-note{margin:6px;font-size:8px}}
@media(max-height:760px) and (max-width:700px){body[data-role=parent] .metric{padding:7px}body[data-role=parent] .panel{padding:9px;margin-bottom:7px}body[data-role=parent] .mini-chart{height:42px}body[data-role=parent] .page-head h1{font-size:19px}body[data-role=parent] .metrics{margin-bottom:7px}body[data-role=parent] .metric strong{font-size:21px}body[data-role=parent] .progress-row{margin:6px 0}body[data-role=student] .mini-chart{height:42px}}
@media(max-width:700px){.app{padding-bottom:57px}}
@media(max-height:760px) and (max-width:700px){body[data-role=student] .panel-title .link,body[data-role=teacher] .panel-title .link{min-height:24px}body[data-role=student] .task{min-height:56px;padding:6px 7px}body[data-role=student] .task .symbol{font-size:12px;margin-bottom:3px}body[data-role=student] .row{padding:6px 0}body[data-role=student] .mini-chart{height:36px}body[data-role=student] .page-head h1{font-size:18px}}

.wrong-words{margin-top:10px;border-top:1px solid var(--line);padding-top:8px;font-size:11px}.wrong-words summary{cursor:pointer;color:var(--muted)}.wrong-words summary span{float:right;color:var(--blue)}.wrong-words>div{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.wrong-words>div>span{padding:7px 9px;border-radius:6px;background:var(--orange-soft);font-size:11px}.book-brief{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;border-top:1px solid var(--line)}.book-brief>span:first-child{min-width:0}.book-brief b{font-size:12px;font-weight:550}.book-brief small{font-size:10px;color:var(--muted);margin-left:10px}.last-reader small{display:block;margin:0 0 4px}.teacher-comment .teacher-name{font-size:10px;color:var(--green);display:block;margin:0 0 3px}.foreign-comment{border-top:1px solid var(--line);padding-top:8px;margin-top:8px}.option-row{display:block;margin:15px 0;font-size:12px}.option-row input{accent-color:var(--green)}.footer-note .link{font-size:9px;margin-left:7px;min-height:20px}
@media(max-width:700px){body[data-role=parent] .book-brief{padding:7px 0}body[data-role=parent] .book-brief b{font-size:11px}body[data-role=parent] .book-brief small{font-size:9px;margin-left:6px}body[data-role=parent] .last-reader small{margin-left:0;margin-bottom:2px}body[data-role=parent] .badge{font-size:9px;padding:3px 6px}body[data-role=parent] .wrong-words{font-size:10px;margin-top:7px;padding-top:7px}body[data-role=parent] .teacher-comment .teacher-name{font-size:9px;margin-bottom:2px}body[data-role=parent] .foreign-comment{margin-top:5px;padding-top:5px}body[data-role=parent] .comment-text{-webkit-line-clamp:1}body[data-role=parent] .teacher-comments .panel-title{margin-bottom:2px}}
@media(max-height:760px) and (max-width:700px){body[data-role=parent] .page-head .date{display:none}body[data-role=parent] .page-head .sub{font-size:9px}body[data-role=parent] .page-head h1{margin:3px 0}body[data-role=parent] .metric strong{font-size:20px;margin:3px 0}body[data-role=parent] .metric{padding:6px}body[data-role=parent] .book-brief{padding:5px 0}body[data-role=parent] .book-brief b{font-size:10px}body[data-role=parent] .mini-chart{height:38px}body[data-role=parent] .wrong-words{margin-top:5px;padding-top:5px}body[data-role=parent] .foreign-comment{margin-top:4px;padding-top:4px}body[data-role=parent] .footer-note{margin:3px}.parent-report .footer-note .link{min-height:17px}}

.rami-logo{display:block;width:45px;height:45px;object-fit:contain;flex-shrink:0}@media(max-width:700px){.rami-logo{width:37px;height:37px}}

.score-plot{display:grid;grid-template-columns:24px minmax(0,1fr);height:80px;gap:4px}.score-scale{display:flex;flex-direction:column;justify-content:space-between;padding:9px 0;font-size:10px;color:var(--muted);text-align:right}.score-plot .monthly-word-chart{height:100%!important;min-height:0;margin:0!important}.average-slash{font-size:14px!important;color:var(--muted)!important}.homework-card{text-align:left;display:flex;align-items:flex-start;flex-direction:column;justify-content:space-between;color:var(--ink)}.homework-card .homework-donut{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:conic-gradient(var(--green) 94%,#e3e8df 0);position:relative;margin:5px auto}.homework-donut:before{content:"";position:absolute;inset:6px;border-radius:50%;background:white}.homework-donut b{font-size:15px;position:relative;z-index:1;color:var(--ink)}.homework-card>span:last-child{align-self:center;font-size:10px;color:var(--muted)}.monthly-books{font-size:11px;border-top:1px solid var(--line);padding-top:8px;margin-top:3px}.monthly-books summary{cursor:pointer;color:var(--muted)}.monthly-books summary>span{float:right;color:var(--blue)}.read-book-item{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:10px 0}.read-book-item b{font-size:11px}.read-book-item .badge{white-space:nowrap}
@media(max-width:700px){.score-plot{height:66px;grid-template-columns:21px 1fr}.score-scale{font-size:10px;padding:7px 0}.homework-card .homework-donut{height:43px;width:43px;margin:2px auto}.homework-donut:before{inset:5px}.homework-donut b{font-size:12px}.homework-card>span:last-child{font-size:8px}.monthly-books{font-size:10px;padding-top:6px}.teacher-comments .teacher-comment{display:grid;grid-template-columns:45px minmax(0,1fr);align-items:start;gap:5px}.teacher-comments .foreign-comment{grid-template-columns:45px minmax(0,1fr)}.teacher-comments .teacher-name{line-height:1.6}.teacher-comments .foreign-comment .teacher-name{font-size:0}.teacher-comments .foreign-comment .teacher-name:after{content:'Alex';font-size:9px}.teacher-comments .comment-text{margin:0}.parent-report .footer-note{display:none}body[data-role=parent] .brand{height:49px}body[data-role=parent] .role-tabs a{padding:8px 0}}
@media(max-height:760px) and (max-width:700px){.score-plot{height:58px}.score-scale{font-size:9px;padding:6px 0}.homework-card .homework-donut{width:39px;height:39px}.homework-donut b{font-size:11px}.homework-card>span:last-child{font-size:8px}.parent-report .metric strong{font-size:20px}body[data-role=parent] .book-brief{padding:4px 0}.teacher-comments .foreign-comment{margin-top:3px;padding-top:3px}.parent-report .monthly-books{padding-top:5px;font-size:9px}.parent-report .actions button{min-height:33px;padding:7px}}

.brand{height:62px}.role-tabs a{padding:10px 4px}body[data-role=parent] .mobile-nav{display:none}body[data-role=parent] .shell{display:block}body[data-role=parent] #desktopNav{display:none}body[data-role=parent] .parent-report{margin:auto}body[data-role=parent] .app{padding-bottom:14px}.growth-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid var(--line);border-radius:11px;background:#F5F9FC;padding:10px 12px}.growth-value{border:0;background:none;padding:0;text-align:left}.growth-value small,.growth-value b,.growth-value span{display:block}.growth-value small{font-size:10px;color:var(--muted)}.growth-value b{font-size:21px;margin:3px 0}.growth-value em{font-size:11px;font-style:normal;color:var(--green);margin-left:5px}.growth-value span{font-size:9px;color:var(--muted)}.growth-actions{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.growth-actions button{min-height:26px}.teacher-comments .foreign-comment .teacher-name{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-comments .foreign-comment .teacher-name:after{content:none}
@media(max-width:700px){body[data-role=parent] .brand{height:43px}body[data-role=parent] .role-tabs a{padding:7px 0}body[data-role=parent] .shell{padding-top:10px}.growth-summary{padding:8px 10px}.growth-value b{font-size:18px}.growth-actions button{font-size:10px;min-height:23px}.growth-value span{font-size:8px}.monthly-books summary{display:flex;gap:6px;justify-content:flex-end}.monthly-books summary:before{content:'▸';font-size:9px}.monthly-books[open] summary:before{content:'▾'}.monthly-books summary>span{float:none}.monthly-books{padding-top:6px}}
@media(max-height:760px) and (max-width:700px){body[data-role=parent] .brand{height:40px}.growth-summary{padding:7px 9px}.growth-value b{font-size:17px}.growth-value small{font-size:9px}}
@media(max-height:760px) and (max-width:700px){body[data-role=parent] .app{padding-bottom:6px}}

/* Parent report: quiet tinted cards and a shared warm red achievement accent. */
.parent-report{--report-red:#B6525E}
.parent-report .metric.green{background:#EDF5F0;border-color:#DCE9E1}
.parent-report .vocab-card{background:#FFF4F2;border-color:#EEDFDB}
.parent-report .vocab-card strong{color:var(--report-red);display:flex;align-items:baseline;gap:3px;flex-wrap:wrap}
.parent-report .class-comparison{color:#8B939B!important;font-size:14px!important;font-weight:500;letter-spacing:0}
.parent-report .class-comparison span{color:#8B939B;font-size:10px;white-space:nowrap}
.parent-report .vocab-card>span{color:#828C96}
.parent-report .homework-card{background:#FFF5F7;border-color:#ECDDE2}
.parent-report .homework-card .homework-donut{background:conic-gradient(var(--report-red) 94%,#EFDDE1 0)}
.parent-report .homework-donut:before{background:#FFF5F7}
.parent-report .homework-donut b{color:var(--report-red)}
.parent-report .parent-word{background:#F7FAFF}
.parent-report .parent-books{background:#F3F9F6}
.parent-report .teacher-comments{background:#FFFAF4}
.parent-report .growth-summary{background:#F5F3FA}
.parent-report .panel-title h2,.parent-report .metric>small,.parent-report .growth-value>small{font-weight:650;text-shadow:0 0 10px #A2BED34D}
.parent-report .parent-books h2{ text-shadow:0 0 10px #84B99F66}
.parent-report .teacher-comments h2{ text-shadow:0 0 10px #D8AE7866}
.parent-report .vocab-card>small,.parent-report .homework-card>small{ text-shadow:0 0 10px #D18B9860}
.parent-report .wrong-words{font-size:9px}
.parent-report .wrong-words>div{display:flex;flex-wrap:wrap;gap:4px;max-height:112px;overflow-y:auto;padding-right:3px}
.parent-report .wrong-words>div>span{font-size:10px;line-height:1.5;padding:3px 6px}
@media(max-width:700px){.parent-report .class-comparison{font-size:12px!important}.parent-report .class-comparison span{display:block;font-size:8px}.parent-report .vocab-card strong{gap:2px}.parent-report .wrong-words{font-size:8px!important}.parent-report .wrong-words>div>span{font-size:9px}.parent-report .wrong-words>div{max-height:90px}}

body{background:#FAF8F2}.parent-report .vocab-card,.parent-report .homework-card{background:linear-gradient(145deg,#FFFCFC,#F5EAEB);box-shadow:inset 1px 1px 2px #fff,inset -1px -1px 2px #EADBDD,0 5px 12px #6F3D4712,0 1px 2px #6F3D4717;border-color:#E8DDE0}.parent-report .homework-donut{box-shadow:2px 3px 5px #6F3D472B,inset 1px 1px 2px #FFFFFF9E}.parent-report .homework-donut:before{background:linear-gradient(145deg,#FAF4F5,#FFFCFC);box-shadow:inset 1px 2px 3px #8C596124}.parent-report .vocab-card strong{text-shadow:0 1px 0 white,0 2px 3px #8B526124}

/* Shared LMS brand: 90 percent of the previous lockup. */
.brand .logo{zoom:.9}
