.paint-0{--record-color:#81967b;--record-fill:rgb(225,230,223)}
.paint-1{--record-color:#99976d;--record-fill:rgb(231,230,220)}
.paint-2{--record-color:#668778;--record-fill:rgb(218,226,223)}
.paint-3{--record-color:#7fa99b;--record-fill:rgb(224,234,231)}
.paint-4{--record-color:#6faaaa;--record-fill:rgb(220,235,235)}
.paint-5{--record-color:#72959f;--record-fill:rgb(221,230,232)}
.paint-6{--record-color:#85a6c2;--record-fill:rgb(226,234,240)}
.paint-7{--record-color:#7f94b4;--record-fill:rgb(224,229,237)}
.paint-8{--record-color:#8b8fad;--record-fill:rgb(227,228,235)}
.paint-9{--record-color:#a39ac0;--record-fill:rgb(233,231,240)}
.paint-10{--record-color:#b49cbb;--record-fill:rgb(237,231,239)}
.paint-11{--record-color:#a181a0;--record-fill:rgb(232,225,232)}
.paint-12{--record-color:#c197a5;--record-fill:rgb(240,230,233)}
.paint-13{--record-color:#c69891;--record-fill:rgb(241,230,229)}
.paint-14{--record-color:#b99580;--record-fill:rgb(238,230,225)}
.paint-15{--record-color:#ceb094;--record-fill:rgb(243,236,229)}
.paint-16{--record-color:#bdac87;--record-fill:rgb(239,235,226)}
.paint-17{--record-color:#c4b37a;--record-fill:rgb(241,237,223)}
.paint-18{--record-color:#c4c28a;--record-fill:rgb(241,240,227)}
.paint-19{--record-color:#a6b489;--record-fill:rgb(234,237,227)}
.paint-20{--record-color:#a6aba4;--record-fill:rgb(234,235,233)}
.paint-21{--record-color:#8b9395;--record-fill:rgb(227,229,230)}
.paint-22{--record-color:#a8978b;--record-fill:rgb(234,230,227)}
.paint-23{--record-color:#c3adaa;--record-fill:rgb(241,235,235)}
/* Shared palette, saved per account. Past appointments keep their neutral treatment. */
.swatch-dot{display:inline-block;width:19px;height:19px;border-radius:50%;background:var(--record-color);flex-shrink:0}.color-palette{display:grid;grid-template-columns:repeat(12,27px);gap:7px 5px;max-width:100%}.palette-choice{width:27px;height:27px;min-height:27px;padding:3px;border:1px solid transparent;background:transparent!important;border-radius:50%}.palette-choice.selected{border-color:var(--theme-text)}.palette-choice:hover .swatch-dot{transform:scale(1.1)}.swatch-dot{transition:transform .2s}.filter-dot[class*="paint-"]{background:var(--record-color)}.appointment[class*="paint-"]:not(.past){background:var(--record-fill)!important;border-left:2px solid var(--record-color);color:#354036!important}.appointment[class*="paint-"]:not(.past):hover{filter:brightness(.98)}.student-color-button{margin:0 0 20px;font-size:12px;border:0;background:transparent;padding-left:0}.student-color-button .swatch-dot{width:14px;height:14px}
dialog.settings-modal{width:860px;padding:30px 32px}.settings-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:35px;margin-top:26px}.settings-section h3{font-size:14px;font-weight:500}.settings-section .settings-subtitle{margin-top:30px}.settings-avatar{display:flex;align-items:center;gap:13px;margin-top:17px;font-size:13px}.settings-avatar .avatar{width:44px;height:44px}.settings-section .upload{font-size:12px}.settings-section .theme-options{display:flex;gap:9px;margin-top:16px}.settings-section .theme-option{background:transparent!important;box-shadow:none!important;border:1px solid transparent;border-radius:50%;padding:4px;width:37px;height:37px;min-height:37px;gap:0}.settings-section .theme-option.selected{border-color:var(--theme-accent)}.settings-section .theme-swatch{width:27px;height:27px}.record-setting{border:0;padding:0;margin:24px 0 0;min-width:0}.record-setting legend{font-size:13px;margin-bottom:10px}.color-mode{display:flex;gap:4px;margin-bottom:13px}.color-mode button{font-size:11px;border:0;border-radius:6px;min-height:29px;background:transparent;padding:4px 9px;color:var(--theme-muted)}.color-mode button.selected{background:var(--surface-soft);color:var(--theme-text)}.record-setting .color-palette{grid-template-columns:repeat(12,minmax(0,1fr));gap:7px 2px}.trial-label{font-size:12px;color:var(--theme-muted);margin:8px 0}.repeat-options{flex-wrap:wrap;gap:12px 24px}.repeat-options label{white-space:nowrap}
.library-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}.library-group{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-height:150px;padding:24px;border:1px solid var(--theme-border);border-radius:12px;background:var(--surface)}.library-group strong{font-weight:500;font-size:18px}.library-group small{font-size:12px;color:var(--theme-muted)}.library-group>svg{position:absolute;right:20px;bottom:25px;width:14px;color:var(--theme-muted)}.group-symbol{color:var(--theme-muted);margin-bottom:4px}.library-heading{margin-top:24px}.plan-row{display:grid;grid-template-columns:100px minmax(0,1fr) 20px;gap:20px;align-items:center;width:100%;padding:19px 16px;text-align:left;border:0;border-radius:0;border-bottom:1px solid var(--theme-border);background:transparent}.plan-row strong{font-weight:450;overflow-wrap:anywhere}.plan-code{color:var(--theme-muted);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.plan-table-heading{color:var(--theme-muted);font-size:12px}.plan-row svg{width:14px;color:var(--theme-muted)}.plan-caption{font-size:12px;color:var(--theme-muted)}.plan-attachment h4{margin:9px 0 12px;font-size:15px;font-weight:500}.plan-attach-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.plan-attach-actions button{font-size:12px}.plan-content{max-height:280px;overflow:auto;padding-right:5px}.settings-section input[type=file]{max-width:100%}
/* Light glass keeps the context legible. Neutral system typography, no plates. */
.navigation-dialog::backdrop{background:rgba(247,249,246,.62);backdrop-filter:blur(5px) saturate(.8);-webkit-backdrop-filter:blur(5px) saturate(.8)}
.navigation-dialog .navigation-links button{font-family:'Segoe UI',Arial,sans-serif;font-size:21px;font-weight:400;letter-spacing:0;line-height:1.5;text-shadow:0 1px 8px #fff;min-height:54px;gap:15px}.navigation-dialog .navigation-links{gap:11px;top:83px}.navigation-dialog .navigation-links button:nth-child(4){animation-delay:.21s}
@keyframes glass-reveal{from{backdrop-filter:blur(0) saturate(1);background:rgba(247,249,246,0)}to{backdrop-filter:blur(5px) saturate(.8);background:rgba(247,249,246,.62)}}
@keyframes glass-hide{from{backdrop-filter:blur(5px) saturate(.8);background:rgba(247,249,246,.62)}to{backdrop-filter:blur(0) saturate(1);background:rgba(247,249,246,0)}}
@media(max-width:760px){dialog.settings-modal{padding:25px 20px}.settings-grid{grid-template-columns:1fr;gap:28px}.settings-section+.settings-section{border-top:1px solid var(--theme-border);padding-top:24px}.color-palette{grid-template-columns:repeat(8,27px)}.record-setting .color-palette{grid-template-columns:repeat(12,minmax(0,1fr))}.plan-row{grid-template-columns:60px minmax(0,1fr) 16px;gap:10px;padding-left:0;padding-right:0}.library-groups{grid-template-columns:1fr 1fr;gap:12px}.library-group{padding:18px;min-width:0}.library-group strong{font-size:16px}.navigation-dialog .navigation-links button{font-size:20px}}
@media(max-width:400px){.record-setting .color-palette{grid-template-columns:repeat(8,27px)}.library-groups{grid-template-columns:1fr}}
.lesson-reading{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:40px;margin-top:24px}.lesson-main-reading{min-width:0}.lesson-reading:not(:has(.lesson-materials)){grid-template-columns:1fr}.lesson-description{font-size:16px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}.lesson-materials{border-left:1px solid var(--line,#e8e6e4);padding-left:24px;min-width:0}.lesson-materials h3{font-size:13px;font-weight:500;margin:0 0 20px}.lesson-materials .file{overflow-wrap:anywhere}.lesson-homework-link{margin-top:24px;display:flex;align-items:center;gap:10px;width:100%;padding:15px;border:1px solid var(--line,#e8e6e4);border-radius:12px;background:transparent;font-size:13px}.lesson-homework-link svg{width:18px}.lesson-homework-link svg:last-child{margin-left:auto}.appointment{cursor:pointer;font:inherit;text-align:left;display:flex;flex-direction:column}.appointment[aria-disabled=true]{cursor:default}.appointment-homework{margin-top:auto;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:3px 0;background:transparent;border:0;border-top:1px solid #00000015;border-radius:0;font:inherit;font-size:10px;width:100%;text-align:left}.appointment-homework svg{width:12px;height:12px}.appointment-copy{min-height:0;overflow:hidden}.homework-detail{max-width:1120px;margin:0 auto;overflow:auto;max-height:calc(100dvh - 70px)}.homework-detail h1{margin:18px 0 8px;font-size:28px;font-weight:500}.homework-layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:35px}.homework-layout section{min-width:0}.homework-layout h2{font-size:15px;font-weight:500;margin-bottom:20px}.homework-layout .prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.homework-layout form{margin-top:24px}.homework-layout textarea{width:100%}.lesson-reading .plan-content{max-height:none}.lesson-reading .detail-section{break-inside:avoid}.review-result{margin-top:24px}@media(max-width:700px){.lesson-reading,.homework-layout{grid-template-columns:1fr;gap:24px}.lesson-materials{border-left:0;border-top:1px solid #eee;padding:20px 0 0}.homework-detail{padding:20px}.appointment-homework{font-size:9px}}
