@media (max-width:767px){:root{--page-pad:1rem;--section-gap:1rem;--card-pad:1rem;--card-margin:1rem;--mobile-header-height:3rem;--mobile-sticky-offset:calc(env(safe-area-inset-top, 0px) + var(--mobile-header-height) + 0.75rem)}html{-webkit-text-size-adjust:100%}body{padding:var(--page-pad);padding-top:calc(var(--page-pad) + env(safe-area-inset-top, 0px));padding-bottom:calc(var(--page-pad) + env(safe-area-inset-bottom, 0px));overflow-x:hidden}body:has(.mobile-action-bar){padding-bottom:calc(5rem + var(--page-pad) + env(safe-area-inset-bottom, 0px))}body:has(.page-header){padding-top:var(--page-pad)}.page-wrap .page-wrap,main.page-wrap{padding-inline:0}.page-wrap,.page-wrap .page-wrap,main.page-wrap{width:100%;max-width:100%;min-width:0}.page-header{flex-direction:column;align-items:stretch;gap:0;top:env(safe-area-inset-top,0);padding-top:.375rem;margin-bottom:.75rem;margin-inline:calc(-1 * var(--page-pad));padding-inline:var(--page-pad)}.mobile-header-bar{display:flex!important;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:var(--mobile-header-height)}.mobile-header-title{flex:1 1 auto;min-width:0;font-size:1.0625rem;font-weight:600;line-height:1.3;color:var(--text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);cursor:pointer}.mobile-menu-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}.mobile-menu-icon{display:block;width:1.125rem;height:.125rem;background:currentColor;border-radius:1px;box-shadow:0 -.375rem 0 currentColor,0 .375rem 0 currentColor}.admin-nav--desktop,.page-header-tools--desktop{display:none!important}.mobile-nav-backdrop{position:fixed;inset:0;z-index:70;border:none;padding:0;margin:0;background:rgba(0,0,0,.45);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}.mobile-nav-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}.mobile-nav-drawer{position:fixed;top:0;right:0;z-index:80;display:flex;flex-direction:column;width:min(100%,20rem);max-width:calc(100vw - 3rem);height:100dvh;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);background:var(--panel);border-left:1px solid var(--border);box-shadow:-8px 0 24px rgba(0,0,0,.35);transform:translateX(100%);transition:transform .25s ease;overflow:hidden}.mobile-nav-drawer.is-open{transform:translateX(0)}.mobile-nav-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.875rem 1rem;border-bottom:1px solid var(--border)}.mobile-nav-drawer-title{font-size:.875rem;font-weight:600;color:var(--muted)}.mobile-nav-close{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:1.375rem;line-height:1;cursor:pointer}.mobile-nav-drawer-tools{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem;border-bottom:1px solid var(--border)}.mobile-nav-drawer-tools .site-auth-bar{width:100%;flex-direction:column;align-items:stretch}.mobile-nav-drawer-tools .site-auth-user{max-width:none;white-space:normal;word-break:break-word}.mobile-nav-drawer-tools .btn-rsi-filter{width:100%}.mobile-nav-drawer-tools .lang-switch{justify-content:flex-start}.mobile-nav-drawer-nav{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-nav-drawer-list{display:flex;flex-direction:column;gap:.25rem;margin:0;padding:.75rem;list-style:none}.mobile-nav-drawer-link{display:flex;align-items:center;min-height:2.75rem;padding:.625rem .875rem;border-radius:8px;border:1px solid transparent;color:var(--text);font-size:1rem;line-height:1.35;text-decoration:none;writing-mode:horizontal-tb;word-break:break-word;transition:background .15s ease,border-color .15s ease,color .15s ease}.mobile-nav-drawer-link:hover{background:color-mix(in srgb,var(--bg) 65%,var(--panel))}.mobile-nav-drawer-link.is-active{color:var(--accent);font-weight:600;border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,transparent)}h1{font-size:clamp(1.625rem,5vw + .25rem,1.75rem);line-height:1.25}.section h2,h2{font-size:1.375rem;line-height:1.3}.sub,dd,dt,label,li,main,p{font-size:1rem}.empty,.hint,.site-auth-checking,.site-auth-user,.sub{font-size:.875rem}.etr-panel,.section,.stat-card,.strategy-card,.tool-dot-card,.tool-dot-panel{width:100%;max-width:100%;padding:var(--card-pad);margin-bottom:var(--card-margin);border-radius:10px;height:auto;min-height:0;overflow-wrap:anywhere;word-break:break-word}.page-layout,.page-layout-primary,.page-layout-secondary{gap:var(--section-gap)}.btn-rsi-filter,.tool-dot-btn,button[type=submit]:not(.mobile-menu-toggle):not(.mobile-nav-close):not(.jpls-icon-btn):not(.jpls-view-tab):not(.jpls-slot-cell):not(.jpls-week-item):not(.jpls-month-cell):not(.jpls-today-item):not(.lang-switch-btn):not(.jp-edit-icon-btn){width:100%;min-height:3rem;max-width:100%}.mobile-action-bar .btn-rsi-filter{min-height:3rem}.rsi-filter-actions{flex-direction:column;align-items:stretch;gap:.75rem}.rsi-filter-actions .btn-rsi-filter{flex:1 1 auto}.tool-dot-file,.tool-dot-input,input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;max-width:100%;min-height:2.75rem;box-sizing:border-box}.tool-dot-input,textarea{min-height:5.5rem}.cmp-params-row,.row{flex-direction:column;align-items:stretch;gap:.75rem}.form-grid{grid-template-columns:1fr;gap:.75rem}.field--span-2{grid-column:span 1}.jp-vocab-page{max-width:100%!important;padding-top:1rem!important}.jp-vocab-help,.jp-vocab-page>p,.jp-vocab-risk-hint{overflow-wrap:anywhere;word-break:break-word}.jp-vocab-search{flex-direction:column;align-items:stretch;gap:.75rem}.jp-vocab-search__row{width:100%;max-width:none}.jp-vocab-search__input,.jp-vocab-search__kind{width:100%;max-width:100%;min-height:2.75rem}.jp-vocab-search__kind{min-width:0}.page-wrap:has(.jp-vocab-page){max-width:100%}.jp-lesson-page{padding-top:1rem!important;max-width:100%!important}.jp-lesson-page h1{font-size:clamp(1.625rem,5vw,1.75rem)!important;margin-bottom:.5rem!important}.jp-lesson-page>p{font-size:1rem;line-height:1.5;overflow-wrap:anywhere;word-break:break-word}.jp-lesson-cards{display:flex;flex-direction:column;gap:.75rem}.jp-lesson-mobile-status-filter{display:flex;gap:.375rem;margin-bottom:.25rem}.jp-lesson-mobile-status-tab{flex:1 1 0;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.125rem;min-height:2.75rem;padding:.375rem .5rem;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--muted);font:inherit;font-size:.8125rem;line-height:1.2;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.jp-lesson-mobile-status-tab-count{font-size:.6875rem;font-variant-numeric:tabular-nums;opacity:.85}.jp-lesson-mobile-status-tab--learning.is-active{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.jp-lesson-mobile-status-tab--pending.is-active{color:var(--text);border-color:color-mix(in srgb,var(--text) 25%,var(--border));background:color-mix(in srgb,var(--text) 6%,var(--panel))}.jp-lesson-mobile-status-tab--completed.is-active{color:var(--fall);border-color:color-mix(in srgb,var(--fall) 50%,var(--border));background:color-mix(in srgb,var(--fall) 10%,var(--panel))}.jp-lesson-mobile-filter-completed .jp-lesson-status-card--learning,.jp-lesson-mobile-filter-completed .jp-lesson-status-card--pending,.jp-lesson-mobile-filter-learning .jp-lesson-status-card--completed,.jp-lesson-mobile-filter-learning .jp-lesson-status-card--pending,.jp-lesson-mobile-filter-pending .jp-lesson-status-card--completed,.jp-lesson-mobile-filter-pending .jp-lesson-status-card--learning{display:none!important}.jp-lesson-status-card-head{display:none}.jp-lesson-status-card{padding:.75rem;margin-bottom:0}.jp-lesson-status-card-title{font-size:1.375rem!important}.jp-lesson-schedule-page{max-width:100%!important;padding-top:.75rem!important;padding-bottom:1rem!important}.page-wrap:has(.jp-lesson-page),.page-wrap:has(.jp-lesson-schedule-page){max-width:100%}.jp-lesson-admin-links{flex-direction:column;align-items:stretch;gap:.75rem}.jp-lesson-admin-links a{display:flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.5rem .875rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);text-decoration:none}.compare-cards,.etr-cards,.results-overview--mobile,.strategy-card-grid{grid-template-columns:1fr!important}.etr-card-actions,.etr-row-actions{flex-direction:column;align-items:stretch;gap:.5rem}.etr-card-actions .btn-rsi-filter,.etr-card-actions a,.etr-card-actions button,.etr-row-actions .btn-rsi-filter,.etr-row-actions a,.etr-row-actions button{width:100%;min-height:2.75rem}.site-auth-overlay{padding:calc(var(--mobile-header-height) + env(safe-area-inset-top, 0px) + 1rem) var(--page-pad) calc(1rem + env(safe-area-inset-bottom, 0px));align-items:stretch}.site-auth-dialog{width:100%;max-width:none;border-radius:10px}.page-header{z-index:25}.section{margin-bottom:var(--card-margin)}.etr-top-bar{flex-direction:column;align-items:stretch;gap:.75rem}.etr-top-bar-actions{align-items:stretch;text-align:left}.etr-history-actions,.etr-history-head{flex-direction:column;align-items:stretch}.etr-history-actions .btn-rsi-filter{width:100%}.admin-tool-codes-filters,.admin-visits-toolbar{flex-direction:column;align-items:stretch}.admin-tool-codes-filter-select,.admin-visits-filter-select{width:100%;max-width:none;min-width:0}.page-wrap,body,html,main{max-width:100%;overflow-x:clip}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.compare-cards,.results-overview--mobile{gap:.75rem}code,pre{max-width:100%;overflow-x:auto;word-break:break-word;white-space:pre-wrap}.jpls-toolbar{position:static;margin-bottom:.75rem;padding-bottom:0}.jpls-toolbar,.jpls-toolbar-controls{flex-direction:column;align-items:stretch;gap:.75rem}.jpls-toolbar-controls,.jpls-view-tabs{display:flex;width:100%}.jpls-view-tabs{order:-1;position:sticky;top:var(--mobile-sticky-offset);z-index:16;margin-inline:calc(-1 * var(--page-pad));padding:.375rem var(--page-pad);background:color-mix(in srgb,var(--bg) 96%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent)}.jpls-view-tab{flex:1 1 0;min-height:3rem;padding:.5rem .35rem;text-align:center;font-size:1rem}.jpls-date-nav{width:100%;align-items:stretch}.jpls-date-nav-center{flex:1 1 auto;min-width:0;flex-direction:column;align-items:stretch;gap:.25rem}.jpls-date-relative{font-size:1.125rem;font-weight:700;text-align:center}.jpls-date-input{flex:1 1 auto;min-height:2.75rem;width:100%;font-size:1rem}.jpls-icon-btn{width:2.75rem;height:2.75rem;flex-shrink:0}.jpls-toolbar-right{margin-left:0;width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.jpls-toolbar-right .jpls-export-btn{flex:1 1 100%}.jpls-export-btn{width:100%;min-height:2.75rem;font-size:1rem}.jpls-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:.75rem}.jpls-sidebar{display:contents!important}.jpls-sidebar-panels{order:1;width:100%;display:flex;flex-direction:column;gap:.75rem}.jpls-calendar{order:2;position:relative;z-index:0;min-width:0;width:100%;padding:.75rem;overflow:visible;max-width:100%;height:auto!important}.jpls-tip{width:100%;padding-top:.25rem}.jpls-header{flex-direction:column;align-items:stretch;gap:.75rem}.jpls-header h1{font-size:clamp(1.625rem,5vw,1.75rem)}.jpls-back-btn{width:100%;min-height:2.75rem;justify-content:center;font-size:1rem}.jpls-calendar--day-sync{display:block!important;overflow:visible!important;height:auto!important}.jpls-calendar--day-sync .jpls-day-view,.jpls-day-view{height:auto!important;flex:none!important;max-width:100%;overflow:visible!important}.jpls-day-view .jpls-timeline-heading{display:block!important;margin:0 0 .5rem;font-size:1.0625rem}.jpls-calendar--day-sync .jpls-slot-grid,.jpls-day-view .jpls-slot-grid{flex:none!important;min-height:0!important;height:auto!important;max-width:100%;width:100%;max-height:none!important;overflow:visible!important;display:flex!important;flex-direction:column;gap:.625rem;border:none;border-radius:0;background:transparent}.jpls-calendar--day-sync .jpls-slot-row,.jpls-day-view .jpls-slot-row{flex:none!important;display:grid!important;grid-template-columns:2.75rem minmax(0,1fr)!important;width:100%;min-width:0;min-height:2.25rem!important}.jpls-day-view .jpls-slot-row:has(.jpls-slot-cell.is-free){display:none!important}.jpls-day-view .jpls-slot-row:not(.is-event-start):has(.jpls-slot-cell.is-busy){display:none!important}.jpls-day-view .jpls-slot-row.is-event-start{display:flex!important;flex-direction:column;grid-template-columns:unset!important;min-height:0!important;border:1px solid color-mix(in srgb,var(--rise) 30%,var(--border));border-radius:10px;overflow:hidden;background:transparent}.jpls-day-view .jpls-slot-row.is-event-start:has(.jpls-slot-cell--past){border-color:color-mix(in srgb,var(--fall) 35%,var(--border))}.jpls-day-view .jpls-slot-row.is-event-start:has(.jpls-slot-cell--ongoing){border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)}.jpls-day-view .jpls-slot-row.is-event-start .jpls-slot-time{width:100%;border-right:none;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);justify-content:flex-start;padding:.5rem .75rem;font-size:.9375rem;font-weight:600;color:var(--text);background:color-mix(in srgb,var(--panel) 92%,transparent)}.jpls-day-view .jpls-slot-row.is-event-start .jpls-slot-cell.is-busy{flex-direction:column;align-items:flex-start;flex-wrap:wrap;gap:.4rem;width:100%;min-height:auto!important;padding:.65rem .75rem;overflow:visible;border-left:none}.jpls-day-view .jpls-slot-row.is-event-start .jpls-slot-cell.is-busy.jpls-slot-cell--past{opacity:1}.jpls-slot-cell,.jpls-slot-row.is-event-start .jpls-slot-cell{min-height:2.25rem!important;align-items:center}.jpls-slot-free-label{white-space:nowrap}.jpls-day-view .jpls-slot-busy-label{display:inline-flex;align-items:center;padding:.22rem .6rem;border-radius:999px;background:color-mix(in srgb,#fff 18%,transparent);font-size:.8125rem;font-weight:700;letter-spacing:.03em;white-space:nowrap;flex-shrink:0}.jpls-day-view .jpls-slot-busy-label--past{background:color-mix(in srgb,var(--fall) 18%,transparent)}.jpls-day-view .jpls-slot-busy-encourage{width:100%;font-size:.75rem;white-space:normal;flex-shrink:0}.jpls-day-view .jpls-slot-busy-time{width:100%;font-size:.9375rem;font-weight:600;flex-shrink:0}.jpls-day-title{margin-bottom:.5rem;font-size:.9375rem;flex-wrap:wrap}.jpls-day-weekday{font-size:1.0625rem;font-weight:700}.jpls-day-view .jpls-slot-busy-meta{width:100%;font-size:.8125rem;line-height:1.45;white-space:normal;overflow:visible;text-overflow:clip;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.jpls-day-view .jpls-now-line{display:none}.jpls-calendar--day-sync{margin-top:0;padding-top:0;border-top:none}.jpls-week-view{display:flex!important;flex-wrap:nowrap;grid-template-columns:unset!important;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:.75rem;min-height:0!important;max-width:100%;padding-bottom:.25rem}.jpls-week-col{flex:0 0 min(85vw,18rem);min-width:min(85vw,18rem)}.jpls-month-grid,.jpls-month-weekdays{min-width:min(100%,36rem)}.jpls-calendar:has(.jpls-month-grid){overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.jpls-detail,.jpls-today-list{width:100%;padding:.75rem;margin-top:0;margin-bottom:0;border-radius:10px}.jpls-detail h2,.jpls-today-list h2{font-size:1.125rem;margin-bottom:.5rem}.jpls-detail-list{display:flex;flex-direction:column;gap:.625rem}.jpls-detail-list>div{display:flex;flex-direction:column;gap:.25rem}.jpls-detail-list dt{font-size:.875rem}.jpls-detail-list dd{font-size:1rem;overflow-wrap:anywhere;word-break:break-word}.jpls-link-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:.5rem}.jpls-link-row a,.jpls-link-row button{display:flex;align-items:center;justify-content:center;width:100%;min-height:2.75rem;padding:.45rem .65rem;font-size:.9375rem;box-sizing:border-box}.jpls-today-item,.jpls-week-item{min-height:2.75rem;padding:.55rem .65rem}.jpls-today-list ul{gap:.375rem}.jpls-sub{font-size:.8125rem;line-height:1.4}.jp-lesson-next-class-overlay,.jp-lesson-teacher-overlay,.jp-vocab-edit-overlay,.jp-vocab-intro-modal-overlay,.jp-vocab-reset-modal-overlay,.jp-vocab-risk-modal-overlay{align-items:flex-end;padding:0 0 env(safe-area-inset-bottom,0)}.jp-lesson-next-class-modal,.jp-lesson-teacher-modal,.jp-vocab-edit-modal,.jp-vocab-intro-modal,.jp-vocab-reset-modal,.jp-vocab-risk-modal{width:100%;max-width:none;max-height:calc(100dvh - env(safe-area-inset-top, 0px));border-radius:12px 12px 0 0;overflow-y:auto;-webkit-overflow-scrolling:touch}.jp-lesson-next-class-actions,.jp-lesson-teacher-actions,.jp-vocab-edit-footer,.jp-vocab-intro-modal-footer,.jp-vocab-reset-modal-footer{flex-direction:column;align-items:stretch;gap:.5rem}.jp-lesson-next-class-actions button,.jp-lesson-teacher-actions button,.jp-vocab-edit-footer button,.jp-vocab-intro-modal-footer button,.jp-vocab-reset-modal-footer button{width:100%;min-height:2.75rem}.jp-lesson-next-class-close,.jp-lesson-teacher-close,.jp-vocab-edit-close{width:2.75rem;height:2.75rem}.jp-lesson-next-class-input,.jp-lesson-teacher-add-input{width:100%;min-height:2.75rem;font-size:1rem;box-sizing:border-box}.jp-lesson-teacher-option--add{flex-direction:column;align-items:stretch;gap:.5rem}.jp-lesson-teacher-add-label{width:100%}.jp-lesson-table-wrap{overflow-x:visible;width:100%}.jp-lesson-table,.jp-lesson-table tbody{display:block;width:100%;min-width:0!important}.jp-lesson-table thead{display:none}.jp-lesson-table tbody tr{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:.5rem .625rem;width:100%;box-sizing:border-box;margin-bottom:.625rem;padding:.75rem .875rem;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--panel) 92%,var(--bg))}.jp-lesson-table tbody td{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:.2rem;width:auto;min-width:0;box-sizing:border-box;padding:0!important;border:none!important;text-align:left!important;white-space:normal;line-height:1.35}.jp-lesson-table tbody td:before{flex:0 0 auto;font-size:.6875rem;font-weight:500;color:var(--muted);text-align:left!important;padding:0;line-height:1.25;white-space:nowrap;letter-spacing:.02em}.jp-lesson-table tbody td>*{flex:0 0 auto;width:100%;min-width:0;font-size:.875rem}.jp-lesson-content-col{order:1;flex:1 1 100%}.jp-lesson-content-col:before{content:"学习内容";font-size:.75rem}.jp-lesson-content-col>*{font-size:.9375rem;line-height:1.45;font-weight:500}.jp-lesson-content-col,.jp-lesson-content-line{overflow-wrap:anywhere;word-break:break-word}.jp-lesson-content-lines{gap:.15rem}.jp-lesson-complete-col{order:2;flex:1 1 calc(50% - 0.3125rem);min-width:0;padding-top:0!important;margin-top:0!important;border-top:none!important}.jp-lesson-complete-col:before{content:"学习状态"}.jp-lesson-notes-col{order:2;flex:1 1 calc(50% - 0.3125rem);min-width:0;padding-top:0!important;margin-top:0!important;border-top:none!important}.jp-lesson-notes-col:before{content:"课堂笔记"}.jp-lesson-actions-col{order:3;flex:1 1 100%;padding-top:0!important;margin-top:0!important;border-top:none!important}.jp-lesson-actions-col:before{content:"教案操作"}.jp-lesson-next-class-col{order:4;flex:1 1 100%}.jp-lesson-next-class-col:before{content:"上课时间"}.jp-lesson-next-class-cell{flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;justify-content:flex-start!important;gap:.375rem;width:100%}.jp-lesson-next-class-lines{flex:none;width:100%;min-width:0;gap:.25rem}.jp-lesson-next-class-entry{gap:.1rem}.jp-lesson-id-col{order:10;flex:1 1 auto;min-width:3.75rem;max-width:calc(50% - .3125rem);text-align:left!important;font-variant-numeric:tabular-nums;color:var(--muted)}.jp-lesson-id-col:before{content:"ID"}.jp-lesson-id-col>*{font-size:.8125rem}.jp-lesson-kind-col{order:10;flex:1 1 auto;min-width:4.5rem;max-width:calc(50% - .3125rem)}.jp-lesson-kind-col:before{content:"学习类型"}.jp-lesson-operator-col{order:11;flex:1 1 auto;min-width:4.5rem;max-width:calc(50% - .3125rem)}.jp-lesson-operator-col:before{content:"操作人"}.jp-lesson-operator-col>*{font-size:.8125rem;color:var(--text)}.jp-lesson-teacher-col{order:11;flex:1 1 auto;min-width:4.5rem;max-width:calc(50% - .3125rem)}.jp-lesson-teacher-col:before{content:"上课老师"}.jp-lesson-teacher-col>*{font-size:.8125rem}.jp-lesson-teacher-cell{flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;justify-content:flex-start!important;gap:.375rem;width:100%}.jp-lesson-merged-edit-stack{display:inline-flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:.375rem;margin-left:0;flex:0 0 auto}.jp-lesson-status-at-col,.jp-lesson-uploaded-col{order:20;flex:1 1 calc(50% - 0.3125rem);min-width:6.5rem;padding-top:.375rem!important;margin-top:.125rem;border-top:1px solid color-mix(in srgb,var(--border) 55%,transparent)}.jp-lesson-uploaded-col:before{content:"上传日期"}.jp-lesson-status-at-col:before{content:"最近操作"}.jp-lesson-status-at-col .jp-lesson-dt,.jp-lesson-status-at-col>*,.jp-lesson-uploaded-col .jp-lesson-dt,.jp-lesson-uploaded-col>*{font-size:.75rem;line-height:1.3;color:var(--muted);font-variant-numeric:tabular-nums;white-space:normal!important}.jp-lesson-dt-full{display:none}.jp-lesson-dt-compact{display:inline}.jp-lesson-class-duration-dt-full,.jp-lesson-next-class-dt-full{display:none}.jp-lesson-class-duration-dt-compact,.jp-lesson-next-class-dt-compact{display:inline}.jp-lesson-next-class-dt,.jp-lesson-next-class-dt-compact,.jp-lesson-next-class-label{font-variant-numeric:tabular-nums;white-space:normal!important;word-break:break-word}.jp-lesson-table .jp-lesson-kind{padding:.1rem .4rem;font-size:.75rem;width:-moz-fit-content;width:fit-content}.jp-lesson-merged-stack-item+.jp-lesson-merged-stack-item{margin-top:.375rem;padding-top:.375rem;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.jp-lesson-actions{display:flex!important;flex-direction:row;flex-wrap:wrap;align-items:stretch;justify-content:flex-start;width:100%;gap:.5rem}.jp-lesson-actions .jp-lesson-action-btn,.jp-lesson-actions .jp-ref-download-menu,.jp-lesson-actions .jp-ref-download-trigger{flex:1 1 calc(50% - 0.25rem);min-width:calc(50% - .25rem);max-width:100%;box-sizing:border-box}.jp-lesson-actions .jp-edit-icon-btn{flex:0 0 auto;min-width:2.75rem;min-height:2.75rem;box-sizing:border-box}.jp-lesson-action-btn{min-height:2.75rem;width:auto;font-size:.875rem;padding-inline:.625rem}.jp-lesson-notes-btn{min-height:2.75rem;width:100%;max-width:none;font-size:.875rem;justify-content:center}.jp-lesson-complete-wrap{width:100%;max-width:100%;margin-inline:0}.jp-lesson-complete-select{min-height:2.75rem;width:100%;min-width:0;font-size:.875rem;text-align:left;-moz-text-align-last:left;text-align-last:left}.jp-lesson-complete-wrap:after{right:.75rem}.jp-lesson-class-duration-label,.jp-lesson-next-class-label{white-space:normal!important}.jp-lesson-sort-btn{min-height:2.75rem;width:100%}.jp-lesson-notes-page{max-width:100%!important;padding-top:1rem!important}.jp-lesson-notes-page-head{flex-direction:column;align-items:stretch;gap:.75rem}.jp-lesson-notes-body{padding:var(--card-pad)!important}.jp-lesson-notes-section-head{flex-direction:column;align-items:stretch;gap:.5rem}.jp-lesson-notes-section-add{width:100%;min-height:2.75rem;padding:.5rem .75rem!important;font-size:1rem!important}.jp-lesson-notes-textarea{min-height:5.5rem;font-size:1rem}.jp-lesson-notes-footer{flex-direction:column;align-items:stretch;gap:.75rem;padding:var(--card-pad)!important}.jp-lesson-notes-footer-actions{flex-direction:column;align-items:stretch;width:100%}.jp-lesson-notes-footer-actions .btn-rsi-filter{width:100%;min-height:2.75rem}.admin-jpl-teachers-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.admin-jpl-teachers-table .col-actions .etr-form-actions{flex-direction:column;align-items:stretch}.admin-jpl-teachers-table .col-actions .btn-rsi-filter{width:100%;min-height:2.75rem}.admin-user-add-form{flex-direction:column;align-items:stretch}.admin-user-add-field{width:100%}.admin-user-add-submit{width:100%;min-height:2.75rem}.etr-auth-form-actions,.etr-form-actions{flex-direction:column;align-items:stretch;gap:.5rem}.etr-auth-form-actions .btn-rsi-filter,.etr-form-actions .btn-rsi-filter{width:100%;min-height:2.75rem}.etr-remark-field textarea{width:100%;min-height:5.5rem}.compare-chart-host,.compare-chart-wrap{max-width:100%;min-width:0;overflow:hidden}.admin-page,.etr-page,.page-hero,.svr-page{width:100%;max-width:100%;min-width:0}.etr-demo-banner,.page-hero .hint,.page-hero .sub{overflow-wrap:anywhere;word-break:break-word}.page-hero .hint a{word-break:break-word}.admin-table-wrap,.etr-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.admin-cards{grid-template-columns:1fr!important}.admin-cards,.compare-cards,.results-overview--mobile{gap:var(--section-gap)}.jp-vocab-page .section.etr-panel>div:first-child{flex-direction:column!important;align-items:stretch!important;gap:.75rem!important}.jp-vocab-page .section.etr-panel>div:first-child>div:last-child{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;width:100%}.jp-vocab-page .section.etr-panel>div:first-child>div:last-child .btn-rsi-filter{width:100%;min-height:2.75rem}.jp-vocab-page .section.etr-panel>div:first-child>div:last-child>span{font-size:.9375rem;line-height:1.45}.jp-vocab-pagination{flex-direction:column;align-items:stretch;gap:.5rem}.jp-vocab-pagination .btn-rsi-filter{width:100%;min-height:2.75rem}.jp-vocab-pagination__info{text-align:center;font-size:.875rem}.jp-vocab-page .section.etr-panel h2{font-size:1.375rem}.jp-vocab-scroll-hint{display:none!important}.jp-vocab-table-wrap{display:block!important;overflow-x:visible;max-width:100%}.jp-vocab-table{min-width:0!important}.jp-vocab-table thead{display:none}.jp-vocab-table tbody tr{display:flex;flex-direction:column;gap:8px;margin-bottom:12px!important;padding:14px!important;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--panel) 92%,var(--bg))}.jp-vocab-table tbody td{display:flex!important;flex-direction:row!important;align-items:flex-start!important;justify-content:flex-start!important;gap:8px;padding:0!important;border:none;text-align:left!important;white-space:normal;line-height:1.35}.jp-vocab-table tbody td:before{content:attr(data-label) "：";flex:0 0 5.5rem;min-width:5rem;max-width:6.25rem;font-size:.875rem;font-weight:400;color:var(--muted);text-align:left!important;padding:0}.jp-vocab-table tbody td.jp-vocab-field-empty{display:none!important}.jp-vocab-table .jp-vocab-word-col{order:-1;flex-direction:column!important;align-items:center!important;gap:4px;padding:0 0 8px!important;margin-bottom:2px;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent)}.jp-vocab-table .jp-vocab-word-col:before{display:none!important}.jp-vocab-word-cell{text-align:center!important;align-items:center!important;overflow-wrap:anywhere;word-break:break-word}.jp-vocab-word-link,.jp-vocab-word-text{font-size:clamp(1.75rem,8vw,2rem)!important;font-weight:600;line-height:1.2}.jp-vocab-table tbody td>*{flex:1;min-width:0;font-size:.9375rem}.jp-vocab-table .jp-vocab-seq-col{order:1}.jp-vocab-table .jp-vocab-kind-col{order:2}.jp-vocab-table .jp-vocab-reading-col{order:3}.jp-vocab-table .jp-vocab-meaning-col{order:4}.jp-vocab-table .jp-vocab-pos-col{order:5}.jp-vocab-table .jp-vocab-risk-col{order:6}.jp-vocab-table .jp-vocab-level-col{order:7;flex-direction:column!important;align-items:stretch!important;gap:6px!important;padding-top:4px!important;margin-top:2px;border-top:1px solid color-mix(in srgb,var(--border) 50%,transparent)}.jp-vocab-table .jp-vocab-level-col:before{flex:0 0 auto!important;width:auto!important;max-width:none!important}.jp-vocab-table .jp-vocab-seq-cell{flex-direction:row!important;align-items:center;gap:.35rem;min-height:0}.jp-vocab-table .jp-vocab-kind-badge{font-size:.9375rem!important;padding:0!important;border:none!important;border-radius:0!important;background:none!important;color:var(--text)!important}.jp-vocab-table .jp-vocab-risk-badge{display:inline-flex!important;align-items:center;flex:0 0 auto!important;padding:2px 8px;border-radius:6px;font-size:.875rem!important;font-weight:600;font-variant-numeric:tabular-nums;border:1px solid var(--border);background:color-mix(in srgb,var(--panel) 88%,var(--bg))}.jp-vocab-table .jp-vocab-risk-badge--low{color:var(--fall);border-color:color-mix(in srgb,var(--fall) 30%,var(--border));background:color-mix(in srgb,var(--fall) 12%,var(--panel))}.jp-vocab-table .jp-vocab-risk-badge--mid{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--panel))}.jp-vocab-table .jp-vocab-risk-badge--high{color:var(--rise);border-color:color-mix(in srgb,var(--rise) 30%,var(--border));background:color-mix(in srgb,var(--rise) 12%,var(--panel))}.jp-vocab-levels{display:flex!important;flex-wrap:wrap!important;gap:12px!important;justify-content:flex-start!important;width:100%}.jp-vocab-level-opt{flex:0 1 auto!important;min-height:2.25rem!important;padding:4px 8px!important;font-size:.875rem!important;justify-content:flex-start!important}.jp-vocab-table .jp-vocab-stat-detail,.jp-vocab-table .jp-vocab-stat-total,.jp-vocab-table .jp-vocab-today-check-col{display:none!important}.jp-vocab-table .jp-vocab-action-col,.jp-vocab-table .jp-vocab-notes-col{order:8;padding-top:4px!important;border-top:1px solid color-mix(in srgb,var(--border) 40%,transparent)}.jp-vocab-table .jp-vocab-action-col{order:9;border-top:none;padding-top:0!important}.jp-vocab-ref-hint{text-align:center!important;font-size:.75rem!important;margin-top:.15rem!important}.page-wrap:has(.tool-dot-wrap){max-width:100%}main .tool-dot-wrap{width:100%;max-width:100%;min-width:0;padding-inline:0}main .tool-dot-wrap:not(:has(.tool-dot-converter)) .tool-dot-header{display:none}main .tool-dot-wrap:has(.tool-dot-converter) .tool-dot-header{flex-direction:column;align-items:stretch;gap:.75rem;margin-bottom:var(--card-margin)}main .tool-dot-wrap:has(.tool-dot-converter) .tool-dot-header .page-header-tools{display:none}main .tool-dot-wrap:has(.tool-dot-converter) .tool-dot-back{display:inline-flex;align-items:center;min-height:2.75rem;padding:.375rem 0;font-size:1rem}.tool-dot-title{font-size:clamp(1.625rem,5vw,1.75rem)}.tool-dot-disclaimer,.tool-dot-hint,.tool-dot-notice p,.tool-dot-subtitle{font-size:.875rem;overflow-wrap:anywhere;word-break:break-word}.tool-dot-notice,.tool-dot-panel{width:100%;padding:var(--card-pad);margin-bottom:var(--card-margin);border-radius:10px}.tool-dot-converter .tool-dot-panel{max-width:100%}.tool-dot-card-list{grid-template-columns:1fr!important;gap:var(--section-gap)}.tool-dot-card{width:100%;min-height:3rem;padding:var(--card-pad);border-radius:10px}.tool-dot-btn{width:100%;min-height:2.75rem;max-width:100%}.tool-dot-field--wide{width:100%}.svr-dish-head{flex-direction:column;align-items:stretch;gap:.5rem}.svr-dish-row{grid-template-columns:1fr;gap:.5rem}.svr-dish-row .btn-rsi-filter{width:100%}.svr-plaza-filters{flex-direction:column;align-items:stretch;gap:.75rem}.svr-plaza-filter-action,.svr-plaza-filter-action .btn-rsi-filter{width:100%}.svr-plaza-card-head{flex-direction:column;align-items:stretch;gap:.5rem}.jpls-tip{order:3;margin:0;padding-top:.5rem;font-size:.8125rem;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.jpls-month-cell{min-height:3rem}.jpls-legend{font-size:.875rem}.jpls-week-view{min-height:min(520px,70vh)!important}.jp-edit-icon-btn{width:2.75rem!important;height:2.75rem!important;min-width:2.75rem;min-height:2.75rem}.jp-vocab-risk-chart-canvas{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.jp-lesson-teacher-modal-lesson,.jp-lesson-teacher-option span{overflow-wrap:anywhere;word-break:break-word}.jp-lesson-teacher-options{max-height:min(50dvh,24rem)}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{font-size:max(1rem,16px)}}@media (min-width:768px){.mobile-header-bar,.mobile-nav-backdrop,.mobile-nav-drawer{display:none!important}}