/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}.operational-context{background:#fff;border-left:3px solid #f47a00;justify-content:space-between;align-items:center;gap:18px;min-height:66px;margin-top:12px;padding:10px 18px;display:flex}.operational-context strong{color:#303641;font-size:14px;font-weight:500}.operational-context p{color:#9298a4;margin:4px 0 0;font-size:12px}.integration-overview nav,.operational-context nav{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.integration-overview nav button,.operational-context nav button{color:#6e7581;background:#fff;border:1px solid #e2e5ea;border-radius:2px;align-items:center;gap:5px;height:29px;padding:0 9px;display:inline-flex}.integration-overview nav button:hover,.operational-context nav button:hover{color:#f47a00;background:#fff9f3;border-color:#f6ae69}.operational-filters,.operational-table-panel{margin-top:12px}.operational-table-scroll{width:100%;overflow-x:auto}.operational-table{min-width:980px}.operational-table-row{grid-template-columns:repeat(var(--operation-columns),minmax(120px,1fr));color:#6d7380;border-bottom:1px solid #edf0f3;align-items:center;min-height:47px;font-size:12px;display:grid}.operational-table-row:hover:not(.head){background:#fffaf4}.operational-table-row.head{color:#8b919c;background:#fafbfc;min-height:40px}.operational-table-row>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 12px;overflow:hidden}.operational-actions{gap:5px;display:flex}.operational-actions button,.priority-actions button{color:#3d83c5;background:0 0;border:0;align-items:center;gap:3px;padding:2px 4px;display:inline-flex}.operational-actions button:hover,.priority-actions button:hover{color:#f47a00}.integration-modal>div,.notice-form,.operational-create-form,.template-edit-body{gap:15px;padding:22px 24px 24px;display:grid}.integration-modal label,.notice-form label,.operational-create-form label,.template-edit-body label{color:#6d7380;grid-template-columns:108px 1fr;align-items:center;display:grid}.attendance-time-settings input,.attendance-time-settings select,.attendance-toolbar input,.attendance-toolbar select,.clock-create-modal input,.consumption-filter input,.consumption-filter select,.integration-modal input,.notice-form input,.notice-form select,.notice-form textarea,.operational-create-form input,.operational-create-form select,.operational-create-form textarea,.template-edit-body input,.template-edit-body textarea,.voice-config input{color:#5f6673;background:#fff;border:1px solid #dfe2e8;border-radius:2px;outline:none;width:100%;min-height:34px;padding:0 10px}.notice-form textarea,.operational-create-form textarea,.template-edit-body textarea{resize:vertical;min-height:88px;padding-top:8px}.attendance-modal footer,.attendance-time-settings footer,.clock-create-modal footer,.integration-modal footer,.notice-form footer,.operational-create-form footer,.template-edit-body footer{justify-content:flex-end;gap:8px;display:flex}.attendance-modal footer button,.attendance-time-settings footer button,.clock-create-modal footer button,.integration-modal footer button,.notice-form footer button,.operational-create-form footer button,.template-edit-body footer button{color:#666d79;background:#fff;border:1px solid #dfe2e7;border-radius:2px;min-width:74px;height:33px;padding:0 13px}.attendance-modal footer button:last-child,.attendance-time-settings footer button:last-child,.clock-create-modal footer button:first-child,.integration-modal footer button:last-child,.notice-form footer button:last-child,.operational-create-form footer button:last-child,.template-edit-body footer button:last-child{color:#fff;background:#f47a00;border-color:#f47a00}button:disabled{cursor:not-allowed;opacity:.5}.priority-tabs{border-bottom:1px solid #eceef2;align-items:flex-end;gap:20px;min-height:52px;padding:0 18px;display:flex}.priority-tabs>button{color:#737a86;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:5px;height:43px;padding:0 6px;display:inline-flex;position:relative}.priority-tabs>button.active{color:#f47a00;border-bottom-color:#f47a00}.priority-tabs>button em{color:#fff;background:#f47a00;border-radius:9px;place-items:center;min-width:18px;height:18px;font-size:10px;font-style:normal;display:grid}.priority-tabs .priority-link{color:#4889c9;margin-left:auto}.priority-grid-table{width:100%;overflow-x:auto}.priority-grid-row{color:#6d7380;border-bottom:1px solid #edf0f3;align-items:center;min-height:51px;font-size:12px;display:grid}.priority-grid-row:hover:not(.head){background:#fffaf4}.priority-grid-row.head{color:#8d939d;background:#fafbfc;min-height:41px}.priority-grid-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;padding:0 11px;overflow:hidden}.priority-grid-row strong{color:#3b424e;font-weight:500}.priority-grid-row em{color:#159b75;font-style:normal}.message-table .priority-grid-row{grid-template-columns:1.15fr 1.1fr .9fr 2.3fr .72fr .7fr .7fr .55fr;min-width:1180px}.delivery-table .priority-grid-row{grid-template-columns:1fr 1fr .8fr 2.2fr 1fr .65fr;min-width:960px}.template-content{white-space:normal;line-height:1.55}.text-action{color:#3d83c5;background:0 0;border:0}.text-action:hover{color:#f47a00}.source-toggle{background:#c8ccd3;border:0;border-radius:10px;width:38px;height:20px;padding:0;position:relative}.source-toggle i{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .18s;position:absolute;top:3px;left:3px}.source-toggle.active{background:#f47a00}.source-toggle.active i{transform:translate(18px)}.priority-empty{color:#a0a5ae;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:280px;display:flex}.template-edit-modal{width:min(690px,95vw)}.template-edit-body>p{color:#999fa9;margin:-5px 0 0 108px;font-size:12px}.template-channel-row{color:#666d79;align-items:center;gap:11px;margin-left:108px;display:flex}.clock-panel{margin-top:12px}.clock-filters{border-bottom:1px solid #eef0f3;gap:8px;padding:14px 18px;display:flex}.clock-filters input{width:210px;padding:0 10px}.clock-filters button,.clock-filters input{border:1px solid #dfe2e8;border-radius:2px;height:32px}.clock-filters button{color:#69707b;background:#fff;padding:0 13px}.clock-filters button:first-of-type{color:#fff;background:#f47a00;border-color:#f47a00;align-items:center;gap:5px;display:inline-flex}.clock-table .priority-grid-row{grid-template-columns:1.4fr 1fr 1.2fr .7fr .8fr 1.2fr .9fr;min-width:960px}.clock-progress{vertical-align:middle;background:#edf0f3;border-radius:3px;width:74px;height:5px;margin-right:7px;display:inline-block}.clock-progress b{border-radius:inherit;background:#f47a00;height:100%;display:block}.priority-actions{align-items:center;gap:5px;display:flex}.clock-create-modal{width:min(630px,95vw)}.clock-create-modal>div{gap:19px;padding:22px 28px 26px;display:grid}.clock-create-modal>div>label{color:#68707c;grid-template-columns:90px 1fr;align-items:center;display:grid;position:relative}.clock-create-modal i{color:#e65d59;font-style:normal}.clock-create-modal small{color:#a1a6af;position:absolute;right:9px}.clock-create-modal fieldset{color:#68707c;border:0;gap:18px;margin:0;padding:0 0 0 90px;display:flex}.clock-create-modal legend{float:left;width:90px;margin-left:-90px}.clock-create-modal fieldset label{align-items:center;gap:5px;display:inline-flex}.clock-upload{color:#9aa0aa;background:#fafbfc;border:1px dashed #d9dde4;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:126px;height:82px;display:flex}.smart-attendance-panel{margin-top:12px}.attendance-config-sections{padding:0 24px 28px}.attendance-config-section{border-bottom:1px solid #e9ebef}.attendance-config-section>h2{color:#313743;margin:0;padding:20px 0 13px;font-size:14px;font-weight:500}.attendance-device{grid-template-columns:150px 1fr;gap:25px;padding-bottom:22px;display:grid}.attendance-device__visual{color:#87909d;border-right:1px solid #eff1f4;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:132px;display:flex}.attendance-device__visual img{object-fit:contain;max-width:95px;max-height:104px}.attendance-device__visual strong{font-size:12px;font-weight:400}.attendance-option-list{min-width:0}.attendance-option{border-bottom:1px dashed #edf0f3;justify-content:space-between;align-items:center;gap:25px;min-height:60px;display:flex}.attendance-option>div{min-width:0}.attendance-option strong{color:#454c58;font-size:13px;font-weight:500}.attendance-option p{color:#9ba0aa;margin:4px 0 0;font-size:12px}.attendance-option>label{color:#777e89;align-items:center;gap:8px;display:flex}.attendance-option-list>footer{justify-content:flex-end;align-items:center;gap:13px;min-height:58px;display:flex}.attendance-option-list>footer span,.attendance-time-settings footer span{color:#159b75;align-items:center;gap:5px;display:inline-flex}.attendance-option-list>footer button{color:#fff;background:#f47a00;border:0;border-radius:2px;height:32px;padding:0 14px}.voice-config{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;padding:15px 0;display:grid}.voice-config h3{color:#555c68;grid-column:1/-1;margin:0;font-size:13px;font-weight:500}.voice-config label{color:#7b818c;grid-template-columns:92px 1fr;align-items:center;font-size:12px;display:grid}.voice-config small{color:#9ca1aa;grid-column:1/-1}.attendance-time-settings{padding:25px 30px 34px}.attendance-time-settings h2{color:#343a46;margin:0;font-size:15px;font-weight:500}.attendance-time-settings>p{color:#9298a3}.time-range{grid-template-columns:180px 150px 24px 150px;align-items:center;gap:8px;max-width:650px;margin-top:13px;display:grid}.attendance-time-settings footer{max-width:650px;margin-top:22px}.attendance-summary,.consumption-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.attendance-summary button,.consumption-cards article{color:#8b919c;text-align:left;background:#fff;border:0;flex-direction:column;justify-content:center;align-items:flex-start;min-height:88px;padding:14px 18px;display:flex}.attendance-summary button:hover{box-shadow:inset 0 -2px #f47a00}.attendance-summary strong,.consumption-cards strong{color:#1f2937;margin-top:4px;font-size:22px;font-weight:500}.consumption-cards small{color:#a0a5ad;margin-top:3px}.attendance-ledger-panel{margin-top:12px}.attendance-toolbar{gap:8px;padding:14px 18px;display:flex}.attendance-toolbar input,.attendance-toolbar select{width:190px}.attendance-toolbar button,.consumption-filter button{color:#686f7b;background:#fff;border:1px solid #e0e3e8;border-radius:2px;align-items:center;gap:4px;height:34px;padding:0 13px;display:inline-flex}.attendance-toolbar button:first-of-type,.consumption-filter div button:first-of-type{color:#fff;background:#f47a00;border-color:#f47a00}.attendance-plan-table{overflow-x:auto}.attendance-plan-row{color:#68707c;border-bottom:1px solid #edf0f3;grid-template-columns:100px 100px 155px 100px 110px 75px 120px 65px 55px 85px 55px 55px 80px 210px;align-items:center;min-width:1570px;min-height:48px;font-size:12px;display:grid}.attendance-plan-row.head{color:#8d939e;background:#fafbfc;min-height:40px}.attendance-plan-row:hover:not(.head){background:#fffaf4}.attendance-plan-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 8px;overflow:hidden}.attendance-plan-row strong{color:#404753;font-weight:500}.attendance-plan-row em{color:#e89025;font-style:normal}.attendance-plan-row em.success{color:#159b75}.attendance-modal{width:min(760px,95vw)}.attendance-modal>div{padding:19px 24px 24px}.attendance-modal>div>p{color:#555c68;margin:0 0 14px}.attendance-student-list{border:1px solid #e7e9ed;max-height:330px;overflow-y:auto}.attendance-student-list label{color:#68707b;border-bottom:1px solid #eef0f3;grid-template-columns:1fr 150px 80px;align-items:center;min-height:46px;padding:0 12px;display:grid}.attendance-student-list input,.attendance-student-list select{border:1px solid #dfe2e7;height:30px;padding:0 8px}.attendance-effect{color:#a16524;background:#fff8ec;align-items:center;gap:7px;margin:13px 0;padding:10px;display:flex}.consumption-filter{background:#fff;justify-content:space-between;align-items:center;gap:15px;min-height:57px;margin-top:12px;padding:10px 18px;display:flex}.consumption-filter>div{gap:8px;display:flex}.consumption-filter input,.consumption-filter select{width:190px}.consumption-filter>button{color:#f47a00;border-color:#f5b06e}.consumption-panel{margin-top:12px}.consumption-table-scroll{overflow-x:auto}.consumption-report-table{min-width:1650px}.consumption-report-row{color:#6a717d;border-bottom:1px solid #edf0f3;grid-template-columns:100px 100px 150px repeat(10,130px);align-items:center;min-height:48px;font-size:12px;display:grid}.consumption-report-row.head{color:#898f9a;background:#fafbfc;min-height:43px}.consumption-report-row>*{padding:0 9px}.consumption-report-row em{color:#159b75;font-style:normal}.consumption-report-row.total{color:#f47a00;background:#fffaf4}.consumption-analysis{grid-template-columns:minmax(0,1fr) 360px;min-height:390px;display:grid}.consumption-chart{min-height:360px;padding:22px}.consumption-ranking{border-left:1px solid #edf0f3;padding:17px}.consumption-ranking h3{color:#353b47;margin:0 0 12px;font-size:14px}.consumption-ranking>div{border-bottom:1px solid #edf0f3;grid-template-columns:30px 1fr auto;align-items:center;min-height:45px;display:grid}.consumption-ranking em{color:#fff;background:#f39a40;border-radius:2px;place-items:center;width:21px;height:21px;font-style:normal;display:grid}.integration-overview{background:#fff;border-left:3px solid #f47a00;justify-content:space-between;align-items:center;gap:15px;min-height:78px;margin-top:12px;padding:13px 20px;display:flex}.integration-overview strong{color:#303641;font-size:15px}.integration-overview p{color:#959ba5;margin:5px 0 0;font-size:12px}.integration-tabs{background:#fff;align-items:flex-end;gap:20px;height:55px;margin-top:12px;padding:0 20px;display:flex}.integration-tabs button{color:#737a86;background:0 0;border:0;border-bottom:2px solid #0000;height:43px;padding:0 5px}.integration-tabs button.active{color:#f47a00;border-color:#f47a00}.integration-grid{grid-template-columns:repeat(3,minmax(260px,1fr));gap:12px;margin-top:12px;display:grid}.integration-grid article{background:#fff;grid-template-columns:52px 1fr auto;align-items:center;gap:14px;min-height:154px;padding:18px;display:grid}.integration-icon{color:#fff;background:#f47a00;border-radius:5px;place-items:center;width:52px;height:52px;display:grid}.integration-icon--wechat-mp{background:#20ad63}.integration-icon--sms{background:#347fc4}.integration-icon--wecom{background:#298de5}.integration-icon--dingtalk{background:#1689ec}.integration-grid article>div{min-width:0}.integration-grid strong{color:#373d49;font-size:14px;display:block}.integration-grid em{color:#9ba0aa;font-size:11px;font-style:normal}.integration-grid p{color:#8c929d;margin:7px 0;font-size:12px;line-height:1.55}.integration-grid small{color:#9ca2ab;margin-right:8px;display:inline-block}.integration-grid .integration-status.connected{color:#159b75}.integration-grid article>button{color:#f47a00;background:#fff;border:1px solid #f47a00;border-radius:2px;height:30px;padding:0 11px}.integration-modal>div>p{color:#9ba0aa;margin:-5px 0 0 108px;font-size:12px;line-height:1.6}.micro-school-panel{background:#fff;min-height:750px;margin-top:12px}.integration-warning{color:#a96718;background:#fff9ed;border:1px solid #ffe0a8;margin:14px 18px;padding:10px 13px}.micro-banner{min-height:146px;margin:0 18px;position:relative;overflow:hidden}.micro-banner img{object-fit:cover;object-position:center}.micro-workflow{padding:25px 55px 40px}.micro-workflow ol{counter-reset:workflow;grid-template-columns:repeat(3,1fr);margin:0 0 35px;padding:0;list-style:none;display:grid}.micro-workflow li{color:#8a909b;text-align:center;counter-increment:workflow;padding-top:42px;position:relative}.micro-workflow li:before{z-index:1;color:#a1a6ae;content:counter(workflow);background:#fff;border:2px solid #dfe3e8;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:0;left:50%;transform:translate(-50%)}.micro-workflow li:after{content:"";background:#e1e4e9;width:100%;height:1px;position:absolute;top:14px;left:50%}.micro-workflow li:last-child:after{display:none}.micro-workflow li.active{color:#f47a00}.micro-workflow li.active:before{color:#fff;background:#f47a00;border-color:#f47a00}.micro-workflow>div{text-align:center;max-width:640px;margin:0 auto}.micro-workflow h2{color:#343a46;font-size:17px;font-weight:500}.micro-logos{justify-content:center;align-items:center;gap:20px;margin:18px 0;display:flex}.micro-logos img{object-fit:contain}.micro-workflow label{color:#68707b;text-align:left;grid-template-columns:85px 1fr;align-items:center;max-width:490px;margin:0 auto;display:grid}.micro-workflow input{border:1px solid #dfe2e7;height:35px;padding:0 10px}.micro-workflow>div>button{color:#fff;background:#f47a00;border:0;border-radius:2px;height:34px;margin-top:16px;padding:0 17px}.micro-workflow p{color:#9aa0aa;font-size:12px}.notice-list article{border-bottom:1px solid #edf0f3;grid-template-columns:38px 1fr 100px 55px;align-items:center;gap:12px;min-height:72px;padding:0 18px;display:grid}.notice-list article>span{color:#f47a00;background:#fff2e5;border-radius:3px;place-items:center;width:34px;height:34px;display:grid}.notice-list strong{color:#3b424e;font-weight:500}.notice-list p{color:#999fa9;margin:5px 0 0;font-size:12px}.notice-list time{color:#9aa0aa;font-size:12px}.notice-list article>button{color:#3d83c5;background:0 0;border:0}@media (max-width:1023px){.integration-grid{grid-template-columns:repeat(2,minmax(250px,1fr))}.attendance-device{grid-template-columns:120px 1fr}.consumption-analysis{grid-template-columns:1fr}.consumption-ranking{border-top:1px solid #edf0f3;border-left:0}}@media (max-width:767px){.integration-overview,.operational-context{flex-direction:column;align-items:flex-start}.integration-overview nav,.operational-context nav{justify-content:flex-start}.priority-tabs{gap:13px;overflow-x:auto}.priority-tabs>button{flex:none}.priority-tabs .priority-link{margin-left:0}.integration-modal label,.notice-form label,.operational-create-form label,.template-edit-body label{grid-template-columns:1fr;gap:6px}.integration-modal>div>p,.template-channel-row,.template-edit-body>p{margin-left:0}.template-channel-row{flex-wrap:wrap}.attendance-toolbar,.clock-filters,.consumption-filter,.consumption-filter>div{flex-direction:column;align-items:stretch}.attendance-toolbar input,.attendance-toolbar select,.clock-filters input,.consumption-filter input,.consumption-filter select{width:100%}.clock-create-modal fieldset{flex-wrap:wrap}.attendance-device{grid-template-columns:1fr;gap:8px}.attendance-device__visual{border-bottom:1px solid #eff1f4;border-right:0;min-height:105px}.attendance-option{align-items:flex-start;padding:12px 0}.voice-config{grid-template-columns:1fr}.voice-config h3,.voice-config small{grid-column:auto}.voice-config label{grid-template-columns:1fr;gap:5px}.time-range{grid-template-columns:1fr 1fr 20px 1fr}.attendance-summary,.consumption-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.integration-grid{grid-template-columns:1fr}.micro-banner{min-height:92px}.micro-workflow{padding:20px 15px 30px}.micro-workflow li{padding:39px 7px 0;font-size:11px}.micro-logos img{width:72px;height:72px}.micro-workflow label{grid-template-columns:1fr;gap:7px}.notice-list article{grid-template-columns:35px 1fr 50px;padding:10px}.notice-list time{display:none}.notice-list article>button{grid-column:3}.consumption-analysis{grid-template-columns:1fr}.consumption-chart{min-height:300px;padding:10px}}.quick-roll-grid{grid-template-columns:repeat(3,minmax(250px,1fr));gap:14px;padding:18px;display:grid}.quick-roll-grid article{background:#fff;border:1px solid #e7e9ed;border-radius:3px;padding:16px;transition:border-color .16s,box-shadow .16s}.quick-roll-grid article:hover{border-color:#f5b170;box-shadow:0 5px 16px #2d32410f}.quick-roll-grid header{justify-content:space-between;align-items:flex-start;display:flex}.quick-roll-grid header>div{flex-direction:column;gap:4px;display:flex}.quick-roll-grid header strong{color:#343b47;font-size:14px}.quick-roll-grid header span{color:#979da7;font-size:12px}.quick-roll-grid header em{color:#e8942e;font-size:12px;font-style:normal}.quick-roll-grid dl{grid-template-columns:repeat(3,1fr);margin:17px 0;display:grid}.quick-roll-grid dl>div{border-right:1px solid #edf0f3}.quick-roll-grid dl>div:last-child{border:0}.quick-roll-grid dt{color:#9ba1aa;font-size:11px}.quick-roll-grid dd{color:#555c68;margin:4px 0 0;font-size:12px}.quick-roll-progress{color:#8b919c;align-items:center;gap:9px;margin-bottom:12px;font-size:11px;display:flex}.quick-roll-progress i{background:#edf0f3;border-radius:3px;flex:1;height:5px;display:block}.quick-roll-progress b{border-radius:inherit;background:#1aa47c;height:100%;display:block}.quick-roll-grid article>button{color:#fff;background:#f47a00;border:1px solid #f47a00;border-radius:2px;justify-content:center;align-items:center;gap:5px;width:100%;height:32px;display:flex}.quick-roll-grid article>button.done{color:#159b75;background:#f2faf8;border-color:#bde1d7}.one-attendance-table{overflow-x:auto}.one-attendance-row{color:#68707c;border-bottom:1px solid #edf0f3;grid-template-columns:1fr 1.2fr 1fr 1fr .9fr .8fr .8fr 1.15fr;align-items:center;min-width:960px;min-height:49px;font-size:12px;display:grid}.one-attendance-row.head{color:#8d939e;background:#fafbfc;min-height:40px}.one-attendance-row:hover:not(.head){background:#fffaf4}.one-attendance-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 11px;overflow:hidden}.one-attendance-row strong{color:#3e4551;font-weight:500}.one-attendance-row em{color:#e89025;font-style:normal}.one-attendance-row em.success{color:#159b75}@media (max-width:1023px){.quick-roll-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media (max-width:767px){.quick-roll-grid{grid-template-columns:1fr;padding:10px}}.template-category-grid{grid-template-columns:repeat(3,minmax(250px,1fr));gap:12px;padding:18px;display:grid}.template-category-grid article{border:1px solid #e8eaee;border-radius:3px;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;min-height:128px;padding:16px;display:grid}.template-category-grid article>span{color:#f47a00;background:#fff2e5;border-radius:3px;place-items:center;width:40px;height:40px;display:grid}.template-category-grid strong{color:#363d49;font-weight:500}.template-category-grid p{color:#9096a0;margin:6px 0;font-size:12px;line-height:1.5}.template-category-grid small{color:#a0a5ae}.template-category-grid button{color:#f47a00;background:#fff;border:1px solid #f47a00;border-radius:2px;height:30px;padding:0 10px}.wecom-forward-panel{max-width:900px;padding:24px 30px 35px}.wecom-forward-panel h2{color:#343b47;margin:0;font-size:16px;font-weight:500}.wecom-forward-panel>p{color:#949aa4}.wecom-forward-panel .settings-row{padding-inline:2px}.wecom-forward-panel>label{color:#69707c;grid-template-columns:100px 1fr;align-items:center;max-width:520px;margin-top:20px;display:grid}.wecom-forward-panel select{color:#5f6673;background:#fff;border:1px solid #dfe2e7;height:34px;padding:0 10px}.wecom-forward-panel>button{color:#fff;background:#f47a00;border:0;border-radius:2px;height:34px;margin:20px 0 0 100px;padding:0 16px}.notice-detail{padding:23px 26px 26px}.notice-detail h3{color:#323946;margin:0 0 17px;font-size:16px;font-weight:500}.notice-detail p{color:#9298a3;margin:6px 0;font-size:12px}.notice-detail>div{color:#626976;border-top:1px solid #edf0f3;min-height:95px;margin-top:17px;padding-top:16px;line-height:1.8}.notice-detail>button{color:#fff;background:#f47a00;border:0;border-radius:2px;height:33px;margin-left:auto;padding:0 15px;display:block}.ai-detail-panel{margin-top:12px;overflow-x:auto}@media (max-width:1023px){.template-category-grid{grid-template-columns:repeat(2,minmax(250px,1fr))}}@media (max-width:767px){.template-category-grid{grid-template-columns:1fr;padding:10px}.template-category-grid article{grid-template-columns:40px 1fr}.template-category-grid article>button{grid-column:2;justify-self:start}.wecom-forward-panel{padding:20px 17px 28px}.wecom-forward-panel>label{grid-template-columns:1fr;gap:7px}.wecom-forward-panel>button{margin-left:0}}.module-page.frontdesk-workbench-page{background:var(--fd-canvas,#eff0f8);padding:10px}.workbench-overview{grid-template-columns:minmax(650px,3fr) minmax(320px,1.15fr);gap:2px;display:grid}.workbench-appointments,.workbench-customer-panel,.workbench-shortcuts{border:1px solid var(--fd-border,#e5e8ed);background:var(--fd-panel,#fff);border-radius:3px}.workbench-appointments,.workbench-customer-panel,.workbench-overview,.workbench-shortcuts{min-width:0}.workbench-appointments>header{border-bottom:1px solid #eceef2;justify-content:space-between;align-items:center;min-height:58px;padding:0 20px;display:flex}.workbench-appointments>header nav{align-items:center;gap:21px;height:58px;display:flex}.workbench-appointments>header strong{color:#242a35;font-size:14px;font-weight:500}.workbench-appointments>header button{color:#626976;background:0 0;border:0;border-bottom:2px solid #0000;height:58px;padding:0 3px}.workbench-appointments>header button.active{color:#f47a00;border-color:#f47a00}.workbench-appointments>header time{color:#9ca1aa;font-size:12px}.appointment-table{min-height:178px}.appointment-row{color:#666d79;text-align:left;background:#fff;border:0;border-bottom:1px solid #eceef2;grid-template-columns:1.15fr .95fr .8fr .95fr .95fr .95fr .95fr .85fr;align-items:center;width:100%;min-width:790px;min-height:47px;padding:0 20px;display:grid}.appointment-row.head{color:#7f858f;background:#fafafa;min-height:43px}button.appointment-row:hover{background:#fff8f0}.appointment-empty{color:#999;place-items:center;min-height:150px;display:grid}.workbench-shortcuts{grid-template-columns:repeat(2,1fr);min-height:238px;display:grid}.workbench-shortcuts button{color:#59606d;background:#fff;border:1px solid #e8eaee;border-top:0;border-left:0;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:118px;transition:color .16s,background .16s;display:flex}.workbench-shortcuts button:nth-child(2n){border-right:0}.workbench-shortcuts button:hover{color:#f47a00;background:#fffaf5}.workbench-shortcuts svg{color:#f0a046;width:26px;height:26px}.workbench-shortcuts button:first-child svg{color:#53a8e9}.workbench-shortcuts button:nth-child(2) svg{color:#49b78b}.workbench-shortcuts button:nth-child(3) svg{color:#ed7e78}.workbench-shortcuts span{font-size:14px;line-height:20px}.workbench-customer-panel{margin-top:12px}.workbench-customer-panel>header{border-bottom:1px solid #eceef2;justify-content:space-between;align-items:center;min-height:59px;padding:0 20px;display:flex}.workbench-customer-panel h2{color:#272d38;margin:0;font-size:14px;font-weight:500}.workbench-customer-tools{align-items:center;gap:10px;display:flex}.workbench-customer-tools>button{color:#7f858f;background:0 0;border:0;align-items:center;gap:5px;height:33px;padding:0 8px;display:inline-flex}.workbench-customer-tools>button:hover{color:#f47a00}.workbench-column-picker{position:relative}.workbench-column-picker>button{color:#7f858f;background:0 0;border:0;align-items:center;gap:5px;height:33px;padding:0 8px;display:inline-flex}.workbench-column-picker>button:hover{color:#f47a00}.workbench-column-picker>div{z-index:20;background:#fff;border:1px solid #dfe3e8;grid-template-columns:1fr 1fr;width:220px;padding:9px;display:grid;position:absolute;top:38px;right:0;box-shadow:0 12px 28px #1f293729}.workbench-column-picker label{color:#555d69;align-items:center;gap:6px;min-height:31px;font-size:12px;display:flex}.workbench-column-picker label input{accent-color:#f47a00;flex:none;width:14px}.workbench-column-picker label small{color:#aaa;font-size:10px}.workbench-customer-tools label{color:#a1a6ae;border:1px solid #dfe2e7;border-radius:2px;align-items:center;gap:7px;width:250px;height:34px;padding:0 10px;display:flex}.workbench-customer-tools input{color:#5e6571;border:0;outline:0;flex:1;min-width:0}.workbench-more-filters{background:#fafbfc;border-bottom:1px solid #eceef2;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px;padding:14px 20px;display:grid}.workbench-more-filters label{color:#68717d;flex-direction:column;gap:5px;min-width:0;font-size:12px;display:flex}.workbench-more-filters input,.workbench-more-filters select{color:#4e5662;background:#fff;border:1px solid #dfe3e8;min-width:0;height:33px;padding:0 9px}.workbench-more-filters .workbench-remember{flex-direction:row;align-items:center}.workbench-more-filters .workbench-remember input{accent-color:#f47a00;width:14px;height:14px}.workbench-more-filters>div{align-items:flex-end;gap:8px;display:flex}.workbench-more-filters>div button{color:#59616d;background:#fff;border:1px solid #dfe3e8;height:33px;padding:0 15px}.workbench-more-filters>div button:first-child{color:#fff;background:#f47a00;border-color:#f47a00}.workbench-customer-scroll{padding-bottom:76px;overflow-x:auto}.workbench-customer-table{min-width:1240px}.workbench-customer-row{color:#525965;background:#fff;border-bottom:1px solid #eceef2;align-items:center;min-height:62px;padding:0 24px;font-size:14px;line-height:22px;display:grid}.workbench-customer-row.head{color:#737a86;background:#fafafa;min-height:50px;font-size:14px}.workbench-sort{color:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.workbench-customer-row:hover:not(.head){background:#fffaf5}.workbench-customer-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding-right:8px;overflow:hidden}.workbench-customer-row a{color:#4285e4}.workbench-customer-row .customer-name{color:#333a46;text-align:left;background:0 0;border:0}.workbench-customer-row .customer-name:hover{color:#f47a00}.workbench-customer-row>.workbench-actions-heading,.workbench-customer-row>.workbench-row-actions{background:#fff;width:190px;min-width:190px;padding-right:0;position:sticky;right:0;box-shadow:-7px 0 9px -9px #1f2937b3}.workbench-customer-row>.workbench-actions-heading{z-index:5;background:#fafafa;align-self:stretch;align-items:center;display:flex}.workbench-customer-row>.workbench-row-actions{z-index:4;display:flex;overflow:visible}.workbench-customer-row:hover:not(.head) .workbench-row-actions{background:#fffaf5}.workbench-row-actions button{color:#4285e4;background:0 0;border:0;padding:5px 7px;font-size:14px}.workbench-row-actions button:hover{color:#f47a00}.workbench-pagination{color:#737a86;justify-content:flex-end;align-items:center;gap:12px;min-width:900px;min-height:72px;padding:0 24px;font-size:14px;display:flex}.workbench-pagination button{background:#fff;border:1px solid #e2e4e8;border-radius:2px;width:34px;height:34px;font-size:16px}.workbench-pagination button:disabled{color:#bec2c8}.workbench-pagination b{color:#4c535f;border:1px solid #e6e8eb;place-items:center;width:28px;height:28px;font-weight:400;display:inline-grid}.workbench-pagination select{color:#69707b;background:#fff;border:1px solid #e0e3e8;border-radius:15px;height:36px;padding:0 12px;font-size:14px}.workbench-pagination strong{color:#4d5460;margin-left:auto;font-weight:400}.module-detail-drawer.workbench-customer-drawer{width:min(535px,96vw)}.customer-detail-summary{border-bottom:1px solid #eceef2;align-items:center;gap:12px;margin:18px 22px 0;padding:0 0 16px;display:flex}.customer-detail-summary>span{color:#fff;background:#f47a00;border-radius:4px;place-items:center;width:42px;height:42px;font-size:18px;display:grid}.customer-detail-summary strong{color:#303642;font-size:15px;font-weight:500}.customer-detail-summary p{color:#969ca6;margin:3px 0 0;font-size:12px}.workbench-customer-drawer dl{max-height:calc(100dvh - 205px);overflow-y:auto}.module-detail-drawer footer button.primary{color:#fff;background:#f47a00;border-color:#f47a00}.module-modal.workbench-modal{width:min(600px,95vw)}.workbench-appointment-form{padding:25px 30px}.module-modal.new-customer-modal{width:min(880px,95vw);max-height:min(888px,94dvh);overflow:hidden}.workbench-customer-form{gap:12px;max-height:calc(min(888px,94dvh) - 60px);padding:18px 28px 24px;overflow-y:auto}.workbench-form-section{border:1px solid #e8ebef;gap:13px;margin:0;padding:12px 14px 15px;display:grid}.workbench-form-section legend{color:#323a47;padding:0 7px;font-size:14px;font-weight:500}.workbench-customer-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 22px;display:grid}.workbench-customer-form-grid label{color:#5f6672;grid-template-columns:112px minmax(0,1fr);align-items:center;min-width:0;display:grid}.workbench-customer-form-grid label>span{text-align:right;padding-right:12px}.workbench-customer-form-grid label.wide{grid-column:1/-1;align-items:start}.workbench-customer-form-grid input,.workbench-customer-form-grid select,.workbench-customer-form-grid textarea{color:#434b57;background:#fff;border:1px solid #dfe3e8;border-radius:2px;outline:0;width:100%;min-width:0}.workbench-customer-form-grid input,.workbench-customer-form-grid select{height:35px;padding:0 10px}.workbench-customer-form-grid textarea{resize:vertical;min-height:76px;padding:9px 10px}.workbench-customer-form-grid input:focus,.workbench-customer-form-grid select:focus,.workbench-customer-form-grid textarea:focus{border-color:#f47a00;box-shadow:0 0 0 2px #f47a0017}.workbench-customer-form>footer{z-index:3;background:#fff;border-top:1px solid #e8ebef;margin:0 -28px -24px;padding:14px 28px;position:sticky;bottom:-24px}.workbench-form-error{color:#c9453c;background:#fff7f6;border:1px solid #f1b9b5;border-radius:2px;gap:4px;margin:2px 0 0;padding:9px 12px;display:grid}.workbench-form-error strong{font-weight:500}.workbench-form-error span{color:#8c625f;font-size:12px}.workbench-form-error.duplicate{color:#b65d00;background:#fff8ee;border-color:#f4c58d}.workbench-duplicate-actions{justify-content:flex-end;gap:8px;display:flex}.workbench-duplicate-actions button{color:#555d69;background:#fff;border:1px solid #dfe3e8;height:34px;padding:0 17px}.workbench-duplicate-actions button.primary{color:#fff;background:#f47a00;border-color:#f47a00}.module-modal.receipt-modal{width:min(820px,95vw)}.workbench-receipt-search{gap:8px;padding:18px 22px 10px;display:flex}.workbench-receipt-search label{color:#999;border:1px solid #dfe3e8;flex:1;align-items:center;gap:7px;min-width:0;height:34px;padding:0 9px;display:flex}.workbench-receipt-search input{border:0;outline:0;flex:1;min-width:0}.workbench-receipt-search button{color:#fff;background:#f47a00;border:1px solid #f47a00;padding:0 18px}.workbench-receipt-list{border-top:1px solid #eceef2;border-bottom:1px solid #eceef2;max-height:330px;overflow-y:auto}.workbench-receipt-list>button{color:#4b5360;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0f3;grid-template-columns:1.2fr 1fr .8fr;gap:12px;width:100%;padding:11px 22px;display:grid}.workbench-receipt-list>button.selected,.workbench-receipt-list>button:hover{background:#fff7ed}.workbench-receipt-list>button>span{min-width:0}.workbench-receipt-list small,.workbench-receipt-list strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.workbench-receipt-list small{color:#8b929d;margin-top:3px}.workbench-receipt-list input{accent-color:#f47a00;margin:0 6px 0 0}.workbench-receipt-summary{background:#f7f8fa;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 22px 0;padding:12px 14px;display:grid}.workbench-receipt-summary span{color:#858d99;flex-direction:column;gap:4px;display:flex}.workbench-receipt-summary b{color:#3f4754}.workbench-receipt-summary strong{color:#e86c00}.workbench-transfer-form{padding:22px 26px 0}.workbench-transfer-current{background:#f7f8fa;grid-template-columns:90px 1fr;gap:8px;margin-bottom:16px;padding:13px;display:grid}.workbench-transfer-current span{color:#8a919c}.workbench-transfer-current strong{color:#3e4652}.workbench-transfer-form textarea{resize:vertical;min-height:76px}.workbench-transfer-form>p{color:#9097a2;margin:12px 0;font-size:12px}.receipt-sheet{border:1px solid #eceef2;margin:22px 28px 0;padding:22px}.receipt-brand{border-bottom:1px dashed #dfe2e7;align-items:center;gap:12px;padding-bottom:16px;display:flex}.receipt-brand>span{color:#fff;background:#f47a00;border-radius:6px;place-items:center;width:38px;height:38px;font-weight:700;display:grid}.receipt-brand small,.receipt-brand strong{display:block}.receipt-brand strong{color:#303642;font-size:15px}.receipt-brand small{color:#999fa9;margin-top:3px}.receipt-sheet dl{margin:14px 0 0}.receipt-sheet dl>div{grid-template-columns:90px 1fr;align-items:center;min-height:34px;display:grid}.receipt-sheet dt{color:#979da7}.receipt-sheet dd{color:#454c58;margin:0}.receipt-actions{justify-content:flex-end;align-items:center;gap:8px;min-height:65px;padding:0 28px;display:flex}.receipt-actions :is(button,.print-navigation-link){background:#fff;border:1px solid #dfe2e7;border-radius:2px;align-items:center;gap:6px;height:33px;padding:0 16px;display:inline-flex}.receipt-actions :is(button,.print-navigation-link):last-child{color:#fff;background:#f47a00;border-color:#f47a00}.module-page.quick-roll-call-page{grid-template-columns:360px minmax(0,1fr);gap:6px;min-height:calc(100dvh - 78px);padding:10px;display:grid}.roll-schedule-pane,.roll-student-pane{background:#fff;min-width:0}.roll-student-pane{flex-direction:column;min-height:710px;display:flex}.roll-student-pane>header{height:56px;padding:0 30px}.roll-student-pane h1{color:#f47a00;border-bottom:2px solid #f47a00;align-items:center;height:56px;margin:0;font-size:15px;font-weight:500;display:inline-flex}.roll-student-toolbar{border-top:1px solid #eceef2;border-bottom:1px solid #eceef2;grid-template-columns:86px minmax(0,1fr) 50px;align-items:center;min-height:53px;padding:0 15px;display:grid}.roll-student-toolbar strong{color:#373e4a;font-weight:500}.roll-student-toolbar label{color:#a2a7af;border:1px solid #e0e3e8;border-radius:2px;align-items:center;gap:6px;height:33px;padding:0 8px;display:flex}.roll-student-toolbar input{border:0;outline:none;flex:1;min-width:0}.roll-student-toolbar button{color:#a0a5ad;background:0 0;border:0;align-items:center;display:inline-flex}.roll-selected{border-bottom:1px solid #eceef2;padding:10px 15px}.roll-selected>div{color:#727985;justify-content:space-between;display:flex}.roll-selected>div button{color:#f47a00;background:0 0;border:0}.roll-selected section{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.roll-selected section button{color:#d86d04;background:#fff8f0;border:1px solid #f47a00;border-radius:2px;align-items:center;gap:4px;height:27px;padding:0 8px;display:inline-flex}.roll-student-list{max-height:545px;overflow-y:auto}.roll-student-list>label{color:#444b57;cursor:pointer;border-bottom:1px solid #eceef2;grid-template-columns:22px 82px minmax(120px,1fr) 70px;align-items:center;min-height:51px;padding:0 14px;display:grid}.roll-student-list>label.selected,.roll-student-list>label:hover{background:#fff8f0}.fee-table input[type=checkbox],.roll-student-list input{accent-color:#f47a00;width:15px;height:15px}.roll-student-list span{min-width:0}.roll-student-list small,.roll-student-list strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.roll-student-list strong{font-weight:400}.roll-student-list small{color:#7e8590;font-size:10px}.roll-student-list em{color:#333a46;white-space:nowrap;font-style:normal}.roll-student-list em i{color:#fff;background:#ad7bd7;border-radius:2px;margin-left:4px;padding:0 3px;font-size:10px;font-style:normal}.roll-student-pane>footer{border-top:1px solid #eceef2;justify-content:center;align-items:center;gap:8px;min-height:53px;margin-top:auto;display:flex}.roll-student-pane>footer button{color:#c4c7cc;background:#fff;border:1px solid #eceef2;width:29px;height:27px}.roll-student-pane>footer b{border:1px solid #e2e5e9;place-items:center;width:23px;height:23px;font-weight:400;display:inline-grid}.roll-schedule-pane{min-height:710px;overflow:hidden}.roll-schedule-header{border-bottom:1px solid #eceef2;justify-content:space-between;align-items:center;min-height:56px;padding:0 18px;display:flex}.roll-schedule-header nav{gap:25px;height:56px;display:flex}.roll-schedule-header nav button{color:#505764;background:0 0;border:0;border-bottom:2px solid #0000}.roll-schedule-header nav button.active{color:#f47a00;border-color:#f47a00}.roll-schedule-header>div{align-items:center;gap:12px;display:flex}.roll-add-class{color:#f47a00;background:0 0;border:0;align-items:center;gap:5px;display:inline-flex}.roll-schedule-header label{color:#a0a5ae;border:1px solid #dfe2e7;align-items:center;gap:7px;width:min(310px,27vw);height:33px;padding:0 9px;display:flex}.roll-schedule-header input{border:0;outline:0;flex:1;min-width:0}.roll-toast{margin:0}.roll-schedule-options{justify-content:space-between;align-items:center;min-height:50px;padding:0 18px;display:flex}.roll-schedule-options fieldset{border:0;gap:24px;margin:0;padding:0;display:flex}.roll-schedule-options label{align-items:center;gap:6px;display:inline-flex}.roll-schedule-options input{accent-color:#f47a00}.roll-schedule-options>div{gap:18px;display:flex}.roll-schedule-options>div span{color:#636a76;align-items:center;gap:8px;display:inline-flex}.roll-schedule-options i{background:#67ade0;width:14px;height:6px}.roll-schedule-options i.done{background:#aa86d1}.roll-date-controls{justify-content:center;align-items:center;gap:9px;min-height:58px;display:flex}.roll-date-controls button{color:#9298a2;background:#fff;border:1px solid #e0e3e7;border-radius:2px;justify-content:center;align-items:center;height:32px;display:inline-flex}.roll-date-controls button:not(.date){width:39px}.roll-date-controls .date{color:#3f4652;gap:13px;min-width:136px}.roll-timeline-scroll{overflow-x:auto}.roll-timeline{border-top:1px solid #eceef2;min-width:1410px;position:relative}.roll-teacher-row,.roll-time-axis{grid-template-columns:120px repeat(8,160px);display:grid}.roll-time-axis{background:#fafafa;align-items:center;min-height:40px}.roll-time-axis time{color:#333a46;text-align:center}.roll-teacher-row{min-height:80px;position:relative}.roll-teacher-row>strong{color:#333a46;place-items:center;font-weight:500;display:grid}.roll-teacher-row>i,.roll-teacher-row>strong{border-bottom:1px solid #e1e4e8;border-right:1px solid #e1e4e8}.roll-empty-slot,.roll-schedule-block{z-index:2;text-align:left;border-radius:2px;grid-row:1;align-self:stretch;margin:3px}.roll-schedule-block{color:#fff;background:#65ace0;border:0;flex-direction:column;justify-content:center;padding:0 10px;display:flex;box-shadow:0 2px 5px #3074a833}.roll-schedule-block:hover{filter:brightness(.97)}.roll-schedule-block.completed{background:#a986d0}.roll-schedule-block span,.roll-schedule-block strong{display:block}.roll-schedule-block strong{font-weight:500}.roll-schedule-block em{opacity:.85;font-size:10px;font-style:normal;position:absolute;top:6px;right:8px}.roll-empty-slot{color:#f47a00;text-align:center;background:#fffaf5;border:1px dashed #f47a00;justify-content:center;align-items:center;gap:5px;display:flex}.roll-empty-slot:hover{background:#fff2e4}.roll-empty-slot,.roll-schedule-block:nth-of-type(n){position:relative}.module-modal.schedule-create-modal{width:min(800px,100vw - 36px)}.schedule-create-modal form{padding:20px 20px 0}.schedule-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 28px;padding:0 8px 20px;display:grid}.schedule-form-grid label{color:#555c68;grid-template-columns:94px minmax(0,1fr) auto;align-items:center;display:grid;position:relative}.schedule-form-grid label.wide{grid-column:1/-1;grid-template-columns:94px 250px auto 1fr}.schedule-date-row label>span,.schedule-form-grid label>span{text-align:right;padding-right:12px}.schedule-date-row i,.schedule-form-grid i{color:#ef5f59;font-style:normal}.schedule-date-row input,.schedule-form-grid input,.schedule-form-grid select{color:#555c68;background:#fff;border:1px solid #dfe2e7;border-radius:2px;outline:0;height:33px;padding:0 10px}.schedule-form-grid label:nth-child(2) input,.schedule-form-grid label:nth-child(4) input{background:#f1f2f4}.schedule-form-grid button{color:#f47a00;background:0 0;border:0;align-items:center;gap:5px;height:32px;padding:0 10px;display:inline-flex}.schedule-form-grid small{color:#a1a6ae;grid-column:2/-1;margin-top:7px}.schedule-date-row{border-top:1px solid #eceef2;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:20px 8px 36px;display:grid}.schedule-date-row label{grid-template-columns:94px minmax(0,1fr) auto;align-items:center;display:grid}.schedule-date-row button{color:#f47a00;background:0 0;border:0;padding-left:13px}.class-fee-modal form>footer,.schedule-create-modal form>footer{border-top:1px solid #eceef2;justify-content:flex-end;align-items:center;gap:9px;min-height:65px;display:flex}.class-fee-modal form>footer button,.schedule-create-modal form>footer button{background:#fff;border:1px solid #dfe2e7;border-radius:2px;min-width:70px;height:33px;padding:0 15px}.class-fee-modal form>footer button[type=submit],.schedule-create-modal form>footer button[type=submit]{color:#fff;background:#f47a00;border-color:#f47a00}.module-modal.class-fee-modal{width:min(1000px,100vw - 36px)}.fee-summary{color:#555c68;white-space:nowrap;align-items:center;gap:25px;min-height:60px;padding:0 12px;display:flex}.fee-summary strong{color:#343b47;font-weight:500}.fee-table-scroll{overflow-x:auto}.fee-table{min-width:970px}.fee-row{color:#505764;border-bottom:1px solid #e7e9ed;grid-template-columns:34px 95px 94px 150px 135px 138px 80px 96px 94px 43px;align-items:center;min-height:51px;padding:0 10px;display:grid}.fee-row.head{background:#fafafa;min-height:50px}.fee-row.selected{background:#fff3e5}.fee-row>*{min-width:0}.fee-row strong{color:#424955;font-weight:400}.fee-row select,.fee-row>input{color:#555c68;background:#fff;border:1px solid #dfe2e7;border-radius:2px;height:33px;padding:0 8px}.fee-row fieldset{border:0;gap:8px;margin:0;padding:0;display:flex}.fee-row fieldset label{white-space:nowrap;align-items:center;gap:3px;display:inline-flex}.fee-row fieldset input{accent-color:#f47a00}.fee-row>button{color:#a7acb4;background:0 0;border:0;place-items:center;width:28px;height:28px;display:grid}.fee-add-students{border-bottom:1px solid #eceef2;align-items:flex-end;gap:14px;min-height:180px;padding:0 10px 18px;display:flex}.fee-add-students button{color:#f47a00;background:0 0;border:0;align-items:center;gap:4px;display:inline-flex}.class-fee-modal form>footer{padding:0 20px}.class-fee-modal form>footer .danger{color:#ef5f59;border-color:#ef7771}.class-fee-modal form>footer button:disabled{cursor:not-allowed;opacity:.45}@media (max-width:1180px){.workbench-overview{grid-template-columns:minmax(570px,2fr) minmax(280px,1fr)}.quick-roll-call-page{grid-template-columns:320px minmax(0,1fr)}.roll-student-list>label{grid-template-columns:22px 74px minmax(100px,1fr) 62px}}@media (max-width:900px){.workbench-overview{grid-template-columns:1fr}.workbench-shortcuts{min-height:210px}.workbench-shortcuts button{min-height:104px}.workbench-more-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.module-page.quick-roll-call-page{grid-template-columns:1fr}.roll-student-pane{min-height:480px}.roll-student-list{max-height:330px}}@media (max-width:767px){.module-page.frontdesk-workbench-page,.module-page.quick-roll-call-page{padding:8px}.workbench-appointments{overflow-x:auto}.workbench-appointments>header{min-width:790px}.workbench-customer-panel>header{flex-direction:column;align-items:flex-start;padding-block:12px}.workbench-customer-tools{flex-wrap:wrap;width:100%}.workbench-customer-tools label{order:-1;width:100%}.workbench-more-filters{grid-template-columns:1fr}.workbench-column-picker>div{width:auto;position:fixed;top:120px;left:12px;right:12px}.workbench-customer-scroll{padding:12px 12px 20px;overflow:visible}.workbench-customer-table{width:100%;min-width:0!important}.workbench-customer-row.head{display:none}.workbench-customer-row:not(.head){background:#fff;border:1px solid #e3e6eb;border-radius:4px;grid-template-areas:"name status""phone status""actions actions";gap:9px 14px;min-height:0;margin-bottom:10px;padding:17px 16px 13px;grid-template-columns:minmax(0,1fr) auto!important;display:grid!important}.workbench-customer-row:not(.head)>*{padding-right:0;display:none}.workbench-customer-row:not(.head)>[data-column=name]{grid-area:name;font-size:16px;font-weight:500;display:block}.workbench-customer-row:not(.head)>[data-column=phone]{grid-area:phone;font-size:14px;display:block}.workbench-customer-row:not(.head)>[data-column=status]{color:#667085;grid-area:status;align-self:center;font-size:14px;display:block}.workbench-customer-row:not(.head)>[data-column=actions]{box-shadow:none;background:0 0;border-top:1px solid #edf0f3;grid-area:actions;justify-content:flex-end;padding-top:8px;display:flex;position:static}.workbench-customer-row:not(.head)>[data-column=actions] button{min-height:38px;padding-inline:11px;font-size:14px}.workbench-receipt-list>button{grid-template-columns:1fr}.workbench-receipt-summary{grid-template-columns:repeat(2,1fr)}.workbench-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.workbench-pagination{justify-content:flex-start;min-width:0;overflow-x:auto}.workbench-pagination strong{margin-left:6px}.workbench-customer-drawer dl{max-height:calc(100dvh - 245px)}.module-modal.workbench-modal{max-height:92dvh;overflow-y:auto}.workbench-customer-form{padding:18px 16px 20px}.workbench-form-section{padding:11px 10px 13px}.workbench-customer-form-grid{grid-template-columns:1fr;gap:12px}.workbench-customer-form-grid label,.workbench-customer-form-grid label.wide{grid-column:auto;grid-template-columns:1fr;gap:5px}.workbench-customer-form-grid label>span{text-align:left;padding-right:0}.workbench-customer-form>footer{margin:0 -16px -20px;padding:12px 16px;bottom:-20px}.workbench-duplicate-actions{background:#fff;padding-top:8px;position:sticky;bottom:0}.module-page.quick-roll-call-page{gap:8px}.roll-schedule-pane,.roll-student-pane{min-height:auto}.roll-schedule-pane{min-height:520px}.roll-schedule-header{flex-direction:column;align-items:stretch;padding:0 12px 10px}.roll-schedule-header>div{justify-content:space-between}.roll-schedule-header label{width:min(250px,70vw)}.roll-schedule-options{flex-direction:column;align-items:flex-start;gap:12px;padding-block:12px}.roll-date-controls{justify-content:flex-start;padding-left:18px}.class-fee-modal,.schedule-create-modal{max-height:94dvh;overflow-y:auto}.schedule-date-row,.schedule-form-grid{grid-template-columns:1fr}.schedule-form-grid label.wide{grid-column:auto;grid-template-columns:92px minmax(0,1fr) auto}.schedule-form-grid label.wide small{grid-column:2/-1}.schedule-form-grid label.wide button{grid-column:2;justify-self:start}.fee-summary{flex-direction:column;align-items:flex-start;gap:7px;padding-block:14px}.fee-add-students{min-height:100px}.class-fee-modal form>footer,.schedule-create-modal form>footer{z-index:2;background:#fff;padding-right:14px;position:sticky;bottom:0}}@media print{body *{visibility:hidden}.print-page,.print-page *,.receipt-sheet,.receipt-sheet *{visibility:visible}.receipt-sheet{border:1px solid #bbb;margin:0;position:fixed;inset:20mm}}.operational-page-v2{position:relative}.operational-page-v2 .module-page__heading{align-items:center}.module-view-badge{color:#e87300;background:#fff8ef;border:1px solid #ffd6aa;border-radius:4px;align-items:center;gap:6px;height:30px;padding:0 10px;font-size:12px;display:inline-flex}.module-search{align-items:center;display:flex;position:relative}.module-search svg{color:#9aa3af;pointer-events:none;position:absolute;left:10px}.module-search input{padding-left:32px!important}.module-advanced-filter{background:#fff;border:1px solid #e7e9ed;align-items:flex-end;gap:16px;margin:-4px 0 10px;padding:14px 16px;display:flex}.module-advanced-filter label{color:#667085;gap:6px;min-width:180px;font-size:12px;display:grid}.module-advanced-filter input,.module-advanced-filter select{color:#344054;background:#fff;border:1px solid #dfe3e8;border-radius:3px;height:34px;padding:0 9px}.module-advanced-filter button{color:#fff;background:#ff8a16;border:0;border-radius:3px;height:34px;padding:0 15px}.module-column-settings{z-index:10;background:#fff;border:1px solid #e0e4e9;border-radius:4px;grid-template-columns:repeat(2,minmax(110px,1fr));gap:9px 14px;width:min(390px,100vw - 40px);padding:15px;display:grid;position:absolute;top:55px;right:15px;box-shadow:0 9px 26px #10182824}.module-column-settings strong{color:#101828;grid-column:1/-1}.module-column-settings label{color:#475467;align-items:center;gap:7px;font-size:12px;display:flex}.module-error{color:#c4322d;background:#fff3f2;border-block:1px solid #ffd7d5;justify-content:center;align-items:center;gap:12px;min-height:42px;padding:8px 16px;display:flex}.module-error button{color:#c4322d;background:0 0;border:0;text-decoration:underline}.module-empty,.module-loading{color:#98a2b3;justify-content:center;align-items:center;gap:9px;min-height:330px;display:flex}.module-loading svg{animation:module-spin .9s linear infinite}@keyframes module-spin{to{transform:rotate(1turn)}}.module-ledger-summary,.module-report-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 16px 4px;display:grid}.module-ledger-summary article,.module-report-summary article{background:#fff;border:1px solid #e8ebef;border-radius:6px;gap:5px;min-height:88px;padding:14px 16px;display:grid}.module-ledger-summary span,.module-report-summary span{color:#667085;font-size:12px}.module-ledger-summary strong,.module-report-summary strong{color:#101828;font-size:23px;line-height:1}.module-report-summary small{color:#98a2b3}.module-report-bars{background:#fbfcfd;border:1px solid #e8ebef;gap:12px;margin:12px 16px 16px;padding:18px 18px 14px;display:grid}.module-report-bars button{color:#475467;text-align:left;background:0 0;border:0;grid-template-columns:190px minmax(100px,1fr) 54px;align-items:center;gap:12px;min-height:27px;display:grid}.module-report-bars button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.module-report-bars i{background:#edf0f4;border-radius:2px;height:13px;position:relative;overflow:hidden}.module-report-bars i:after{width:var(--bar-size);content:"";background:#ff8a16;position:absolute;inset:0 auto 0 0}.module-report-bars button:nth-child(2) i:after{background:#2475c5}.module-report-bars button:nth-child(3) i:after{background:#159b83}.module-report-bars strong{color:#344054;text-align:right}.module-calendar{background:#fff;border:1px solid #e6e9ed;margin:14px 16px}.module-calendar>header{border-bottom:1px solid #e6e9ed;justify-content:space-between;align-items:center;height:46px;padding:0 14px;display:flex}.module-calendar>header span{color:#ff8a16;font-size:12px}.module-calendar-grid{grid-template-columns:repeat(7,minmax(100px,1fr));min-width:760px;display:grid}.module-calendar-grid>b{color:#667085;background:#f7f8fa;border-right:1px solid #eef0f3;place-items:center;height:34px;font-size:12px;font-weight:500;display:grid}.module-calendar-grid>button{color:#667085;text-align:left;background:#fff;border-top:1px solid #eef0f3;border-bottom:0;border-left:0;border-right:1px solid #eef0f3;min-height:88px;padding:9px;position:relative}.module-calendar-grid>button:hover{background:#fffaf4}.module-calendar-grid>button>time{color:#98a2b3;font-size:11px;position:absolute;top:6px;right:8px}.module-calendar-grid>button>span{color:#d86600;background:#fff3e6;border-left:3px solid #ff8a16;gap:3px;margin-top:18px;padding:6px 7px;font-size:11px;display:grid}.module-calendar-grid>button>span small{color:#667085;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.module-kanban{background:#f5f6f8;grid-template-columns:repeat(3,minmax(240px,1fr));gap:12px;min-height:390px;padding:14px 16px;display:grid;overflow-x:auto}.module-kanban>section{background:#fff;border:1px solid #e4e7ec;border-radius:5px;min-width:240px;padding:10px}.module-kanban>section>header{justify-content:space-between;align-items:center;padding:3px 3px 12px;display:flex}.module-kanban>section>header span{color:#d86600;background:#fff0df;border-radius:10px;place-items:center;min-width:22px;height:20px;padding:0 5px;font-size:11px;display:grid}.module-kanban>section>button{color:#475467;text-align:left;background:#fff;border:1px solid #e7e9ed;border-radius:4px;gap:7px;width:100%;margin-bottom:8px;padding:12px;display:grid;box-shadow:0 2px 6px #1018280a}.module-kanban>section>button:hover{border-color:#ffbd77;box-shadow:0 4px 10px #ff8a161a}.module-kanban button b{color:#101828}.module-kanban button small{color:#98a2b3}.module-kanban button em{color:#ff8a16;justify-content:space-between;align-items:center;font-size:11px;font-style:normal;display:flex}.module-settings-list{padding:4px 16px 16px;display:grid}.module-settings-list article{border-bottom:1px solid #edf0f3;grid-template-columns:minmax(220px,1fr) auto 72px;align-items:center;gap:18px;min-height:72px;display:grid}.module-settings-list article>div{color:#ff8a16;align-items:center;gap:12px;display:flex}.module-settings-list article>div>span{gap:5px;display:grid}.module-settings-list article strong{color:#1d2939}.module-settings-list article small{color:#98a2b3}.module-settings-list article>button{color:#2475c5;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;display:inline-flex}.module-switch{width:38px;height:21px;display:block;position:relative}.module-switch input{opacity:0;position:absolute}.module-switch i{background:#cbd1d8;border-radius:12px;width:100%;height:100%;transition:all .2s;display:block}.module-switch i:after{content:"";background:#fff;border-radius:50%;width:17px;height:17px;margin:2px;transition:all .2s;display:block}.module-switch input:checked+i{background:#ff8a16}.module-switch input:checked+i:after{transform:translate(17px)}.module-gallery{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;padding:16px;display:grid}.module-gallery>button{color:#667085;text-align:left;background:#fff;border:1px solid #e4e7ec;border-radius:6px;gap:7px;padding:0 0 13px;display:grid;position:relative;overflow:hidden}.module-gallery>button:hover{border-color:#ffbd77;transform:translateY(-1px)}.module-gallery-cover{color:#ff8a16;background:#fff0df;place-items:center;height:108px;display:grid}.module-gallery-cover.tone-1{color:#2475c5;background:#eaf3fc}.module-gallery-cover.tone-2{color:#159b83;background:#e7f6f2}.module-gallery>button small,.module-gallery>button strong{text-overflow:ellipsis;white-space:nowrap;margin:0 12px;overflow:hidden}.module-gallery>button strong{color:#1d2939}.module-gallery>button em{color:#fff;background:#101828a6;border-radius:3px;padding:3px 6px;font-size:10px;font-style:normal;position:absolute;top:9px;right:9px}.module-tree-layout{grid-template-columns:190px minmax(0,1fr);min-height:410px;display:grid}.module-tree-layout>nav{background:#fafbfc;border-right:1px solid #e7e9ed;align-content:start;gap:2px;padding:15px 10px;display:grid}.module-tree-layout>nav strong{padding:0 9px 10px}.module-tree-layout>nav button{color:#667085;text-align:left;background:0 0;border:0;border-radius:3px;align-items:center;gap:7px;height:34px;padding:0 9px;display:flex}.module-tree-layout>nav button.active,.module-tree-layout>nav button:hover{color:#d86600;background:#fff0df}.module-tree-layout>div{min-width:0}.module-ledger-summary article:first-child{border-top:3px solid #ff8a16}.module-ledger-summary article:nth-child(2){border-top:3px solid #159b83}.module-ledger-summary article:nth-child(3){border-top:3px solid #2475c5}.module-business-modal{width:min(760px,100vw - 28px);max-height:min(720px,100dvh - 28px);overflow:auto}.module-drawer-edit,.module-dynamic-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 20px;padding:20px;display:grid}.module-drawer-edit label,.module-dynamic-form label{color:#475467;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:10px;display:grid}.module-dynamic-form label>span i{color:#f04438;margin-right:3px;font-style:normal}.module-drawer-edit input,.module-dynamic-form input,.module-dynamic-form select{border:1px solid #d9dde3;border-radius:3px;width:100%;height:34px;padding:0 9px}.module-modal-footer{border-top:1px solid #eceef2;justify-content:flex-end;gap:9px;padding:14px 20px;display:flex}.module-confirm-modal footer button,.module-modal-footer button{background:#fff;border:1px solid #dfe3e8;border-radius:3px;height:33px;padding:0 18px}.module-modal-footer button:last-child{color:#fff;background:#ff8a16;border-color:#ff8a16}.module-business-drawer{width:min(540px,100vw)}.module-business-drawer>header>div{gap:3px;display:grid}.module-business-drawer>header span{color:#98a2b3;font-size:11px}.module-drawer-tabs{border-bottom:1px solid #eceef2;height:44px;padding:0 20px;display:flex}.module-drawer-tabs button{color:#667085;background:0 0;border:0;padding:0 16px;position:relative}.module-drawer-tabs button.active{color:#ff8a16}.module-drawer-tabs button.active:after{content:"";background:#ff8a16;height:2px;position:absolute;bottom:0;left:12px;right:12px}.module-drawer-content{flex:1;overflow:auto}.module-business-drawer dl{margin:0;padding:8px 20px 24px}.module-business-drawer dl>div{border-bottom:1px solid #edf0f3;grid-template-columns:140px minmax(0,1fr);align-items:center;min-height:47px;display:grid}.module-business-drawer dt{color:#98a2b3}.module-business-drawer dd{color:#344054;margin:0}.module-drawer-edit{grid-template-columns:1fr}.module-history{flex:1;align-content:start;gap:0;margin:0;padding:14px 24px;list-style:none;display:grid;overflow:auto}.module-history li{color:#ff8a16;grid-template-columns:28px 1fr;min-height:70px;display:grid;position:relative}.module-history li:after{content:"";background:#f2d4b4;width:1px;position:absolute;top:22px;bottom:0;left:7px}.module-history li:last-child:after{display:none}.module-history span{align-content:start;gap:5px;display:grid}.module-history strong{color:#344054}.module-history small{color:#98a2b3}.module-audit-panel{color:#667085;flex:1;align-content:start;gap:0;padding:18px 22px;display:grid}.module-audit-panel p{border-bottom:1px solid #edf0f3;margin:0;padding:13px 0}.module-business-drawer>footer{border-top:1px solid #eceef2;justify-content:flex-end;gap:8px;padding:13px 18px;display:flex}.module-business-drawer>footer button{color:#475467;background:#fff;border:1px solid #dfe3e8;border-radius:3px;align-items:center;gap:5px;height:33px;padding:0 14px;display:inline-flex}.module-business-drawer>footer button:last-child{color:#fff;background:#ff8a16;border-color:#ff8a16}.module-business-drawer>footer button.danger{color:#d92d20;border-color:#fda29b;margin-right:auto}.module-confirm-modal{width:min(430px,100vw - 28px)}.module-confirm-modal>p{color:#475467;margin:0;padding:22px;line-height:1.7}.module-confirm-modal footer{border-top:1px solid #eceef2;justify-content:flex-end;gap:8px;padding:13px 20px;display:flex}.module-confirm-modal footer .danger{color:#fff;background:#e5484d;border-color:#e5484d}@media (max-width:760px){.module-view-badge{display:none}.operational-page-v2 .operational-context{flex-direction:column;align-items:flex-start}.operational-page-v2 .operational-context nav{width:100%;overflow-x:auto}.module-advanced-filter{grid-template-columns:1fr 1fr;gap:10px;display:grid}.module-advanced-filter label{min-width:0}.module-ledger-summary,.module-report-summary{grid-template-columns:1fr}.module-ledger-summary article,.module-report-summary article{min-height:72px}.module-report-bars button{grid-template-columns:100px minmax(80px,1fr) 38px}.module-calendar{overflow-x:auto}.module-kanban{grid-template-columns:repeat(3,260px)}.module-settings-list article{grid-template-columns:minmax(0,1fr) auto}.module-settings-list article>button{grid-column:1/-1;justify-self:end;margin-top:-8px}.module-gallery{grid-template-columns:1fr}.module-tree-layout{grid-template-columns:130px minmax(0,1fr);overflow-x:auto}.module-tree-layout>nav{min-width:130px}.module-tree-layout>div{min-width:760px}.module-dynamic-form{grid-template-columns:1fr}.module-drawer-edit label,.module-dynamic-form label{grid-template-columns:86px minmax(0,1fr)}.module-business-drawer dl>div{grid-template-columns:110px minmax(0,1fr)}}.academy-page{color:#3d4552;min-height:100%}.academy-heading{background:#fff;border-bottom:1px solid #e8ebef;justify-content:space-between;align-items:center;min-height:55px;padding:0 20px;display:flex}.academy-heading span{color:#9ca3af;font-size:11px}.academy-heading h1{color:#252a35;margin:3px 0 0;font-size:16px;font-weight:500}.academy-heading-actions{align-items:center;gap:8px;display:flex}.academy-heading-actions>button:not(.academy-primary),.course-discounts header button,.course-import-guide button{color:#5e6877;background:#fff;border:1px solid #dce1e7;border-radius:3px;align-items:center;gap:5px;height:34px;padding:0 12px;display:inline-flex}.academy-primary,.schedule-generate{color:#fff;background:#f47a00;border:1px solid #f47a00;border-radius:3px;justify-content:center;align-items:center;gap:6px;height:34px;padding:0 14px;display:inline-flex}.academy-primary:hover,.schedule-generate:hover{background:#df6f00}.academy-toolbar{background:#fff;border-bottom:1px solid #e8ebef;align-items:center;gap:9px;min-height:62px;padding:12px 16px;display:flex}.academy-toolbar label{align-items:center;width:280px;display:flex;position:relative}.academy-toolbar label svg{color:#9ca3af;position:absolute;left:10px}.academy-toolbar label input{width:100%;padding-left:32px}.academy-form input,.academy-form select,.academy-form textarea,.academy-toolbar button,.academy-toolbar input,.academy-toolbar select,.calendar-add input,.class-enroll input,.class-enroll select,.schedule-base-form input,.schedule-base-form select,.schedule-rule-grid input,.schedule-rule-grid select{color:#4b5563;background:#fff;border:1px solid #dce1e7;border-radius:3px;outline:0;height:34px;padding:0 10px}.academy-form input:focus,.academy-form select:focus,.academy-form textarea:focus,.academy-toolbar input:focus,.academy-toolbar select:focus,.calendar-add input:focus,.schedule-base-form input:focus,.schedule-base-form select:focus,.schedule-rule-grid input:focus,.schedule-rule-grid select:focus{border-color:#f47a00;box-shadow:0 0 0 2px #f47a0017}.academy-toolbar select{min-width:120px}.academy-toolbar button{cursor:pointer;align-items:center;gap:5px;display:inline-flex}.academy-toolbar button:hover{color:#f47a00;border-color:#f0a45d}.class-filters{flex-wrap:wrap}.class-filters label{width:210px}.class-filters select{flex:1;min-width:110px;max-width:165px}.academy-panel{background:#fff;border:1px solid #e5e8ed;border-radius:4px;min-height:520px;margin:12px 16px;overflow-x:auto}.academy-table{min-width:1050px}.academy-table-row{border-bottom:1px solid #edf0f3;align-items:center;gap:12px;min-height:50px;padding:0 14px;font-size:12px;display:grid}.academy-table-row:hover:not(.head){background:#fffaf5}.academy-table-row.head{color:#848c98;background:#fafbfc;min-height:42px}.academy-table-row>span,.academy-table-row>strong{overflow-wrap:anywhere;min-width:0}.academy-table-row strong{color:#343c48;align-items:center;gap:7px;font-weight:500;display:flex}.academy-table-row strong small,.academy-table-row>span small,.class-name small{color:#9ba3ae;margin-top:3px;font-size:10px;font-weight:400;display:block}.academy-table.course .academy-table-row{grid-template-columns:1.35fr .65fr .65fr .6fr .7fr .62fr .68fr .82fr .66fr .55fr 1fr;min-width:1280px}.academy-table.classroom .academy-table-row{grid-template-columns:1.3fr .7fr 1.4fr .7fr 1fr 1fr}.academy-table.student .academy-table-row{grid-template-columns:1.1fr .5fr .65fr .8fr .9fr .65fr .75fr .6fr 1.05fr}.academy-table.class-group .academy-table-row{grid-template-columns:1.35fr 1.05fr .7fr .75fr .75fr 1fr .55fr .65fr 1.75fr}.academy-actions{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.academy-actions a,.academy-actions button,.class-name{color:#3e82d7;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:3px 5px;display:inline-flex}.academy-actions a:hover,.academy-actions button:hover,.class-name:hover{color:#f47a00}.class-name{color:#354052;text-align:left;padding:0}.class-name>span{display:grid}.academy-status{border:1px solid;border-radius:3px;align-items:center;width:max-content;min-height:22px;padding:0 7px;font-size:10px;display:inline-flex}.academy-status.active,.academy-status.completed,.academy-status.ongoing{color:#15805d;background:#effaf6;border-color:#c3e9dc}.academy-status.canceled,.academy-status.disabled{color:#9b5050;background:#fff3f2;border-color:#f0d0cd}.academy-status.planning,.academy-status.scheduled{color:#b26918;background:#fff8eb;border-color:#f2ddb7}.academy-status.finished{color:#657184;background:#f4f6f8;border-color:#dce1e7}.academy-empty,.academy-loading{color:#9aa2ae;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;min-height:260px;font-size:12px;display:flex}.academy-loading svg{animation:academy-spin .8s linear infinite}.academy-empty{flex-direction:column}.academy-empty svg{color:#bdc4ce}.academy-modal-layer{z-index:180;background:#161d2794;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.academy-modal{background:#fff;border-radius:5px;flex-direction:column;width:100%;max-height:min(90dvh,920px);display:flex;overflow:hidden;box-shadow:0 18px 55px #0d152147}.academy-modal>header{border-bottom:1px solid #e7e9ed;flex:0 0 53px;justify-content:space-between;align-items:center;padding:0 18px;display:flex}.academy-modal>header h2{color:#2d3542;margin:0;font-size:15px;font-weight:550}.academy-modal>header button{color:#929aa6;cursor:pointer;background:0 0;border:0;place-items:center;width:30px;height:30px;display:grid}.academy-modal-body{flex:1;min-height:0;padding:20px;overflow:auto}.academy-modal>footer{border-top:1px solid #e7e9ed;flex:0 0 58px;justify-content:flex-end;align-items:center;gap:9px;padding:0 18px;display:flex}.academy-modal>footer>button{color:#5b6470;cursor:pointer;background:#fff;border:1px solid #dce1e7;border-radius:3px;min-width:72px;height:34px;padding:0 15px}.academy-modal>footer>button.primary{color:#fff;background:#f47a00;border-color:#f47a00}.academy-modal>footer>button:disabled{opacity:.55;cursor:not-allowed}.academy-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.academy-form label,.calendar-add label,.schedule-base-form label,.schedule-rule-grid label{color:#616a77;gap:7px;font-size:11px;display:grid}.academy-form label.full,.schedule-base-form label.full{grid-column:1/-1}.academy-form textarea{resize:vertical;min-height:76px;padding:9px 10px}.course-pricing-grid{border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4;grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:16px 0;display:grid}.academy-input-unit{min-width:0;display:flex}.academy-input-unit input{border-radius:3px 0 0 3px;flex:1;min-width:0}.academy-input-unit em{color:#8a93a0;white-space:nowrap;background:#f7f8fa;border:1px solid #dfe4ea;border-left:0;border-radius:0 3px 3px 0;justify-content:center;align-items:center;min-width:44px;padding:0 7px;font-size:11px;font-style:normal;display:inline-flex}.course-discounts,.course-import{gap:16px;display:grid}.course-import-guide{color:#5f6a78;background:#fffaf5;border:1px solid #f1dfc9;border-radius:4px;align-items:center;gap:12px;padding:14px;display:flex}.course-import-guide>svg{color:#f47a00}.course-import-guide>div{flex:1}.course-import-guide strong{color:#364153;font-size:13px}.course-import-guide p{color:#8a94a2;margin:5px 0 0;font-size:11px;line-height:1.6}.course-upload-zone{color:#8b95a3;cursor:pointer;background:#fbfcfd;border:1px dashed #cbd3dd;border-radius:4px;align-content:center;place-items:center;gap:7px;min-height:150px;display:grid}.course-upload-zone:hover{color:#f47a00;background:#fffaf5;border-color:#f0a45d}.course-upload-zone strong{color:#4d5968;font-size:13px}.course-upload-zone span{font-size:11px}.course-upload-zone input{display:none}.course-import-result{color:#5f6978;background:#f8fafc;border:1px solid #e2e7ed;border-radius:4px;padding:12px;font-size:12px}.course-import-result header{justify-content:space-between;display:flex}.course-import-result header span{color:#168361}.course-import-result ol{color:#b24a45;margin:10px 0 0;padding-left:20px;line-height:1.8}.course-import-result p{color:#168361;margin:10px 0 0}.student-import-errors{background:#fff;border:1px solid #ead9d7;max-height:190px;margin-top:10px;overflow:auto}.student-import-errors>div{border-bottom:1px solid #f0e3e1;grid-template-columns:90px minmax(0,1fr);align-items:center;gap:10px;min-height:34px;padding:0 10px;display:grid}.student-import-errors>div:first-child{color:#8b6460;background:#fff7f6;position:sticky;top:0}.student-import-errors>div:last-child{border-bottom:0}.student-import-errors span:last-child{color:#b24a45}.course-discounts>header{justify-content:space-between;align-items:center;display:flex}.course-discounts>header>div{color:#5f6977;align-items:center;gap:7px;font-size:12px;display:flex}.course-discounts>header svg{color:#f47a00}.course-discount-form{background:#fafbfc;border:1px solid #e4e8ed;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;display:grid}.course-discount-form label{color:#65707e;gap:6px;font-size:11px;display:grid}.course-discount-form input,.course-discount-form select{border:1px solid #dce1e7;border-radius:3px;height:34px;padding:0 9px}.course-discount-form button{color:#fff;background:#f47a00;border:0;border-radius:3px;align-self:end;height:34px}.course-discount-list{border:1px solid #e3e7ec;overflow-x:auto}.course-discount-list .row{border-bottom:1px solid #edf0f3;grid-template-columns:1.3fr .75fr .75fr 1.4fr .6fr 1fr;align-items:center;gap:10px;min-width:680px;min-height:46px;padding:0 11px;font-size:11px;display:grid}.course-discount-list .row.head{color:#8b94a0;background:#fafbfc}.course-discount-list .row>span:last-child{gap:7px;display:flex}.course-discount-list button{color:#3e82d7;background:0 0;border:0;align-items:center;gap:3px;padding:3px 0;display:inline-flex}.course-discount-list button.danger{color:#c35750}.discount-status{border:1px solid;border-radius:3px;width:max-content;padding:2px 6px}.discount-status.active{color:#168361;background:#effaf6;border-color:#bfe4d5}.discount-status.discontinued{color:#a05a55;background:#fff3f2;border-color:#efcfcc}.enrollment-page{padding-bottom:30px}.enrollment-origin-tag{color:#167c5e;background:#effaf6;border:1px solid #bfe4d5;border-radius:3px;align-items:center;gap:6px;width:max-content;margin:12px 16px 0;padding:7px 11px;font-size:12px;display:inline-flex}.enrollment-workflow{gap:12px;padding:16px;display:grid}.enrollment-workflow>section{background:#fff;border:1px solid #e4e8ed;border-radius:4px;padding:18px}.enrollment-workflow>section>header{align-items:center;gap:10px;margin-bottom:17px;display:flex}.enrollment-workflow>section>header>span{color:#fff;background:#f47a00;border-radius:50%;place-items:center;width:25px;height:25px;font-size:12px;display:grid}.enrollment-workflow>section>header div{gap:3px;display:grid}.enrollment-workflow>section>header strong{color:#313b4b;font-size:14px}.enrollment-workflow>section>header small{color:#9aa3af;font-size:11px}.enrollment-workflow>section>header .enrollment-student-actions{flex-direction:row;gap:7px;margin-left:auto;display:flex}.enrollment-student-actions button{color:#526071;background:#fff;border:1px solid #dce1e7;border-radius:3px;align-items:center;gap:5px;height:32px;padding:0 10px;display:inline-flex}.enrollment-student-actions button:first-child{color:#f47a00;background:#fff9f2;border-color:#f2bd84}.enrollment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px;display:grid}.enrollment-grid label{color:#606a78;gap:7px;font-size:11px;display:grid}.enrollment-grid label.wide,.enrollment-pay-methods.wide{grid-column:span 2}.enrollment-grid input,.enrollment-grid select,.enrollment-grid textarea{color:#3d4654;background:#fff;border:1px solid #dce1e7;border-radius:3px;outline:0;width:100%;min-width:0;height:35px;padding:0 10px}.enrollment-grid textarea{resize:vertical;min-height:70px;padding-block:8px}.enrollment-grid input:read-only{color:#7c8795;background:#f7f8fa}.enrollment-course-summary{color:#6d7784;background:#fffaf5;border:1px solid #f0dfcc;border-radius:4px;align-items:center;gap:10px;margin-top:16px;padding:12px;display:flex}.enrollment-course-summary>svg{color:#f47a00;flex:none}.enrollment-course-summary>div{gap:4px;margin-right:12px;display:grid}.enrollment-course-summary strong{color:#3c4655;font-size:12px}.enrollment-course-summary span{font-size:11px}.enrollment-pay-methods{color:#606a78;gap:7px;font-size:11px;display:grid}.enrollment-pay-methods>div{flex-wrap:wrap;gap:7px;display:flex}.enrollment-pay-methods button{color:#65707d;background:#fff;border:1px solid #dce1e7;border-radius:3px;height:35px;padding:0 13px}.enrollment-pay-methods button.active{color:#fff;background:#f47a00;border-color:#f47a00}.enrollment-workflow>footer{color:#778290;align-items:center;gap:9px;padding:10px 4px;font-size:12px;display:flex}.enrollment-workflow>footer>span{margin-right:auto}.enrollment-workflow>footer strong{color:#e56f0c;font-size:15px}.enrollment-success footer button,.enrollment-workflow>footer button{color:#5e6877;background:#fff;border:1px solid #dce1e7;border-radius:3px;min-height:36px;padding:7px 16px}.enrollment-success footer button.primary,.enrollment-workflow>footer button.primary{color:#fff;background:#f47a00;border-color:#f47a00;align-items:center;gap:5px;display:inline-flex}.enrollment-success{text-align:center;background:#fff;border:1px solid #e4e8ed;border-radius:5px;justify-items:center;max-width:680px;margin:28px auto;padding:38px;display:grid}.enrollment-success>svg{color:#1a986d}.enrollment-success h2{color:#293343;margin:14px 0 6px;font-size:21px}.enrollment-success>p{color:#788391;margin:0;font-size:12px}.enrollment-success dl{text-align:left;background:#e7eaee;border:1px solid #e7eaee;grid-template-columns:1fr 1fr;gap:1px;width:100%;margin:27px 0;display:grid}.enrollment-success dl div{background:#fafbfc;justify-content:space-between;gap:12px;padding:12px;font-size:12px;display:flex}.enrollment-success dt{color:#8d96a2}.enrollment-success dd{color:#3d4654;margin:0;font-weight:500}.enrollment-success footer{gap:9px;display:flex}.student-picker{gap:12px;display:grid}.student-picker-toolbar{gap:10px;display:flex}.student-picker-toolbar label{border:1px solid #dce1e7;flex:1;align-items:center;gap:7px;min-width:280px;padding:0 10px;display:flex}.student-picker-toolbar input,.student-picker-toolbar select{background:#fff;border:0;outline:0;height:36px}.student-picker-toolbar input{flex:1;min-width:0}.student-picker-toolbar select{border:1px solid #dce1e7;width:180px;padding:0 9px}.student-picker-table{border:1px solid #e4e8ed;overflow-x:auto}.student-picker-row{color:#65707e;border-bottom:1px solid #edf0f3;grid-template-columns:1fr 1.2fr .8fr .85fr .65fr .55fr;align-items:center;min-width:700px;min-height:47px;padding:0 12px;font-size:12px;display:grid}.student-picker-row.head{color:#8a93a0;background:#fafbfc;min-height:40px}.student-picker-row strong{color:#354052}.student-picker-row .active{color:#168361}.student-picker-row .disabled{color:#b3564f}.student-picker-row button{color:#2f7ed6;background:0 0;border:0;width:max-content}.student-picker-empty{color:#9ba3ae;place-items:center;min-height:150px;display:grid}.student-picker-pagination{color:#7d8794;justify-content:flex-end;align-items:center;gap:8px;font-size:12px;display:flex}.student-picker-pagination span{margin-right:auto}.student-picker-pagination button{color:#5e6875;background:#fff;border:1px solid #dce1e7;height:30px;padding:0 9px}.student-picker-pagination button:disabled{opacity:.45}@media (max-width:800px){.enrollment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.enrollment-grid label.wide,.enrollment-pay-methods.wide{grid-column:1/-1}}@media (max-width:560px){.enrollment-grid,.enrollment-success dl{grid-template-columns:1fr}.enrollment-workflow>footer{flex-wrap:wrap}.enrollment-workflow>footer>span{width:100%}.enrollment-success footer button,.enrollment-workflow>footer button{min-width:44px;min-height:44px;padding:10px 14px}.enrollment-success{margin:16px;padding:26px 18px}}.academy-form-error{color:#bd3f3f;background:#fff4f3;border:1px solid #f2ceca;border-radius:3px;margin:13px 0 0;padding:9px 11px;font-size:11px}.academy-toast{z-index:240;color:#217155;pointer-events:none;background:#effaf6;border:1px solid #bfe4d6;border-radius:4px;min-height:40px;padding:11px 15px;font-size:12px;position:fixed;top:70px;right:23px;box-shadow:0 8px 24px #1a253429}.academy-toast.error{color:#ac3e3e;background:#fff2f1;border-color:#f0c7c4}.schedule-group-summary{background:#f7f9fc;border:1px solid #e3e8ef;border-radius:4px;justify-content:space-between;align-items:center;gap:18px;padding:13px 15px;display:flex}.schedule-group-summary>div{gap:5px;display:grid}.schedule-group-summary strong{color:#2d3746;font-size:14px}.schedule-group-summary span{color:#858e9c;font-size:11px}.schedule-group-summary dl{margin:0;display:flex}.schedule-group-summary dl div{text-align:center;border-left:1px solid #dce2ea;min-width:80px;padding:0 14px}.schedule-group-summary dt{color:#949ca8;font-size:10px}.schedule-group-summary dd{color:#293343;margin:4px 0 0;font-size:15px;font-weight:600}.schedule-base-form{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.schedule-base-form label.wide{grid-column:span 2}.schedule-base-form input:disabled{color:#7d8693;background:#f5f6f8}.schedule-tabs{border-bottom:1px solid #e4e7ec;margin-top:20px;display:flex}.schedule-tabs button{color:#707987;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;height:39px;padding:0 16px;display:flex}.schedule-tabs button.active{color:#f47a00;border-bottom-color:#f47a00}.regular-schedule{background:#fafbfc;border:1px solid #e7eaee;border-top:0;padding:15px;position:relative}.schedule-radio-row,.schedule-weekdays{color:#5d6673;align-items:center;gap:16px;min-height:36px;font-size:11px;display:flex}.schedule-radio-row strong,.schedule-weekdays strong{color:#353e4b;width:75px}.schedule-radio-row label,.schedule-weekdays label{align-items:center;gap:5px;display:inline-flex}.schedule-notify input,.schedule-radio-row input,.schedule-weekdays input{accent-color:#f47a00}.schedule-rule-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:12px 0;display:grid}.schedule-generate{height:32px;margin-top:8px}.calendar-schedule{background:#fafbfc;border:1px solid #e7eaee;border-top:0;grid-template-columns:minmax(300px,.9fr) minmax(280px,1fr);gap:18px;padding:16px;display:grid}.schedule-calendar{background:#fff;border:1px solid #e0e4e9}.schedule-calendar>header{border-bottom:1px solid #e6e9ed;justify-content:space-between;align-items:center;height:42px;padding:0 10px;display:flex}.schedule-calendar>header button{color:#687280;background:#fff;border:1px solid #e1e5ea;place-items:center;width:28px;height:28px;display:grid}.schedule-calendar>header strong{font-size:12px}.schedule-calendar-days,.schedule-calendar-week{grid-template-columns:repeat(7,1fr);display:grid}.schedule-calendar-week span{color:#8c94a0;text-align:center;background:#fafbfc;padding:8px 0;font-size:10px}.schedule-calendar-days button,.schedule-calendar-days>span{color:#4f5968;background:#fff;border:0;border-top:1px solid #f0f2f4;height:37px;position:relative}.schedule-calendar-days button.selected,.schedule-calendar-days button:hover{color:#fff;background:#f47a00}.schedule-calendar-days button.has-lesson:after{content:"";background:#2c84d8;border-radius:50%;width:5px;height:5px;position:absolute;bottom:3px;right:4px}.calendar-add{align-content:start;gap:13px;padding:5px 0;display:grid}.calendar-add>strong{color:#343e4c;font-size:13px}.calendar-add label>div{grid-template-columns:1fr auto 1fr;align-items:center;gap:7px;display:grid}.calendar-add>button{color:#fff;background:#f47a00;border:0;border-radius:3px;align-items:center;gap:5px;width:max-content;height:34px;padding:0 13px;display:inline-flex}.schedule-preview{border:1px solid #e1e5ea;margin-top:18px}.class-detail-section>header,.schedule-preview>header{background:#f8fafc;border-bottom:1px solid #e5e8ed;justify-content:space-between;align-items:center;min-height:42px;padding:0 12px;display:flex}.class-detail-header-actions{align-items:center;gap:10px;display:flex}.class-detail-header-actions button{color:#e67000;cursor:pointer;background:#fff8ef;border:1px solid #ffc27e;border-radius:4px;align-items:center;gap:5px;min-height:30px;padding:0 10px;display:inline-flex}.class-detail-section header strong,.schedule-preview header strong{color:#36404e;font-size:12px}.class-detail-section header span,.schedule-preview header span{color:#838d9b;font-size:10px}.schedule-preview-table{max-height:250px;overflow:auto}.detail-lesson-table .row,.schedule-preview-table .row{border-bottom:1px solid #edf0f3;grid-template-columns:1fr .6fr 1.15fr .85fr .85fr .55fr .65fr .5fr;align-items:center;gap:8px;min-width:760px;min-height:38px;padding:0 10px;font-size:10px;display:grid}.detail-lesson-table .row.head,.schedule-preview-table .row.head{color:#87909d;background:#fbfcfd}.detail-lesson-table .row>button,.schedule-preview-table .row>button{color:#d05e50;background:0 0;border:0;align-items:center;gap:3px;width:max-content;padding:3px;display:inline-flex}.schedule-preview-empty{color:#9ea6b2;place-items:center;min-height:90px;font-size:11px;display:grid}.schedule-notify{color:#646e7c;align-items:center;gap:6px;margin-right:auto;font-size:11px;display:inline-flex}.class-detail{gap:16px;display:grid}.class-detail-summary{background:#f7f9fc;border:1px solid #e3e7ed;justify-content:space-between;align-items:center;gap:20px;padding:15px;display:flex}.class-detail-summary>div{color:#f47a00;align-items:center;gap:10px;display:flex}.class-detail-summary>div span{gap:4px;display:grid}.class-detail-summary>div strong{color:#303947;font-size:14px}.class-detail-summary>div small{color:#88919e;font-size:10px}.class-detail-summary dl{grid-template-columns:repeat(4,1fr);margin:0;display:grid}.class-detail-summary dl div{border-left:1px solid #dce1e8;min-width:85px;padding-left:14px}.class-detail-summary dt{color:#969eaa;font-size:9px}.class-detail-summary dd{color:#3b4553;margin:4px 0 0;font-size:11px}.class-detail-section{border:1px solid #e2e6eb}.detail-lesson-table{max-height:260px;overflow:auto}.detail-lesson-table .row{grid-template-columns:1fr 1.25fr .85fr .85fr .5fr .7fr .6fr}.class-enroll{border-bottom:1px solid #e7eaee;gap:8px;padding:12px;display:flex}.class-enroll select{flex:1}.class-enroll input{width:110px}.class-enroll button{color:#fff;background:#f47a00;border:0;border-radius:3px;align-items:center;gap:5px;padding:0 12px;display:inline-flex}.class-student-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;display:grid}.class-student-list>span{background:#f8fafc;border:1px solid #e4e8ed;gap:4px;padding:9px;display:grid}.class-student-list strong{color:#3a4452;font-size:11px}.class-student-list small{color:#89929f;font-size:9px}@keyframes academy-spin{to{transform:rotate(1turn)}}@media (max-width:900px){.course-pricing-grid,.schedule-base-form,.schedule-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-schedule{grid-template-columns:1fr}.class-detail-summary{flex-direction:column;align-items:stretch}.class-detail-summary dl{grid-template-columns:repeat(2,1fr)}.class-student-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.course-pricing-grid{grid-template-columns:1fr}.academy-heading{padding:0 12px}.academy-heading h1{font-size:15px}.academy-primary{padding:0 10px}.academy-toolbar{padding:10px 12px}.academy-toolbar label{width:100%}.class-filters select{max-width:none}.academy-panel{border-left:0;border-right:0;border-radius:0;margin:8px 0}.academy-modal-layer{align-items:flex-end;padding:0}.academy-modal{border-radius:5px 5px 0 0;max-height:94dvh}.academy-modal-body{padding:14px}.academy-actions a,.academy-actions button,.academy-modal>footer>button,.academy-modal>header button,.academy-toolbar button,.attendance-quick button,.attendance-row-action button,.attendance-status-buttons button,.calendar-add>button,.class-detail-header-actions button,.class-enroll button,.enrollment-pay-methods button,.enrollment-student-actions button,.lesson-actions button,.schedule-calendar>header button,.schedule-generate,.schedule-tabs button,.student-picker-pagination button,.student-picker-row button{min-width:44px;min-height:44px}.academy-form,.schedule-base-form,.schedule-rule-grid{grid-template-columns:1fr}.academy-form label.full,.schedule-base-form label.full,.schedule-base-form label.wide{grid-column:auto}.schedule-group-summary{flex-direction:column;align-items:stretch}.schedule-group-summary dl{grid-template-columns:repeat(4,1fr);display:grid}.schedule-group-summary dl div{min-width:0;padding:0 5px}.schedule-tabs button{flex:1;justify-content:center}.schedule-weekdays{flex-wrap:wrap}.schedule-weekdays strong{width:100%}.calendar-schedule{padding:10px}.class-detail-summary dl{grid-template-columns:1fr 1fr}.class-student-list{grid-template-columns:1fr}.class-enroll{flex-wrap:wrap}.class-enroll select{flex:1 0 100%}.academy-toast{text-align:center;top:62px;left:12px;right:12px}}.lesson-actions{align-items:center;gap:4px;display:inline-flex}.lesson-actions button{color:#d05e50;background:0 0;border:0;align-items:center;gap:3px;width:max-content;padding:3px;display:inline-flex}.lesson-actions button:first-child{color:#3e82d7}.lesson-actions button:disabled{color:#b9c0c9;cursor:not-allowed}.class-roster{gap:14px;display:grid}.class-roster>header{background:#f7f9fc;border:1px solid #e3e7ed;justify-content:space-between;align-items:center;padding:13px 15px;display:flex}.class-roster>header div{gap:4px;display:grid}.class-roster>header strong{color:#303947;font-size:14px}.class-roster>header span{color:#89929f;font-size:11px}.class-roster-add{background:#fffaf5;border:1px solid #f2d7b9;grid-template-columns:1.5fr 1.4fr .9fr .7fr auto;align-items:end;gap:10px;padding:13px;display:grid}.class-roster-add label{color:#616a77;gap:6px;font-size:11px;display:grid}.class-roster-add input,.class-roster-add select{border:1px solid #dce1e7;border-radius:3px;height:34px;padding:0 9px}.class-roster-add button{color:#fff;background:#f47a00;border:0;border-radius:3px;height:34px;padding:0 13px}.student-search{position:relative}.student-search svg{color:#9ca3af;position:absolute;top:10px;left:9px}.student-search input{padding-left:30px!important}.class-roster-table{border:1px solid #e2e6eb;overflow-x:auto}.class-roster-table .row{color:#566170;border-bottom:1px solid #edf0f3;grid-template-columns:1.2fr .6fr .7fr 1.15fr .9fr .75fr .7fr .7fr;align-items:center;gap:10px;min-width:820px;min-height:46px;padding:0 12px;font-size:11px;display:grid}.class-roster-table .row.head{color:#87909d;background:#fbfcfd}.class-roster-table .row strong{color:#354052;font-weight:500}.class-roster-table .row button{color:#d05e50;background:0 0;border:0;align-items:center;gap:3px;width:max-content;display:inline-flex}.class-roster-table .row button:disabled{color:#b9c0c9;cursor:not-allowed}.class-roster-actions{flex-wrap:wrap;gap:5px;display:inline-flex}.hour-log-panel{gap:12px;display:grid}.hour-log-table{border:1px solid #e2e6eb;overflow-x:auto}.hour-log-table .row{color:#596473;border-bottom:1px solid #edf0f3;grid-template-columns:1.15fr .8fr .7fr .75fr 1.25fr 1.5fr .8fr;align-items:center;gap:10px;min-width:850px;min-height:45px;padding:0 12px;font-size:11px;display:grid}.hour-log-table .row.head{color:#87909d;background:#fbfcfd;min-height:40px}.hour-log-table strong.negative{color:#d35550}.hour-log-table strong.positive{color:#29906c}.hour-log-type{border-radius:3px;width:max-content;padding:3px 6px;display:inline-flex}.hour-log-type.attend{color:#be5c21;background:#fff5ea}.hour-log-type.enroll{color:#268463;background:#effaf6}.hour-log-type.adjust{color:#397dc0;background:#f0f7fe}.hour-log-type.refund{color:#825fae;background:#f7f2fb}.hour-log-pagination{color:#7d8795;justify-content:flex-end;align-items:center;gap:10px;font-size:11px;display:flex}.hour-log-pagination button{color:#596473;background:#fff;border:1px solid #dce1e7;border-radius:3px;height:29px;padding:0 10px}.hour-log-pagination button:disabled{opacity:.45}.attendance-page{gap:14px;display:grid}.attendance-group-summary,.attendance-lesson-info{background:#f7f9fc;border:1px solid #e3e7ed;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.attendance-group-summary>div,.attendance-lesson-info>div{gap:5px;display:grid}.attendance-group-summary strong,.attendance-lesson-info strong{color:#2f3947;font-size:14px}.attendance-group-summary span,.attendance-lesson-info span{color:#858f9d;font-size:11px}.attendance-group-summary dl{grid-template-columns:repeat(4,minmax(82px,1fr));margin:0;display:grid}.attendance-group-summary dl div{border-left:1px solid #dce2e9;padding-left:14px}.attendance-group-summary dt{color:#929ba7;font-size:10px}.attendance-group-summary dd{color:#344050;margin:4px 0 0;font-size:12px}.attendance-export{color:#586576;cursor:pointer;background:#fff;border:1px solid #d8dee6;border-radius:3px;flex:none;justify-content:center;align-items:center;gap:5px;min-width:100px;height:34px;display:inline-flex}.attendance-export:hover{color:#f47a00;border-color:#eda65f}.attendance-export:disabled{cursor:wait;opacity:.65}.attendance-student-table,.attendance-table-wrap{border:1px solid #e1e5ea;overflow:auto}.attendance-table{min-width:1120px}.attendance-table .row{color:#596473;border-bottom:1px solid #edf0f3;grid-template-columns:.85fr .45fr 1fr .8fr .8fr .45fr .75fr .55fr 2.2fr .75fr 1.55fr;align-items:center;gap:9px;min-height:46px;padding:0 12px;font-size:11px;display:grid}.attendance-table .row.head{color:#87909d;background:#fbfcfd;min-height:42px}.attendance-table .row strong{color:#354052;font-weight:500}.attendance-counts{color:#7c8795;white-space:nowrap;font-size:10px}.attendance-go,.attendance-view{cursor:pointer;border:1px solid;border-radius:3px;justify-content:center;align-items:center;gap:4px;height:28px;padding:0 8px;font-size:10px;display:inline-flex}.attendance-row-action{gap:3px;min-width:0;display:grid}.attendance-row-action small{color:#b45309;font-size:9px;line-height:1.35}.attendance-row-action button:disabled{cursor:not-allowed;color:#8b95a5;background:#f3f5f7;border-color:#d7dce3}.attendance-go{color:#fff;background:#f47a00;border-color:#f47a00}.attendance-view{color:#367fc3;background:#f2f8ff;border-color:#bed8f1}.attendance-panel{gap:12px;display:grid}.attendance-quick{align-items:center;gap:8px;display:flex}.attendance-quick strong{color:#4c5664;margin-right:5px;font-size:12px}.attendance-quick button{color:#5e6876;cursor:pointer;background:#fff;border:1px solid #dce1e7;border-radius:3px;align-items:center;gap:4px;height:30px;padding:0 10px;display:inline-flex}.attendance-quick button:hover{color:#f47a00;border-color:#f0b26f}.attendance-student-table{min-width:1160px}.attendance-student-table .row{color:#596473;border-bottom:1px solid #edf0f3;grid-template-columns:.9fr .55fr 1fr 2.6fr .75fr 1.2fr 1.25fr .7fr;align-items:center;gap:9px;min-height:58px;padding:0 12px;font-size:11px;display:grid}.attendance-student-table .row.head{color:#87909d;background:#fbfcfd;min-height:42px}.attendance-student-table .row strong{color:#354052;font-weight:500}.attendance-student-table input{border:1px solid #dce1e7;border-radius:3px;outline:0;min-width:0;height:31px;padding:0 7px}.attendance-student-table input:focus{border-color:#f47a00}.attendance-student-table input:disabled{cursor:not-allowed;background:#f5f6f8}.attendance-hours{width:74px}.attendance-remark{width:100%}.attendance-status-buttons{gap:3px;display:flex}.attendance-status-buttons button{color:#6e7784;cursor:pointer;background:#fff;border:1px solid #dce1e7;border-radius:3px;height:27px;padding:0 7px;font-size:10px}.attendance-status-buttons button.selected{color:#fff}.attendance-status-buttons .present.selected{background:#28a476;border-color:#28a476}.attendance-status-buttons .absent.selected{background:#d75b57;border-color:#d75b57}.attendance-status-buttons .late.selected{background:#e9942d;border-color:#e9942d}.attendance-status-buttons .leave.selected{background:#4389d6;border-color:#4389d6}.attendance-status-buttons .makeup.selected{background:#8862bd;border-color:#8862bd}.attendance-footer-stats{color:#596473;margin-right:auto;font-size:11px}@media (max-width:900px){.attendance-group-summary{flex-direction:column;align-items:stretch}.attendance-group-summary dl{grid-template-columns:repeat(2,1fr);gap:10px 0}.attendance-group-summary dl div:nth-child(3){border-left:0;padding-left:0}.class-roster-add{grid-template-columns:1fr 1fr}.class-roster-add .student-search{grid-column:1/-1}}@media (max-width:600px){.class-roster-add{grid-template-columns:1fr}.class-roster-add .student-search{grid-column:auto}}.contract-payment-page{max-width:1500px}.contract-card{background:#fff;border:1px solid #e8ebf0;border-radius:8px;margin-bottom:16px;padding:22px}.contract-card>header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.contract-card>header h2{color:#1f2937;margin:0;font-size:16px}.contract-card>header span{color:#7b8494;font-size:13px}.contract-card>header>div{gap:8px;display:flex}.contract-card button{color:#495468;cursor:pointer;background:#fff;border:1px solid #dbe1e8;border-radius:4px;align-items:center;gap:5px;min-height:32px;padding:0 12px;display:inline-flex}.contract-card button.primary,.contract-success-actions button.primary{color:#fff;background:#f47a00;border-color:#f47a00}.contract-course-form,.contract-settlement,.contract-student-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.contract-card label{color:#6a7484;gap:6px;font-size:12px;display:grid}.contract-card input,.contract-card select,.contract-card textarea{box-sizing:border-box;color:#263142;background:#fff;border:1px solid #dce2ea;border-radius:4px;width:100%;min-height:36px;padding:7px 10px}.contract-card textarea{resize:vertical;min-height:72px}.contract-course-form{grid-template-columns:1.7fr .75fr 1.35fr 1.2fr 1fr auto;align-items:end}.contract-items{border-top:1px solid #edf0f4;margin-top:16px;display:grid}.contract-items>div{color:#4f5c70;border-bottom:1px solid #edf0f4;grid-template-columns:1.7fr 1fr .7fr .9fr 1fr .9fr 1fr 38px;align-items:center;gap:10px;min-height:46px;font-size:13px;display:grid}.contract-items>div.head{color:#8b95a5;background:#fafbfc;min-height:38px;font-size:12px}.contract-items strong{color:#f47a00}.contract-items button{justify-content:center;width:30px;min-height:30px;padding:0}.contract-inline-check{cursor:pointer;grid-template-columns:none;align-items:center;width:fit-content;margin-top:13px;gap:8px!important;display:flex!important}.contract-inline-check input{accent-color:#f47a00;width:15px;min-height:15px;margin:0}.contract-benefit-tabs{border-bottom:1px solid #e8ecf1;gap:4px;margin-bottom:16px;display:flex}.contract-benefit-tabs button{border:0;border-bottom:2px solid #0000;border-radius:0}.contract-benefit-tabs button.active{color:#f47a00;border-bottom-color:#f47a00}.contract-placeholder-benefit{color:#8a94a4;text-align:center;background:#fafbfc;padding:24px}.contract-settlement-summary{color:#697487;background:#fafbfc;justify-content:flex-end;gap:22px;margin-top:16px;padding:14px;font-size:12px;display:flex}.contract-settlement-summary strong{color:#f47a00;margin-left:5px;font-size:14px}.contract-settlement{grid-template-columns:repeat(4,minmax(0,1fr))}.contract-settlement .full{grid-column:1/-1}.contract-pay-methods{color:#6a7484;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;font-size:12px;display:flex}.contract-pay-methods button.active{color:#fff;background:#f47a00;border-color:#f47a00}.contract-footer{color:#6a7484;border-top:1px solid #edf0f4;justify-content:flex-end;align-items:center;gap:10px;margin-top:18px;padding-top:16px;display:flex}.contract-footer span{margin-right:auto}.contract-footer span:first-letter,.contract-success dd{color:#f47a00}.contract-success{text-align:center;background:#fff;border:1px solid #e8ebf0;border-radius:8px;max-width:720px;margin:40px auto;padding:50px 40px}.contract-success>svg{color:#26a269}.contract-success h2{color:#263142;margin:15px 0 8px}.contract-success p{color:#788294}.contract-success dl{text-align:left;grid-template-columns:repeat(2,1fr);gap:12px;margin:28px 0;display:grid}.contract-success dl div{background:#f8fafc;padding:12px}.contract-success dt{color:#8993a2;font-size:12px}.contract-success dd{color:#334155;margin:6px 0 0}.contract-success-actions{justify-content:center;gap:10px;display:flex}.contract-records-page .finance-table{min-width:1250px}.contract-records-page .finance-table.payment-records .row{grid-template-columns:1.35fr .8fr 1.6fr .75fr .7fr .75fr .75fr .7fr .75fr .75fr 1.05fr 1.1fr}.contract-record-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.contract-record-stats article{min-height:82px}.contract-records-page .payment-detail-items .row{grid-template-columns:.8fr 1.7fr .8fr .8fr .8fr .7fr}.contract-management-page .contract-list-table{min-width:1280px}.contract-management-page .contract-list-table .row{grid-template-columns:1.25fr .95fr 1.5fr .65fr .8fr .8fr .7fr .75fr 1fr 2.2fr}.contract-management-page .contract-list-table .row small{color:#8a94a3;margin-top:3px;font-size:10px;display:block}.discount-settings-intro{border-bottom:1px solid #edf0f3;align-items:center;padding:18px 20px;display:flex}.discount-settings-intro>div{color:#f47a00;align-items:center;gap:10px;display:flex}.discount-settings-intro strong{color:#354052;font-size:15px}.discount-settings-intro p{color:#8a94a3;margin:4px 0 0;font-size:11px}.discount-settings-table{min-width:760px}.discount-settings-table .academy-table-row{grid-template-columns:2fr 1fr 1fr 1.2fr .7fr 1.1fr}.discount-settings-table button{color:#e6750a;cursor:pointer;background:#fffaf5;border:1px solid #f2bd83;border-radius:3px;align-items:center;gap:4px;height:28px;padding:0 8px;font-size:11px;display:inline-flex}.receipt-page{color:#1f2937;background:#f3f5f7;min-height:100vh;padding:32px}.receipt-paper{box-sizing:border-box;background:#fff;width:148mm;min-height:190mm;margin:0 auto;padding:18mm 14mm;box-shadow:0 4px 18px #0f172a1f}.receipt-paper>header{text-align:center;border-bottom:1px solid #d9dee7;justify-content:center;align-items:center;gap:12px;padding-bottom:14px;display:flex}.receipt-logo{color:#fff;background:#f47a00;border-radius:8px;place-items:center;width:38px;height:38px;font-size:22px;font-weight:700;display:grid}.receipt-logo.has-image{background-color:#0000;background-position:50%;background-repeat:no-repeat;background-size:contain}.receipt-paper h1{margin:0;font-size:20px}.receipt-paper header p{color:#687386;margin:4px 0 0}.receipt-meta,.receipt-paper footer,.receipt-student,.receipt-total{justify-content:space-between;gap:12px;display:flex}.receipt-meta{color:#667085;padding:12px 0;font-size:11px}.receipt-student{margin:0 0 16px}.receipt-student dt{color:#8b95a5;font-size:11px}.receipt-student dd{margin:4px 0 0;font-size:13px}.receipt-paper table{border-collapse:collapse;width:100%;font-size:12px}.receipt-paper td,.receipt-paper th{text-align:left;border-bottom:1px solid #e7ebf0;padding:9px 6px}.receipt-paper td:last-child,.receipt-paper th:last-child{text-align:right}.receipt-total{color:#677286;flex-wrap:wrap;justify-content:flex-end;margin-top:16px;font-size:12px}.receipt-total strong{color:#f47a00;font-size:16px}.receipt-method{color:#4e5c70;margin:14px 0 40px;font-size:12px}.receipt-paper footer{color:#6f7b8d;margin-top:56px;font-size:11px}.receipt-toolbar{justify-content:center;gap:10px;margin:20px auto;display:flex}.receipt-toolbar button{cursor:pointer;background:#fff;border:1px solid #dbe1e8;border-radius:4px;min-height:34px;padding:0 18px}@media print{.receipt-page{background:#fff;padding:0}.receipt-paper{width:148mm;min-height:190mm;box-shadow:none;margin:0}.receipt-toolbar{display:none}}@media (max-width:1100px){.contract-course-form{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.contract-settlement,.contract-student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-course-form{grid-template-columns:1fr 1fr}.contract-course-form label:first-child{grid-column:1/-1}.contract-items{overflow-x:auto}.contract-items>div{min-width:940px}.contract-settlement-summary{white-space:nowrap;justify-content:flex-start;overflow-x:auto}.contract-footer{flex-wrap:wrap}.contract-footer span{width:100%}.receipt-page{padding:12px}.receipt-paper{width:100%;min-height:auto;padding:10mm}}.one-to-one-page{background:#f5f7fa;min-height:100%}.one-to-one-filters{flex-wrap:wrap}.one-to-one-filters>input[type=date]{color:#4b5563;background:#fff;border:1px solid #dce1e7;border-radius:3px;min-width:142px;height:34px;padding:0 9px}.one-to-one-table{min-width:1040px}.one-to-one-table .academy-table-row{grid-template-columns:.9fr 1fr 1.1fr 1.25fr 1fr .9fr .6fr .7fr 1.8fr}.one-to-one-table .academy-table-row small{color:#9aa3af;margin-top:3px;font-size:11px;display:block}.one-to-one-table .academy-table-row>span:nth-child(3) strong{color:#25354c;font-weight:600}.one-to-one-table .academy-status.one_on_one{color:#7c3aed;background:#f3e8ff}.one-to-one-week-view{overflow-x:auto}.one-to-one-week-toolbar{color:#566273;border-bottom:1px solid #edf0f3;justify-content:center;align-items:center;gap:18px;min-height:48px;display:flex}.one-to-one-week-toolbar button{color:#657184;cursor:pointer;background:#fff;border:1px solid #dce1e7;border-radius:3px;align-items:center;gap:4px;min-height:30px;padding:0 8px;display:inline-flex}.one-to-one-week-grid{border-top:1px solid #edf0f3;border-left:1px solid #edf0f3;grid-template-columns:110px repeat(7,minmax(138px,1fr));min-width:1120px;display:grid}.one-to-one-week-cell,.one-to-one-week-corner,.one-to-one-week-head,.one-to-one-week-row>strong{border-bottom:1px solid #edf0f3;border-right:1px solid #edf0f3;min-height:48px;padding:12px 10px}.one-to-one-week-corner,.one-to-one-week-head{color:#667085;text-align:center;background:#fafbfc;font-size:12px}.one-to-one-week-head{color:#475569;font-weight:600}.one-to-one-week-row{display:contents}.one-to-one-week-row>strong{color:#3d495b;background:#fafbfc;justify-content:center;align-items:flex-start;font-size:13px;display:flex}.one-to-one-week-cell{background:#fff;min-height:112px;padding:5px;position:relative}.one-to-one-week-card{color:#35516e;text-align:left;cursor:pointer;background:#f5faff;border:1px solid #c4d7eb;border-left:3px solid #4e96dc;border-radius:3px;flex-direction:column;width:100%;margin-bottom:5px;padding:7px 8px;display:flex}.one-to-one-week-card:hover{border-color:#f47a00;box-shadow:0 2px 8px #f47a0024}.one-to-one-week-card b{color:#25354c;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.one-to-one-week-card small,.one-to-one-week-card span{color:#778397;margin-top:3px;font-size:11px}.one-to-one-week-card.completed{background:#f2fbf6;border-left-color:#2da66a}.one-to-one-week-card.canceled{color:#9aa2ae;background:#f4f5f6;border-left-color:#a4acb7;text-decoration:line-through}.academy-radio-field{border:0;align-items:center;gap:18px;margin:0;padding:0;display:flex}.academy-radio-field legend{color:#697487;width:100%;margin-bottom:6px;font-size:12px}.academy-radio-field label{color:#4b5563;cursor:pointer;align-items:center;gap:5px;display:inline-flex}.academy-radio-field input{accent-color:#f47a00}@media (max-width:768px){.one-to-one-filters{grid-template-columns:1fr 1fr;display:grid}.one-to-one-filters .schedule-view-switch,.one-to-one-filters label{grid-column:1/-1}.one-to-one-filters input,.one-to-one-filters select{width:100%;min-width:0}.one-to-one-table{min-width:960px}.one-to-one-week-toolbar{justify-content:space-between}}.finance-page{background:#f5f6f8}.finance-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px 16px 0;display:grid}.finance-stats article{background:#fff;border:1px solid #e9ebef;border-radius:5px;align-items:center;gap:12px;min-height:82px;padding:16px;display:flex}.finance-stats article>svg{box-sizing:content-box;border-radius:4px;padding:10px}.finance-stats article div{gap:5px;min-width:0;display:grid}.finance-stats article span{color:#8c95a3;font-size:11px}.finance-stats article strong{color:#27303e;font-size:20px;font-weight:600}.finance-stats .green svg{color:#1d9b70;background:#eaf8f3}.finance-stats .blue svg{color:#397cc8;background:#edf5ff}.finance-stats .orange svg{color:#ed7b13;background:#fff3e7}.finance-stats .red svg{color:#d65d59;background:#fff0ef}.finance-trend{background:#fff;border:1px solid #e8ebef;border-radius:5px;margin:12px 16px 0}.finance-trend header{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;height:42px;padding:0 15px;display:flex}.finance-trend header strong{color:#354052;font-size:12px}.finance-trend header span{color:#9aa2ad;font-size:10px}.finance-trend>div{height:178px;padding:8px 12px 5px}.finance-filters{background:#fff;border:1px solid #e7eaee;border-radius:5px;align-items:center;gap:8px;margin:12px 16px;padding:12px;display:flex}.finance-filters label{border:1px solid #dce1e7;border-radius:3px;align-items:center;gap:7px;width:190px;height:34px;padding:0 9px;display:flex}.finance-filters label input{border:0;outline:0;flex:1;min-width:0}.finance-filters select,.finance-filters>input{color:#566170;background:#fff;border:1px solid #dce1e7;border-radius:3px;height:34px;padding:0 9px;font-size:11px}.finance-filters>span{color:#9aa2ad;font-size:11px}.finance-filters>button{color:#fff;cursor:pointer;background:#f47a00;border:1px solid #f47a00;border-radius:3px;align-items:center;gap:5px;height:34px;padding:0 14px;display:inline-flex}.finance-filters>button:last-child{color:#606a78;background:#fff;border-color:#dce1e7}.finance-panel{background:#fff;border:1px solid #e7eaee;border-radius:5px;margin:0 16px 16px;overflow:hidden}.finance-table{overflow-x:auto}.finance-table .row{color:#586272;border-bottom:1px solid #edf0f3;align-items:center;gap:10px;min-width:1420px;min-height:48px;padding:0 13px;font-size:10px;display:grid}.finance-table.payment .row{grid-template-columns:1.25fr .7fr 1fr .65fr .65fr .65fr .7fr .7fr .7fr 1.05fr .7fr .9fr}.finance-table.refund .row{grid-template-columns:1.25fr .8fr 1.25fr .9fr .75fr .6fr 1.2fr .7fr 1fr .7fr;min-width:1180px}.finance-table .row.head{color:#87909d;background:#fafbfc;min-height:42px}.finance-table .row strong{color:#364153;font-weight:550}.finance-paid{color:#18845f;font-weight:600}.finance-refund{color:#c54f4f;font-weight:600}.payment-method-tag,.payment-status-tag,.refund-status{border-radius:2px;justify-content:center;align-items:center;width:max-content;max-width:100%;padding:3px 7px;display:inline-flex}.payment-method-tag.wechat{color:#18845f;background:#eaf8f3}.payment-method-tag.alipay,.payment-method-tag.card{color:#2d71bd;background:#edf5ff}.payment-method-tag.bank,.payment-method-tag.cash,.payment-method-tag.other{color:#7a647d;background:#f4f1f5}.payment-status-tag.paid,.refund-status.approved{color:#18845f;background:#eaf8f3}.payment-status-tag.unpaid,.refund-status.pending{color:#b86f13;background:#fff5e8}.payment-status-tag.partial_refund,.payment-status-tag.refunded,.refund-status.rejected{color:#bd4b4b;background:#fff0ef}.refund-balance-cell{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.refund-balance-cell small{color:#667085;white-space:nowrap;line-height:1.45}.finance-actions{flex-wrap:wrap;gap:7px;display:flex}.finance-actions :is(button,.print-navigation-link){color:#3579c8;cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:0;display:inline-flex}.finance-actions button:last-child{color:#d15b55}.finance-actions button:disabled{color:#bac0c8;cursor:not-allowed}.finance-pagination{color:#7d8693;justify-content:flex-end;align-items:center;gap:9px;min-height:50px;padding:0 14px;font-size:11px;display:flex}.finance-pagination button,.finance-pagination select{color:#566170;background:#fff;border:1px solid #dde2e8;border-radius:3px;height:30px;padding:0 9px}.finance-pagination button:disabled{opacity:.45}.payment-form{gap:18px;display:grid}.payment-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.payment-form-grid label,.payment-settlement label,.refund-form label{color:#606a78;gap:6px;font-size:11px;display:grid}.payment-form input,.payment-form select,.payment-form textarea,.refund-form input,.refund-form textarea{color:#3d4654;background:#fff;border:1px solid #dce1e7;border-radius:3px;outline:0;width:100%;height:35px;padding:0 9px}.payment-form textarea,.refund-form textarea{resize:vertical;min-height:72px;padding-block:8px}.payment-student-search>div{border:1px solid #dce1e7;border-radius:3px;align-items:center;gap:6px;height:35px;padding:0 9px;display:flex}.payment-student-search>div input{border:0;height:31px;padding:0}.payment-items{border:1px solid #e3e7ec}.payment-items>header{background:#fafbfc;justify-content:space-between;align-items:center;min-height:42px;padding:0 12px;display:flex}.payment-items>header strong{color:#354052;font-size:12px}.payment-items>header button{color:#f47a00;background:0 0;border:0;align-items:center;gap:4px;display:inline-flex}.payment-item-table{overflow-x:auto}.payment-item-table .row{border-top:1px solid #edf0f3;grid-template-columns:.9fr 1.8fr .8fr .7fr .35fr;align-items:center;gap:10px;min-width:700px;min-height:48px;padding:6px 11px;display:grid}.payment-item-table .row.head{color:#8c95a2;background:#fcfdfe;min-height:36px;padding-block:0;font-size:10px}.payment-item-table .row button{color:#d25b55;background:0 0;border:0;place-items:center;width:30px;height:30px;display:grid}.payment-settlement{background:#fafbfc;border:1px solid #e5e8ec;grid-template-columns:180px 180px minmax(0,1fr);gap:12px;padding:14px;display:grid}.payment-settlement .full{grid-column:1/-1}.payment-course-discounts{color:#606a78;gap:6px;font-size:11px;display:grid}.payment-course-discounts select{width:100%}.payment-methods{color:#606a78;gap:6px;font-size:11px;display:grid}.payment-methods>div{flex-wrap:wrap;gap:6px;display:flex}.payment-methods button{color:#65707d;background:#fff;border:1px solid #dce1e7;border-radius:3px;height:35px;padding:0 13px}.payment-methods button.selected{color:#fff;background:#f47a00;border-color:#f47a00}.finance-modal-total{color:#737d89;margin-right:auto;font-size:11px}.finance-modal-total strong{color:#e56f0c;font-size:14px}.payment-success-summary{color:#65707d;gap:10px;padding:16px 4px;display:grid}.payment-success-summary strong{color:#1f2937;font-size:16px}.payment-detail{gap:15px;display:grid}.payment-detail-summary{background:#e7eaee;border:1px solid #e7eaee;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.payment-detail-summary div{background:#fafbfc;align-content:center;gap:5px;min-height:68px;padding:10px 12px;display:grid}.payment-detail-summary span{color:#9099a5;font-size:10px}.payment-detail-summary strong{color:#364153;font-size:12px}.payment-detail-student{background:#fff8f1;border-left:3px solid #f47a00;align-items:center;gap:18px;padding:13px;display:flex}.payment-detail-student strong{color:#303947}.payment-detail-student span{color:#747e8b;font-size:11px}.payment-detail-items{border:1px solid #e4e8ed}.payment-detail-items .row{color:#606b79;border-bottom:1px solid #edf0f3;grid-template-columns:1fr 2fr 1fr .7fr;align-items:center;gap:10px;min-height:42px;padding:0 12px;font-size:11px;display:grid}.payment-detail-items .row.head{color:#8d96a2;background:#fafbfc}.payment-detail-total{color:#7c8591;justify-content:flex-end;gap:20px;font-size:11px;display:flex}.payment-detail-total strong{color:#e56f0c;font-size:14px}.payment-refunds{border:1px solid #f0d2cf}.payment-refunds header{color:#b84e49;background:#fff4f3;padding:10px 12px;font-size:11px}.payment-refunds div{color:#697381;grid-template-columns:1.2fr 1fr 2fr;gap:12px;padding:10px 12px;font-size:11px;display:grid}.payment-remark{color:#737d8a;background:#f8f9fb;margin:0;padding:11px;font-size:11px}.refund-form{grid-template-columns:1fr 1fr;gap:15px;display:grid}.refund-form>section{color:#707a87;background:#faf5ef;border:1px solid #efdfcc;grid-column:1/-1;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:10px;padding:13px;font-size:11px;display:grid}.refund-form .full{grid-column:1/-1}.class-roster-add{grid-template-columns:1.35fr 1.25fr .8fr .65fr auto auto}.class-roster-add button.charge{background:#2979c8;align-items:center;gap:5px;display:inline-flex}.class-roster-table .row{grid-template-columns:1.05fr .5fr .65fr 1fr .78fr .65fr .6fr 1.45fr}.class-roster-actions button:first-child{color:#e47718}.class-roster-actions button:nth-child(2){color:#3e82d7}@media (max-width:1000px){.finance-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-filters{flex-wrap:wrap}.payment-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-settlement{grid-template-columns:1fr 1fr}.payment-methods{grid-column:1/-1}.class-roster-add{grid-template-columns:1fr 1fr}}@media (max-width:640px){.finance-stats{grid-template-columns:1fr;padding:10px}.finance-filters,.finance-panel,.finance-trend{margin:10px}.finance-trend>div{height:150px}.finance-filters label,.finance-filters>*{width:100%}.finance-filters>span{display:none}.payment-form-grid,.payment-settlement,.refund-form{grid-template-columns:1fr}.payment-methods,.payment-settlement .full,.refund-form .full,.refund-form>section{grid-column:auto}.payment-detail-summary{grid-template-columns:1fr 1fr}.payment-detail-student,.payment-detail-total{flex-direction:column;align-items:flex-start;gap:6px}.payment-refunds div{grid-template-columns:1fr}.finance-modal-total{width:100%;margin:0 0 3px}.refund-form>section{grid-template-columns:1fr 1fr}.class-roster-add{grid-template-columns:1fr}}.student-detail-page{color:#3e4856;background:#f4f6f8;min-height:100%;padding-bottom:18px}.student-detail-heading{background:#fff;border-bottom:1px solid #e7eaee;align-items:center;gap:18px;min-height:54px;padding:0 18px;display:flex}.student-detail-heading button{color:#65707f;background:0 0;border:0;align-items:center;gap:5px;display:inline-flex}.student-detail-heading span{color:#9aa2ae;font-size:11px}.student-profile-card{background:#fff;border:1px solid #e5e8ed;border-radius:5px;margin:14px 16px}.student-profile-main{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:17px;padding:20px;display:grid}.student-avatar{color:#fff;border-radius:50%;place-items:center;width:66px;height:66px;font-size:24px;font-weight:600;display:grid}.student-identity{min-width:0}.student-identity>div{align-items:center;gap:10px;display:flex}.student-identity h1{color:#273140;margin:0;font-size:21px}.student-identity p{color:#7c8694;margin:7px 0 12px;font-size:11px}.student-identity dl{flex-wrap:wrap;gap:26px;margin:0;display:flex}.student-identity dl div{gap:3px;display:grid}.student-identity dt{color:#a0a7b1;font-size:9px}.student-identity dd{color:#4f5967;margin:0;font-size:11px}.student-identity dd a{color:#327ac8;align-items:center;gap:4px;display:inline-flex}.student-profile-actions{align-self:start;gap:8px;display:flex}.student-profile-actions button{color:#53606f;background:#fff;border:1px solid #dce1e7;border-radius:3px;align-items:center;gap:5px;height:33px;padding:0 12px;display:inline-flex}.student-profile-actions button.danger{color:#be4c4c;border-color:#efc5c2}.student-profile-actions button.success{color:#16805c;border-color:#b9dfd2}.student-stat-row{border-top:1px solid #e8ebef;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.student-stat-row article{border-right:1px solid #e8ebef;justify-content:center;align-items:center;gap:11px;min-height:78px;display:flex}.student-stat-row article:last-child{border-right:0}.student-stat-row svg{color:#f47a00}.student-stat-row article div{gap:4px;display:grid}.student-stat-row span{color:#929ba7;font-size:10px}.student-stat-row strong{color:#2e3847;font-size:18px}.student-tabs-panel{background:#fff;border:1px solid #e5e8ed;border-radius:5px;margin:0 16px;overflow:hidden}.student-tabs-panel>nav{border-bottom:1px solid #e7eaee;height:48px;padding:0 15px;display:flex}.student-tabs-panel>nav button{color:#687382;background:0 0;border:0;border-bottom:2px solid #0000;min-width:92px;padding:0 15px}.student-tabs-panel>nav button.active{color:#f47a00;border-bottom-color:#f47a00}.student-tab-content>header{justify-content:space-between;align-items:center;min-height:52px;padding:0 15px;display:flex}.student-tab-content>header strong{color:#303a48;font-size:13px}.student-tab-content>header>span{color:#929ba7;font-size:10px}.student-tab-content>header button{color:#fff;background:#f47a00;border:0;border-radius:3px;align-items:center;gap:5px;height:32px;padding:0 12px;display:inline-flex}.student-detail-table{border-top:1px solid #e8ebef;overflow-x:auto}.student-detail-table .row{color:#596473;border-bottom:1px solid #edf0f3;align-items:center;gap:10px;min-width:930px;min-height:49px;padding:0 14px;font-size:11px;display:grid}.student-detail-table .row.head{color:#88919d;background:#fafbfc;min-height:40px}.student-detail-table .row strong{color:#354052;font-weight:550}.student-detail-table.enrollments .row{grid-template-columns:1.35fr 1fr .8fr .65fr .65fr .65fr .8fr 1.1fr}.student-detail-table.attendance .row{grid-template-columns:.9fr .55fr 1.35fr 1fr .7fr .65fr .8fr}.student-detail-table.payments .row{grid-template-columns:1.25fr .8fr 1.2fr .9fr .7fr .65fr 1.35fr .75fr;min-width:1100px}.student-detail-table.hour-logs .row{grid-template-columns:1.2fr .6fr .65fr .7fr 1.2fr 1.55fr .8fr;min-width:1080px}.student-detail-table small{color:#9aa2ad;margin-top:3px;font-size:9px;display:block}.hours-remain,.payment-money{color:#16805d;font-weight:600}.student-row-actions{flex-wrap:wrap;gap:6px;display:flex}.student-row-actions button{color:#397cc8;background:0 0;border:0;padding:2px 0}.student-row-actions button:last-child{color:#ca5353}.student-row-actions button:disabled{color:#b9c0c9}.attendance-label,.enrollment-status,.hour-type,.student-payment-status{border-radius:2px;width:max-content;padding:3px 7px;font-style:normal;display:inline-flex}.attendance-label.present,.enrollment-status.active,.hour-type.enroll{color:#16805d;background:#eaf8f3}.attendance-label.absent,.enrollment-status.quit,.hour-type.refund{color:#bf4d4d;background:#fff0ef}.attendance-label.leave,.enrollment-status.transferred,.hour-type.adjust{color:#3974bd;background:#eef5ff}.attendance-label.late,.hour-type.attend{color:#b96b12;background:#fff5e8}.attendance-label.makeup{color:#8b5cb0;background:#f6effb}.hour-positive{color:#16805d!important}.hour-negative{color:#c44f4f!important}.student-payment-status.paid{color:#16805d;background:#eaf8f3}.student-payment-status.partial_refund,.student-payment-status.refunded{color:#c14e4e;background:#fff0ef}.student-attendance-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:14px;display:grid}.student-attendance-stats article{text-align:center;background:#f8fafc;border:1px solid #e5e9ee;place-content:center;gap:4px;min-height:64px;display:grid}.student-attendance-stats span{color:#929ba7;font-size:9px}.student-attendance-stats strong{color:#303b49;font-size:17px}.student-detail-pagination{color:#7f8895;justify-content:flex-end;align-items:center;gap:9px;min-height:50px;padding:0 14px;font-size:10px;display:flex}.student-detail-pagination button{color:#596472;background:#fff;border:1px solid #dce1e7;height:29px;padding:0 9px}.student-detail-pagination button:disabled{opacity:.45}.student-name-link{color:#347bc8;align-items:center;gap:6px;display:inline-flex}.student-name-link:hover{color:#f47a00}@media (max-width:760px){.student-profile-main{grid-template-columns:auto 1fr}.student-profile-actions{grid-column:1/-1}.student-stat-row{grid-template-columns:1fr 1fr}.student-stat-row article:nth-child(2){border-right:0}.student-stat-row article:nth-child(-n+2){border-bottom:1px solid #e8ebef}.student-profile-card,.student-tabs-panel{margin-inline:10px}.student-tabs-panel>nav{overflow-x:auto}.student-attendance-stats{grid-template-columns:repeat(3,1fr)}}@media (max-width:430px){.student-detail-heading{padding-inline:10px}.student-profile-main{text-align:center;grid-template-columns:1fr}.student-avatar{margin:auto}.student-identity dl,.student-identity>div,.student-profile-actions{justify-content:center}.student-stat-row strong{font-size:15px}.student-attendance-stats{grid-template-columns:1fr 1fr}}.staff-table{min-width:1080px}.staff-table .row{color:#596473;border-bottom:1px solid #edf0f3;grid-template-columns:1fr .85fr .9fr .65fr .6fr 1.1fr .8fr 1.55fr;align-items:center;gap:10px;min-height:50px;padding:0 14px;font-size:11px;display:grid}.staff-table .row.head{color:#89929e;background:#fafbfc;min-height:41px}.staff-table .row strong{color:#354052;align-items:center;gap:6px;font-weight:550;display:inline-flex}.staff-role{border-radius:2px;width:max-content;padding:3px 8px;display:inline-flex}.staff-role.principal{color:#b46a11;background:#fff4e5}.staff-role.academic{color:#3976bd;background:#edf5ff}.staff-role.sales{color:#865ab0;background:#f5effa}.staff-role.teacher{color:#18805d;background:#eaf8f3}.staff-actions{flex-wrap:wrap;gap:7px;display:flex}.staff-actions button{color:#397bc6;background:0 0;border:0;align-items:center;gap:3px;padding:0;display:inline-flex}.staff-actions button:last-child{color:#c65353}.staff-pagination{color:#7f8895;justify-content:flex-end;align-items:center;gap:9px;min-height:50px;padding:0 14px;font-size:10px;display:flex}.staff-pagination button{color:#596472;background:#fff;border:1px solid #dce1e7;height:29px;padding:0 9px}.staff-pagination button:disabled{opacity:.45}.staff-reset-form{gap:10px;display:grid}.staff-reset-form label{color:#616a77;gap:7px;font-size:11px;display:grid}.staff-reset-form input{border:1px solid #dce1e7;border-radius:3px;height:35px;padding:0 9px}.staff-reset-form p{color:#949ca7;margin:0;font-size:10px}@media (max-width:600px){.staff-toolbar{flex-direction:column;align-items:stretch}.staff-toolbar select{width:100%}.staff-pagination{justify-content:center}}.tenant-dashboard{color:#273142;letter-spacing:0;background:#f3f5f7;min-height:100%;padding:20px}.tenant-dashboard__heading{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.tenant-dashboard__heading h1{margin:0;font-size:20px;font-weight:650;line-height:28px}.tenant-dashboard__heading p{color:#8b93a1;margin:2px 0 0;font-size:12px}.tenant-dashboard-panel__header>button{color:#697384;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;display:inline-flex}.tenant-dashboard__heading-actions{align-items:center;gap:8px;display:flex}.tenant-dashboard__heading-actions>button{color:#697384;cursor:pointer;background:#fff;border:1px solid #dfe3e8;border-radius:4px;justify-content:center;align-items:center;gap:5px;height:34px;padding:0 12px;display:inline-flex}.tenant-dashboard-panel__header>button:hover,.tenant-dashboard__heading-actions>button:hover{color:#ed7b19}.tenant-dashboard__heading-actions>button.is-loading svg{animation:tenant-dashboard-spin .8s linear infinite}.tenant-dashboard__heading-actions>button.tenant-dashboard-fast-attendance{color:#fff;background:#f47a00;border-color:#f47a00;box-shadow:0 3px 9px #f47a002e}.tenant-dashboard__heading-actions>button.tenant-dashboard-fast-attendance:hover{color:#fff;background:#e76f00}.tenant-dashboard__warning{color:#a55b22;background:#fff8f2;border:1px solid #f4d1b8;border-radius:4px;margin-bottom:12px;padding:8px 12px;font-size:12px}.tenant-dashboard-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.tenant-dashboard-metric{min-width:0;height:104px;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e6e9ed;border-radius:6px;grid-template-columns:46px minmax(0,1fr) 15px;align-items:center;gap:11px;padding:0 14px;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid;box-shadow:0 2px 7px #1f2a3a09}.tenant-dashboard-metric:hover{border-color:var(--metric-tone);transform:translateY(-1px);box-shadow:0 7px 18px #1f2a3a14}.tenant-dashboard-metric__icon{width:46px;height:46px;color:var(--metric-tone);background:var(--metric-background);border-radius:6px;place-items:center;display:grid}.tenant-dashboard-metric__copy{flex-direction:column;min-width:0;display:flex}.tenant-dashboard-metric__copy small{color:#7d8593;font-size:12px}.tenant-dashboard-metric__copy strong{color:#1e2938;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:24px;font-weight:650;line-height:30px;overflow:hidden}.tenant-dashboard-metric>svg{color:#b4bbc5}.tenant-dashboard-leads{color:#3c4655;text-align:left;cursor:pointer;background:#fff;border:1px solid #e6e9ed;border-radius:6px;grid-template-columns:minmax(150px,1.5fr) repeat(2,minmax(110px,.8fr)) auto;align-items:center;gap:16px;min-height:64px;margin-top:12px;padding:0 16px;transition:border-color .16s,box-shadow .16s;display:grid;box-shadow:0 2px 7px #1f2a3a06}.tenant-dashboard-leads:hover{border-color:#d88b42;box-shadow:0 6px 15px #1f2a3a12}.tenant-dashboard-leads__title{color:#d27625;align-items:center;gap:8px;font-size:13px;font-weight:650;display:inline-flex}.tenant-dashboard-leads>span:not(.tenant-dashboard-leads__title):not(.tenant-dashboard-leads__link){align-items:baseline;gap:7px;display:flex}.tenant-dashboard-leads strong{color:#253143;font-variant-numeric:tabular-nums;font-size:20px;font-weight:650}.tenant-dashboard-leads small{color:#8d96a2;font-size:11px}.tenant-dashboard-leads__link{color:#7c8592;justify-content:flex-end;align-items:center;gap:3px;font-size:12px;display:inline-flex}.tenant-dashboard-leads:hover .tenant-dashboard-leads__link{color:#ed7b19}.tenant-dashboard-insights{grid-template-columns:minmax(0,1fr) 270px;gap:12px;display:grid}.tenant-dashboard-renewals{color:#5d6674;cursor:pointer;background:#fffaf5;border:1px solid #f0d6b8;border-radius:6px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;min-height:64px;margin-top:12px;padding:0 14px;display:grid}.tenant-dashboard-renewals:hover{border-color:#ed7b19;box-shadow:0 6px 15px #1f2a3a12}.tenant-dashboard-renewals>span:first-child{color:#e37b1d;background:#fff0df;border-radius:5px;place-items:center;width:36px;height:36px;display:grid}.tenant-dashboard-renewals>span:nth-child(2){flex-direction:column;display:flex}.tenant-dashboard-renewals strong{color:#d86413;font-size:20px;line-height:22px}.tenant-dashboard-renewals small{color:#8b93a0;margin-top:2px;font-size:11px}.tenant-dashboard-renewals>span:last-child{color:#7d8692;align-items:center;gap:3px;font-size:12px;display:inline-flex}.tenant-dashboard-grid{gap:12px;margin-top:12px;display:grid}.tenant-dashboard-grid--bottom,.tenant-dashboard-grid--schedule{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.tenant-dashboard-grid--ranking{grid-template-columns:minmax(0,1fr)}.tenant-dashboard-grid--charts{grid-template-columns:repeat(2,minmax(0,1fr))}.tenant-dashboard-panel{background:#fff;border:1px solid #e6e9ed;border-radius:6px;min-width:0;box-shadow:0 2px 7px #1f2a3a06}.tenant-dashboard-panel__header{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;height:50px;padding:0 16px;display:flex}.tenant-dashboard-panel__header h2{color:#303a49;margin:0;font-size:14px;font-weight:650}.tenant-dashboard-panel__header>button{font-size:12px}.tenant-dashboard-panel--reminders,.tenant-dashboard-panel--schedule{min-height:260px}.tenant-dashboard-schedule{padding:0 16px 12px;overflow-x:auto}.tenant-dashboard-schedule__row{color:#596373;text-align:left;cursor:default;background:0 0;border:0;border-bottom:1px solid #f0f2f5;grid-template-columns:128px minmax(145px,1.5fr) minmax(76px,.8fr) minmax(86px,.8fr) 50px 68px 52px;align-items:center;gap:10px;width:100%;min-width:790px;min-height:47px;padding:0 8px;font-size:12px;display:grid}.tenant-dashboard-schedule__row:hover:not(.is-head){background:#fff8f1}.tenant-dashboard-schedule__row.is-head{color:#8b93a0;cursor:default;height:39px;min-height:39px}.tenant-dashboard-schedule__row strong{color:#303a49;font-variant-numeric:tabular-nums;font-weight:600}.tenant-dashboard-schedule__row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tenant-dashboard-schedule__row em{color:#c06d26;background:#fff2e5;border-radius:3px;width:fit-content;padding:3px 7px;font-style:normal}.tenant-dashboard-schedule__row em.is-done{color:#168b69;background:#e9f7f2}.tenant-dashboard-roll-button{color:#d86b00;cursor:pointer;background:#fff8f0;border:1px solid #f2a04e;border-radius:3px;min-height:28px}.tenant-dashboard-roll-button:hover{color:#fff;background:#f47a00}.tenant-dashboard-reminders{max-height:274px;padding:6px 14px 12px;overflow-y:auto}.tenant-dashboard-reminders button{width:100%;min-height:55px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #f0f2f5;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:5px 2px;display:grid}.tenant-dashboard-reminders button:hover strong{color:#ed7b19}.tenant-dashboard-reminders__icon{color:#d98632;background:#fff3e7;border-radius:5px;place-items:center;width:32px;height:32px;display:grid}.tenant-dashboard-reminders button>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.tenant-dashboard-reminders small,.tenant-dashboard-reminders strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tenant-dashboard-reminders strong{color:#3a4352;font-size:12px;font-weight:600}.tenant-dashboard-reminders small{color:#9299a5;margin-top:3px;font-size:11px}.tenant-dashboard-reminders em{color:#9c762e;font-variant-numeric:tabular-nums;font-size:12px;font-style:normal}.tenant-dashboard-reminders em.is-urgent{color:#d94b55;font-weight:650}.tenant-dashboard-panel--chart{height:330px}.tenant-dashboard-chart{width:100%;height:275px;padding:0 8px 8px}.tenant-dashboard-panel--quick,.tenant-dashboard-panel--ranking{min-height:310px}.tenant-dashboard-ranking{padding:7px 16px 14px}.tenant-dashboard-ranking button{width:100%;min-height:47px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #f0f2f5;grid-template-columns:28px minmax(0,1fr) 45px;align-items:center;gap:10px;padding:5px 4px;display:grid}.tenant-dashboard-ranking__index{color:#7e8795;background:#f0f2f5;border-radius:4px;place-items:center;width:22px;height:22px;font-size:11px;font-weight:650;display:grid}.tenant-dashboard-ranking__index.rank-1{color:#a76010;background:#ffecce}.tenant-dashboard-ranking__index.rank-2{color:#5a6f87;background:#e9eef3}.tenant-dashboard-ranking__index.rank-3{color:#a25e3c;background:#f4e5dc}.tenant-dashboard-ranking__content{flex-direction:column;min-width:0;display:flex}.tenant-dashboard-ranking__content>span:first-child{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.tenant-dashboard-ranking__content strong{color:#3b4554;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.tenant-dashboard-ranking__content small{color:#8b93a0;flex:none;font-size:11px}.tenant-dashboard-ranking__track{background:#edf0f3;border-radius:3px;height:5px;margin-top:5px;overflow:hidden}.tenant-dashboard-ranking__track i{border-radius:inherit;background:#ed7b19;height:100%;display:block}.tenant-dashboard-ranking button>em{color:#727b89;text-align:right;font-size:11px;font-style:normal}.tenant-dashboard-quick{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;display:grid}.tenant-dashboard-panel--quick-top{min-height:0;margin-top:12px}.tenant-dashboard-quick--top{grid-template-columns:repeat(5,minmax(0,1fr))}.tenant-dashboard-quick--top button{min-height:82px}.tenant-dashboard-quick button{min-width:0;min-height:103px;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e7eaf0;border-radius:5px;grid-template-columns:38px minmax(0,1fr) 14px;align-items:center;gap:9px;padding:11px;transition:border-color .16s,box-shadow .16s;display:grid}.tenant-dashboard-quick button:hover{border-color:var(--quick-tone);box-shadow:0 5px 13px #1f2a3a12}.tenant-dashboard-quick button>span:first-child{width:36px;height:36px;color:var(--quick-tone);background:#f6f7f9;border-radius:5px;place-items:center;display:grid}.tenant-dashboard-quick button>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.tenant-dashboard-quick strong{color:#3b4554;font-size:12px;font-weight:650}.tenant-dashboard-quick small{color:#9299a5;margin-top:3px;font-size:10px;line-height:15px}.tenant-dashboard-quick button>svg{color:#b3bac4}.tenant-dashboard-empty{color:#a1a8b3;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:205px;font-size:12px;display:flex}.tenant-dashboard-empty--small{min-height:205px}.tenant-dashboard-error{color:#7d8693;text-align:center;background:#f3f5f7;flex-direction:column;justify-content:center;align-items:center;min-height:420px;padding:24px;display:flex}.tenant-dashboard-error>svg{color:#d96a47;margin-bottom:12px}.tenant-dashboard-error strong{color:#3b4554;font-size:15px}.tenant-dashboard-error span{margin-top:5px;font-size:12px}.tenant-dashboard-error button{color:#fff;cursor:pointer;background:#ed7b19;border:0;border-radius:4px;align-items:center;gap:6px;height:36px;margin-top:17px;padding:0 14px;display:inline-flex}.tenant-dashboard-skeleton{background:#f3f5f7;min-height:100%;padding:20px}.tenant-dashboard-skeleton__metrics,.tenant-dashboard-skeleton__row{gap:12px;display:grid}.tenant-dashboard-skeleton__metrics{grid-template-columns:repeat(5,1fr)}.tenant-dashboard-skeleton__metrics span,.tenant-dashboard-skeleton__row span{background:linear-gradient(90deg,#e8ebef 25%,#f5f6f8 50%,#e8ebef 75%) 0 0/200% 100%;border-radius:6px;animation:tenant-dashboard-shimmer 1.25s infinite}.tenant-dashboard-skeleton__metrics span{height:104px}.tenant-dashboard-skeleton__row{grid-template-columns:2fr 1fr;margin-top:12px}.tenant-dashboard-skeleton__row:not(.tenant-dashboard-skeleton__row--wide){grid-template-columns:1fr 1fr}.tenant-dashboard-skeleton__row span{height:300px}@keyframes tenant-dashboard-spin{to{transform:rotate(1turn)}}@keyframes tenant-dashboard-shimmer{to{background-position:-200% 0}}@media (max-width:1100px){.tenant-dashboard-metrics,.tenant-dashboard-quick--top,.tenant-dashboard-skeleton__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:980px){.tenant-dashboard-grid--bottom,.tenant-dashboard-grid--charts,.tenant-dashboard-grid--schedule,.tenant-dashboard-skeleton__row,.tenant-dashboard-skeleton__row:not(.tenant-dashboard-skeleton__row--wide){grid-template-columns:1fr}.tenant-dashboard-panel--chart{height:320px}.tenant-dashboard-insights{grid-template-columns:1fr}.tenant-dashboard-renewals{margin-top:0}}@media (max-width:767px){.tenant-dashboard,.tenant-dashboard-skeleton{padding:12px}.tenant-dashboard__heading h1{font-size:18px}.tenant-dashboard__heading{align-items:flex-start}.tenant-dashboard__heading-actions{flex-direction:column;align-items:stretch}.tenant-dashboard__heading-actions>button{min-height:38px}.tenant-dashboard-metrics,.tenant-dashboard-skeleton__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.tenant-dashboard-metric{height:86px}.tenant-dashboard-metric__copy strong{font-size:22px}.tenant-dashboard-metric[data-metric=monthRevenue]{grid-column:1/-1}.tenant-dashboard-metric[data-metric=monthRevenue] .tenant-dashboard-metric__copy strong{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}.tenant-dashboard-leads{grid-template-columns:1fr 1fr;gap:8px 14px;padding:12px 14px}.tenant-dashboard-leads__title{grid-column:1/-1}.tenant-dashboard-leads__link{grid-column:1/-1;justify-content:flex-start}.tenant-dashboard-quick{grid-template-columns:repeat(2,minmax(0,1fr))}.tenant-dashboard-quick button{min-height:72px}.tenant-dashboard-quick button>svg{display:none}.tenant-dashboard-quick button{grid-template-columns:34px minmax(0,1fr);padding:9px}.tenant-dashboard-quick small{display:none}.tenant-dashboard-panel--quick{min-height:0}.tenant-dashboard-chart{height:255px;padding-left:2px;padding-right:2px}.tenant-dashboard-panel--chart{height:310px}.tenant-dashboard-skeleton__metrics span{height:86px}}@media (prefers-reduced-motion:reduce){.tenant-dashboard-metric,.tenant-dashboard-quick button,.tenant-dashboard-skeleton__metrics span,.tenant-dashboard-skeleton__row span,.tenant-dashboard__heading-actions>button.is-loading svg{transition:none;animation:none}}.leads-page{min-height:calc(100dvh - 78px)}.lead-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:10px;display:grid}.lead-stat-card{background:#fff;border:1px solid #edf0f3;border-radius:6px;min-height:86px;padding:17px 20px;box-shadow:0 2px 9px #10182809}.lead-stat-card span{color:#8b95a5;font-size:12px;display:block}.lead-stat-card strong{color:#202938;margin-top:8px;font-size:24px;font-weight:650;display:block}.lead-stat-card.blue{border-top:3px solid #4b8ff7}.lead-stat-card.orange{border-top:3px solid #f59e0b}.lead-stat-card.red{border-top:3px solid #ee6a63}.lead-stat-card.green{border-top:3px solid #28a777}.lead-stat-card.purple{border-top:3px solid #8b79dc}.lead-toolbar{flex-wrap:wrap}.lead-toolbar select{min-width:112px}.lead-panel{margin:0 10px 14px;padding:0;overflow:hidden}.lead-table{min-width:1220px;overflow-x:auto}.lead-row{color:#4b5563;border-bottom:1px solid #eef0f3;grid-template-columns:94px 125px 72px minmax(130px,1.3fr) 72px 56px 76px 78px 145px 86px 150px;align-items:center;gap:8px;min-height:52px;padding:0 14px;font-size:12px;display:grid}.lead-row--head{color:#8993a3;background:#fafbfc;min-height:44px;font-size:12px}.lead-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lead-name{color:#1769d2;cursor:pointer}.lead-name:hover{color:#f47a00}.lead-phone{color:#477fd4;text-decoration:none}.lead-detail-card a[href=tel\:]:before,.lead-phone:empty:before{content:"无电话 · 请补录";color:#b75b16;background:#fff7ef;border:1px solid #f0b77f;border-radius:5px;align-items:center;min-height:28px;padding:0 7px;font-size:11px;display:inline-flex}.lead-tag{border-radius:3px;align-items:center;width:max-content;max-width:100%;padding:3px 7px;font-size:11px;line-height:1.2;display:inline-flex}.lead-tag--source-referral{color:#6c58a8;background:#f0ebff}.lead-tag--source-douyin{color:#1677a9;background:#e8f7ff}.lead-tag--source-meituan{color:#d15a29;background:#fff0e8}.lead-tag--source-channel{color:#168166;background:#e5f8f0}.lead-tag--source-visit{color:#a06a10;background:#fff5dc}.lead-tag--source-phone{color:#4171ad;background:#edf4ff}.lead-tag--source-other{color:#707986;background:#f1f3f5}.lead-tag--status-new{color:#3379d7;background:#eaf3ff}.lead-tag--status-following{color:#bd7113;background:#fff2db}.lead-tag--status-enrolled{color:#16855f;background:#e8f8f1}.lead-tag--status-lost{color:#7f8791;background:#f0f1f2}.lead-tag--level-hot{color:#d94b45;background:#ffebea}.lead-tag--level-warm{color:#d37a16;background:#fff1dc}.lead-tag--level-cold{color:#747d87;background:#f0f2f4}.lead-tag--follow-phone{color:#3977c5;background:#edf4ff}.lead-tag--follow-wechat{color:#16855f;background:#e7f8f0}.lead-tag--follow-visit{color:#bd7113;background:#fff2db}.lead-tag--follow-other{color:#707986;background:#f0f2f4}.is-overdue{color:#dc433d;font-weight:600}.lead-actions{align-items:center;gap:3px;display:flex;overflow:visible}.lead-actions button{color:#6b7787;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:3px;place-items:center;width:26px;height:26px;padding:0;display:inline-grid}.lead-actions button:hover{color:#f47a00;background:#fff6eb;border-color:#ffd7aa}.lead-pagination{color:#8a94a3;justify-content:flex-end;align-items:center;gap:12px;min-height:52px;padding:0 16px;font-size:12px;display:flex}.lead-pagination button{color:#566171;background:#fff;border:1px solid #e1e5ea;border-radius:3px;height:28px;padding:0 10px}.lead-pagination button:disabled{color:#c4c9d0;cursor:not-allowed}.lead-form section{border-bottom:1px solid #eef0f3;margin-bottom:18px;padding-bottom:14px}.lead-form h3{color:#303946;margin:0 0 12px;font-size:13px;font-weight:600}.lead-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.lead-assign-form label,.lead-follow-form label,.lead-form label,.lead-form-full{color:#697586;flex-direction:column;gap:6px;font-size:12px;display:flex}.lead-assign-form select,.lead-follow-form input,.lead-follow-form textarea,.lead-form input,.lead-form select,.lead-form textarea{color:#303946;background:#fff;border:1px solid #dfe4ea;border-radius:3px;outline:none;width:100%;padding:8px 10px}.lead-assign-form select:focus,.lead-follow-form input:focus,.lead-follow-form textarea:focus,.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:#f2a65b;box-shadow:0 0 0 2px #fff2e3}.lead-form-full{margin-top:2px}.lead-level-field{grid-column:1/-1}.lead-radio-row{align-items:center;gap:20px;height:34px;display:flex}.lead-radio-row label{cursor:pointer;flex-direction:row;align-items:center;gap:5px}.lead-radio-row input{width:auto}.lead-level-dot{background:#c3c9d1;border-radius:50%;width:8px;height:8px}.lead-level-dot.hot{background:#ed6a63}.lead-level-dot.warm{background:#f2a23b}.lead-level-dot.cold{background:#9ba3ad}.lead-form-error{color:#d94b45;margin:10px 0 0;font-size:12px}.lead-drawer-layer{z-index:80;background:#141b245c;position:fixed;inset:0}.lead-drawer{background:#fff;flex-direction:column;width:min(760px,100%);height:100%;animation:lead-drawer-in .22s both;display:flex;position:absolute;top:0;right:0;box-shadow:-10px 0 30px #10182824}.lead-drawer>header{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;min-height:68px;padding:0 22px;display:flex}.lead-drawer>header span{color:#9aa3ae;font-size:11px}.lead-drawer>header h2{color:#202938;margin:3px 0 0;font-size:17px}.lead-drawer>header button{color:#7c8794;cursor:pointer;background:0 0;border:0;place-items:center;width:32px;height:32px;display:grid}.lead-drawer-body{flex:1;grid-template-columns:230px minmax(0,1fr);gap:18px;min-height:0;padding:20px;display:grid;overflow:auto}.lead-detail-card{background:#fbfcfd;border:1px solid #edf0f3;border-radius:6px;align-self:start;padding:16px}.lead-avatar{color:#fff;background:#f47a00;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:10px;font-size:20px;display:grid}.lead-detail-card h3{color:#202938;margin:0 8px 0 0;font-size:17px;display:inline-block}.lead-detail-card dl{margin:16px 0 0}.lead-detail-card dl>div{border-top:1px solid #edf0f3;grid-template-columns:70px 1fr;gap:8px;padding:9px 0;font-size:12px;display:grid}.lead-detail-card dt{color:#99a2ad}.lead-detail-card dd{color:#505b6b;overflow-wrap:anywhere;margin:0}.lead-detail-card a{color:#2c78d7;text-decoration:none}.lead-detail-remark{white-space:pre-wrap}.lead-timeline{min-width:0}.lead-timeline-heading{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;padding-bottom:11px;display:flex}.lead-timeline-heading h3{color:#303946;margin:0;font-size:14px}.lead-timeline-heading span{color:#9aa3ae;font-size:12px}.lead-timeline ol{margin:16px 0 0;padding:0 0 0 22px;list-style:none;position:relative}.lead-timeline ol:before{content:"";background:#e5e8ec;width:1px;position:absolute;top:7px;bottom:7px;left:4px}.lead-timeline li{gap:12px;padding:0 0 22px;display:flex;position:relative}.lead-timeline-dot{background:#fff;border:2px solid #f47a00;border-radius:50%;width:10px;height:10px;position:absolute;top:4px;left:-22px}.lead-timeline li header{align-items:center;gap:8px;display:flex}.lead-timeline li header strong{color:#4a5564;font-size:12px}.lead-timeline li time{color:#a0a8b1;margin-left:auto;font-size:11px}.lead-timeline li p{color:#4e5968;white-space:pre-wrap;margin:8px 0;line-height:1.7}.lead-timeline li small{color:#a16b25;align-items:center;gap:4px;font-size:11px;display:flex}.lead-drawer-footer{border-top:1px solid #edf0f3;justify-content:flex-end;gap:8px;min-height:66px;padding:15px 20px;display:flex}.lead-drawer-footer button{color:#5c6674;cursor:pointer;background:#fff;border:1px solid #dfe4ea;border-radius:3px;align-items:center;gap:5px;height:34px;padding:0 12px;display:inline-flex}.academy-modal footer button.primary,.lead-drawer-footer button.primary{color:#fff;background:#f47a00;border-color:#f47a00}.lead-assign-form,.lead-follow-form{flex-direction:column;gap:17px;display:flex}.lead-follow-methods{gap:7px;display:flex}.lead-follow-methods button{color:#667180;cursor:pointer;background:#fff;border:1px solid #dfe4ea;border-radius:3px;align-items:center;gap:5px;height:32px;padding:0 11px;display:inline-flex}.lead-follow-methods button.active{color:#e07000;background:#fff5e9;border-color:#f4a455}.lead-conversion-confirm{color:#596474;gap:14px;font-size:13px;line-height:1.7;display:grid}.lead-conversion-confirm>p{margin:0}.lead-conversion-confirm dl{background:#fbfcfd;border:1px solid #edf0f3;border-radius:6px;gap:0;margin:0;display:grid}.lead-conversion-confirm dl>div{border-bottom:1px solid #edf0f3;grid-template-columns:88px minmax(0,1fr);gap:12px;padding:9px 12px;display:grid}.lead-conversion-confirm dl>div:last-child{border-bottom:0}.lead-conversion-confirm dt{color:#949daa}.lead-conversion-confirm dd{color:#303a48;overflow-wrap:anywhere;min-width:0;margin:0}@keyframes lead-drawer-in{0%{opacity:.4;transform:translate(30px)}}@media (max-width:900px){.lead-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.lead-drawer-body{grid-template-columns:1fr}.lead-detail-card{align-self:stretch}}@media (max-width:640px){.lead-stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.lead-toolbar{margin:0}.lead-panel{margin:0 0 10px}.lead-form-grid{grid-template-columns:1fr}.lead-level-field{grid-column:auto}.lead-drawer-footer{flex-wrap:wrap}.lead-drawer-footer button{flex:1;justify-content:center;min-height:44px}.lead-actions button,.lead-drawer>header button{min-width:44px;min-height:44px}.lead-drawer-body{padding:14px}}.tenant-settings-page{color:#46505e;min-height:100%}.tenant-settings-panel{background:#fff;border:1px solid #e5e8ed;border-radius:4px;margin:16px}.tenant-settings-error{color:#a34848;align-content:center;place-items:center;gap:12px;min-height:260px;display:grid}.tenant-settings-error button{color:#f47a00;background:#fff;border:1px solid #f0a45d;border-radius:3px;height:34px;padding:0 14px}.tenant-profile-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:14px;margin:16px;display:grid}.tenant-logo-panel{text-align:center;background:#fff;border:1px solid #e5e8ed;border-radius:4px;justify-items:center;padding:28px 20px;display:grid}.tenant-logo-preview{color:#f47a00;background:#fff8f1;border:1px dashed #efb678;border-radius:6px;place-items:center;width:104px;height:104px;display:grid;overflow:hidden}.tenant-logo-preview img{object-fit:contain;width:96px;height:96px}.tenant-logo-panel h2{color:#2f3743;margin:16px 0 5px;font-size:15px}.tenant-logo-panel p{color:#8c95a2;margin:0 0 16px;font-size:11px;line-height:1.7}.tenant-logo-panel button{color:#f47a00;cursor:pointer;background:#fff;border:1px solid #efb678;border-radius:3px;align-items:center;gap:6px;height:34px;padding:0 13px;display:inline-flex}.tenant-logo-panel button:disabled{opacity:.5;cursor:not-allowed}.tenant-logo-panel small{color:#a0a7b1;margin-top:9px;font-size:10px}.tenant-profile-panel{margin:0}.tenant-profile-panel>header{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;min-height:62px;padding:0 22px;display:flex}.tenant-profile-panel>header span{color:#9aa2ae;font-size:10px}.tenant-profile-panel>header h2{color:#2f3743;margin:3px 0 0;font-size:15px}.tenant-profile-panel>header em{color:#946024;background:#fff7e8;border:1px solid #f2dbb6;border-radius:3px;padding:5px 8px;font-size:10px;font-style:normal}.tenant-profile-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px;padding:22px;display:grid}.tenant-profile-form label{color:#68717e;gap:7px;font-size:11px;display:grid}.tenant-profile-form label.full{grid-column:1/-1}.tenant-profile-form input,.tenant-profile-form textarea{color:#404955;background:#fff;border:1px solid #dce1e7;border-radius:3px;outline:0;width:100%}.tenant-profile-form input{height:35px;padding:0 10px}.tenant-profile-form textarea{resize:vertical;padding:9px 10px}.tenant-profile-form input:focus,.tenant-profile-form textarea:focus{border-color:#f47a00;box-shadow:0 0 0 2px #f47a0017}.tenant-profile-form input:disabled,.tenant-profile-form textarea:disabled{color:#707986;background:#f7f8fa}.tenant-profile-meta{border:1px solid #eceff3;border-radius:4px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 22px;display:grid}.tenant-profile-meta div{border-right:1px solid #eceff3;gap:6px;padding:14px 16px;display:grid}.tenant-profile-meta div:last-child{border-right:0}.tenant-profile-meta span{color:#919aa6;font-size:10px}.tenant-profile-meta strong{color:#3e4754;font-size:13px;font-weight:500}.tenant-profile-meta .status-normal{color:#15805d}.tenant-profile-meta .status-disabled,.tenant-profile-meta .status-expired{color:#b74f4f}.tenant-profile-panel>footer{justify-content:flex-end;padding:20px 22px;display:flex}.dict-add button,.tenant-settings-primary{color:#fff;cursor:pointer;background:#f47a00;border:1px solid #f47a00;border-radius:3px;justify-content:center;align-items:center;gap:6px;height:35px;padding:0 16px;display:inline-flex}.dict-add button:disabled,.tenant-settings-primary:disabled{opacity:.55;cursor:not-allowed}.dict-panel{overflow:hidden}.dict-tabs{border-bottom:1px solid #e9ecf0;align-items:stretch;gap:3px;min-height:51px;padding:0 17px;display:flex}.dict-tabs button{color:#697381;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0 18px;display:flex;position:relative}.dict-tabs button:after{content:"";background:0 0;height:2px;position:absolute;bottom:-1px;left:13px;right:13px}.dict-tabs button.active{color:#f47a00}.dict-tabs button.active:after{background:#f47a00}.dict-tabs em{color:#86909e;text-align:center;background:#f1f3f6;border-radius:9px;min-width:20px;padding:2px 5px;font-size:9px;font-style:normal}.dict-add{background:#fafbfc;border-bottom:1px solid #edf0f3;gap:9px;padding:16px 18px;display:flex}.dict-add input{border:1px solid #dce1e7;border-radius:3px;outline:0;width:min(360px,100%);height:35px;padding:0 11px}.dict-add input:focus{border-color:#f47a00;box-shadow:0 0 0 2px #f47a0017}.dict-list{min-height:390px}.dict-list-head,.dict-list-row{border-bottom:1px solid #edf0f3;grid-template-columns:70px minmax(160px,1fr) 180px;align-items:center;gap:14px;min-height:48px;padding:0 18px;font-size:12px;display:grid}.dict-list-head{color:#8c95a1;background:#fafbfc;min-height:41px}.dict-list-row:hover{background:#fffaf5}.dict-list-row>span:first-child{color:#9aa2ae}.dict-list-row strong{color:#3e4754;font-weight:500}.dict-list-row>label{align-items:center;gap:5px;display:flex}.dict-list-row>label input{border:1px solid #efaa66;border-radius:3px;outline:0;width:min(300px,100%);height:32px;padding:0 9px}.dict-actions button,.dict-list-row>label button{color:#677180;cursor:pointer;background:#fff;border:1px solid #dfe3e8;border-radius:3px;place-items:center;width:30px;height:30px;display:inline-grid}.dict-actions{gap:5px;display:flex}.dict-actions button:hover,.dict-list-row>label button:hover{color:#f47a00;border-color:#efb678}.dict-actions button.danger:hover{color:#c54949;border-color:#e7b6b6}.dict-actions button:disabled{opacity:.35;cursor:not-allowed}.academy-combobox{display:grid;position:relative}.academy-combobox>input{width:100%;padding-right:32px}.academy-combobox>svg{color:#9aa2ae;pointer-events:none;position:absolute;top:10px;right:9px}.academy-combobox-menu{z-index:220;background:#fff;border:1px solid #dce1e7;border-radius:3px;max-height:230px;padding:5px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 28px #19222e29}.academy-combobox-menu button{color:#4f5967;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:2px;align-items:center;width:100%;min-height:31px;padding:0 8px;display:flex}.academy-combobox-menu button.selected,.academy-combobox-menu button:hover{color:#f47a00;background:#fff6ed}.academy-combobox-menu p{color:#9aa2ae;margin:7px 8px;font-size:10px}.academy-combobox-menu a{color:#f47a00;border-top:1px solid #edf0f3;justify-content:center;align-items:center;min-height:33px;margin-top:5px;font-size:10px;text-decoration:none;display:flex}@media (max-width:767px){.tenant-profile-layout{grid-template-columns:1fr;margin:10px}.tenant-logo-panel{padding:20px}.tenant-settings-panel{margin:10px}.tenant-profile-panel{margin:0}.tenant-profile-form{grid-template-columns:1fr;padding:16px}.tenant-profile-form label.full{grid-column:auto}.tenant-profile-meta{grid-template-columns:1fr;margin:0 16px}.tenant-profile-meta div{border-bottom:1px solid #eceff3;border-right:0}.tenant-profile-meta div:last-child{border-bottom:0}.dict-tabs{padding:0 8px;overflow-x:auto}.dict-tabs button{flex:none;padding:0 12px}.dict-add{padding:12px}.dict-add input{min-width:0}.dict-list{min-width:540px}.dict-panel{overflow-x:auto}}.weekly-schedule-page{gap:14px;width:100%;min-width:0;max-width:100%;display:grid;overflow-x:clip}.weekly-toolbar{justify-content:space-between;align-items:center;gap:16px;min-height:66px;padding:12px 16px;display:flex}.week-navigation,.weekly-filters{align-items:center;gap:8px;display:flex}.week-navigation>strong{color:#172033;text-align:center;min-width:258px;font-size:16px}.mobile-day-title button,.week-navigation button,.weekly-error button,.weekly-filters select{color:#344054;cursor:pointer;background:#fff;border:1px solid #e3e7ed;border-radius:4px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 11px;display:inline-flex}.week-navigation>button:not(.current-week){width:34px;padding:0}.week-navigation .current-week{color:#f47a00;border-color:#ffc27e}.weekly-filters{flex-wrap:wrap;justify-content:flex-end}.weekly-filters select{background:#fff;width:154px;height:34px;padding:0 9px}.weekly-toolbar-hint{color:#b55b00;background:#fff6e9;border-radius:4px;align-items:center;min-height:32px;padding:0 10px;font-size:12px;display:inline-flex}.schedule-view-switch{background:#f7f8fa;border:1px solid #e1e5ea;border-radius:4px;padding:2px;display:inline-flex}.schedule-view-switch button{color:#667085;cursor:pointer;background:0 0;border:0;border-radius:3px;width:34px;height:28px}.schedule-view-switch button.active{color:#fff;background:#f47a00;box-shadow:0 1px 3px #f47a0033}.schedule-period-picker{color:#596474;background:#fff;border:1px solid #e3e7ed;border-radius:4px;height:34px;padding:0 8px}.weekly-calendar{min-width:0;min-height:500px;padding:0;position:relative;overflow:auto}.weekly-desktop-grid{grid-template-rows:58px 840px;min-width:1050px;display:grid;overflow:hidden}.weekly-desktop-grid.day-view{min-width:620px}.monthly-desktop-grid{background:#e9edf2;grid-template-columns:repeat(7,minmax(145px,1fr));gap:1px;min-width:1050px;display:grid}.monthly-weekday{color:#667085;background:#fafbfc;place-items:center;min-height:42px;font-size:12px;font-weight:500;display:grid}.monthly-day{background:#fff;min-height:156px;padding:8px}.monthly-day.outside{opacity:.58;background:#f8f9fb}.monthly-day.today{background:#fff8ef;box-shadow:inset 0 0 0 1px #ffc37f}.monthly-day>header{justify-content:space-between;align-items:center;min-height:25px;display:flex}.monthly-day>header button{color:#465163;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.monthly-day.today>header button{color:#fff;background:#f47a00}.monthly-day>header span{color:#98a2b3;font-size:10px}.monthly-day>div{gap:4px;margin-top:4px;display:grid}.monthly-lesson{color:#245b85;text-align:left;cursor:pointer;background:#eaf4ff;border:0;border-left:3px solid #2f8bd4;border-radius:2px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:5px;min-width:0;padding:5px 6px;display:grid}.monthly-lesson time{font-size:9px}.monthly-lesson span{white-space:normal;word-break:break-all;min-width:0;font-size:10px;line-height:1.35;overflow:visible}.monthly-lesson.completed{color:#176b55;background:#eaf9f4;border-left-color:#20a176}.monthly-lesson.ongoing{color:#89520a;background:#fff8e8;border-left-color:#ef921a}.monthly-lesson.canceled{color:#98a2b3;background:#f2f4f6;border-left-color:#98a2b3;text-decoration:line-through}.monthly-more{color:#f47a00;text-align:left;cursor:pointer;background:0 0;border:0;width:100%;margin-top:5px;font-size:10px}.weekly-day-head,.weekly-grid-corner{background:#fbfcfd;border-bottom:1px solid #e9edf2;border-right:1px solid #e9edf2;justify-content:center;align-items:center;min-width:0;display:flex}.weekly-grid-corner{color:#98a2b3;gap:5px;font-size:12px}.weekly-day-head{text-align:left;grid-template-rows:22px 18px;grid-template-columns:1fr auto;align-content:center;padding:7px 10px;display:grid}.weekly-day-head span{color:#667085;font-size:12px}.weekly-day-head strong{color:#1d2939;font-size:15px}.weekly-day-head small{color:#98a2b3;grid-area:1/2/3;align-self:center;font-size:11px}.weekly-day-head.today{background:#fff4e6}.weekly-day-head.today span,.weekly-day-head.today strong{color:#e66f00}.weekly-time-axis{background:#fbfcfd;border-right:1px solid #e3e7ed;position:relative}.weekly-time-axis span{color:#98a2b3;font-size:11px;line-height:16px;position:absolute;right:10px}.weekly-day-column{scrollbar-color:#cfd6df transparent;scrollbar-width:thin;background-color:#fff;border-right:1px solid #edf0f4;position:relative;overflow:hidden}.weekly-day-track{background-image:linear-gradient(#0000 59px,#edf0f4 60px);background-size:100% 60px;min-width:100%;position:relative}.weekly-day-column.today{background-color:#fffdfa}.weekly-day-empty{color:#c2c8d0;white-space:nowrap;font-size:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.weekly-lesson-card{z-index:2;box-sizing:border-box;color:#1d527c;text-align:left;cursor:pointer;background:#edf7ff;border:1px solid #7ab8ef;border-left:3px solid #2f8bd4;border-radius:4px;flex-direction:column;align-items:flex-start;gap:3px;min-width:120px;padding:7px 7px 6px;transition:box-shadow .16s,transform .16s;display:flex;position:absolute;overflow:hidden;box-shadow:0 2px 6px #27679b14}.weekly-lesson-card:hover{z-index:6;transform:translateY(-1px);box-shadow:0 6px 15px #27679b33}.weekly-lesson-card small,.weekly-lesson-card span,.weekly-lesson-card strong{min-width:0;max-width:100%}.weekly-lesson-card strong{color:#173f60;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:13px;line-height:1.25;display:block;overflow:hidden}.weekly-lesson-card span{font-size:11px}.weekly-lesson-card small,.weekly-lesson-card span{text-overflow:clip;white-space:nowrap;overflow:hidden}.weekly-lesson-card small{color:#59778f;align-items:center;gap:3px;font-size:10px;display:flex}.weekly-lesson-card.completed{color:#146b52;background:#eaf9f4;border-color:#78c8af #78c8af #78c8af #20a176}.weekly-lesson-card.completed strong{color:#145f4a}.weekly-lesson-card.ongoing{color:#89520a;background:#fff8e8;border-color:#f0b65c #f0b65c #f0b65c #ef921a}.weekly-lesson-card.one-on-one{background:#faf5ff;border-left-color:#8b5cf6}.weekly-lesson-card.one-on-one strong{color:#6d28d9}.weekly-lesson-card.canceled{color:#98a2b3;background:#f6f7f8;border-color:#cfd5dc #cfd5dc #cfd5dc #98a2b3;text-decoration:line-through}.weekly-updating{z-index:8;color:#a25700;background:#fff3df;border-radius:4px;padding:5px 10px;font-size:12px;position:absolute;top:10px;right:14px}.weekly-error{place-items:center;gap:12px;padding:80px 20px;display:grid}.weekly-error button{color:#f47a00}.weekly-empty-state{z-index:4;color:#98a2b3;pointer-events:none;background:#ffffffd1;align-content:center;justify-items:center;gap:8px;display:grid;position:absolute;inset:58px 0 0}.weekly-empty-state svg{color:#c6ced8}.weekly-empty-state strong{color:#667085;font-size:15px}.weekly-empty-state span{font-size:12px}.weekly-mobile{display:none}.weekly-lesson-detail{gap:22px;display:grid}.lesson-detail-title{background:#f8fafc;align-items:center;gap:12px;padding:14px;display:flex}.lesson-detail-title>span{color:#2475c5;background:#e9f4ff;border-radius:6px;place-items:center;width:44px;height:44px;display:grid}.lesson-detail-title>span.completed{color:#188463;background:#e7f8f1}.lesson-detail-title h3{color:#172033;margin:0 0 3px;font-size:17px}.lesson-detail-title p{color:#7b8493;margin:0}.weekly-lesson-detail dl{border:1px solid #edf0f4;grid-template-columns:1fr 1fr;margin:0;display:grid}.weekly-lesson-detail dl>div{border-bottom:1px solid #edf0f4;border-right:1px solid #edf0f4;grid-template-columns:88px 1fr;align-items:center;min-height:49px;padding:9px 12px;display:grid}.weekly-lesson-detail dl>div:nth-child(2n){border-right:0}.weekly-lesson-detail dl>div.full{border-bottom:0;border-right:0;grid-column:1/-1}.weekly-lesson-detail dt{color:#98a2b3}.weekly-lesson-detail dd{color:#344054;margin:0}.attendance-pill{border-radius:3px;padding:2px 8px;font-size:12px;display:inline-flex}.attendance-pill.done{color:#167553;background:#e8f8f1}.attendance-pill.pending{color:#b56200;background:#fff2df}.weekly-inline-error{color:#b42318;cursor:pointer;background:#fff1f0;border:0;align-items:center;gap:5px;display:inline-flex;position:absolute;bottom:14px;right:14px}@media (max-width:1100px){.weekly-toolbar{flex-direction:column;align-items:flex-start}.weekly-filters{justify-content:flex-start;width:100%}}@media (max-width:767px){.weekly-schedule-page{gap:10px}.weekly-toolbar{width:100%;max-width:100%;min-height:0;padding:10px;overflow:hidden}.week-navigation{width:100%}.week-navigation>strong{flex:1;min-width:0;font-size:14px}.week-navigation .current-week{display:none}.weekly-filters{grid-template-columns:1fr 1fr;gap:7px;min-width:0;display:grid}.weekly-filters select{width:100%;min-width:0}.weekly-filters select:nth-child(3){grid-column:1/-1}.weekly-toolbar-hint{display:none}.weekly-calendar{width:100%;max-width:100%;min-height:440px;overflow-x:hidden}.monthly-desktop-grid,.weekly-desktop-grid{display:none}.weekly-mobile{touch-action:pan-y;width:100%;max-width:100%;min-height:440px;padding-bottom:10px;display:block}.mobile-month-list{gap:10px;padding:10px;display:grid}.mobile-month-list>section{background:#fff;border:1px solid #e5e9ee;border-radius:5px;overflow:hidden}.mobile-month-list>section>button:first-child{color:#596474;background:#fafbfc;border:0;border-bottom:1px solid #edf0f3;align-items:center;gap:8px;width:100%;min-height:39px;padding:0 11px;display:flex}.mobile-month-list>section>button:first-child.today{color:#dc6a00;background:#fff5e9}.mobile-month-list>section>button:first-child span{color:#8d96a2}.mobile-month-list>section>button:first-child em{color:#f47a00;margin-left:auto;font-style:normal}.mobile-week-days{background:#fbfcfd;border-bottom:1px solid #e8ebef;grid-template-columns:repeat(7,1fr);display:grid}.mobile-week-days button{color:#7b8493;background:0 0;border:0;place-items:center;gap:2px;min-width:0;padding:8px 1px 10px;display:grid;position:relative}.mobile-week-days button span{font-size:11px}.mobile-week-days button strong{border-radius:50%;place-items:center;width:28px;height:28px;font-size:13px;display:grid}.mobile-week-days button i{color:#f47a00;text-align:center;width:14px;font-size:9px;font-style:normal;position:absolute;bottom:5px;right:calc(50% - 17px)}.mobile-week-days button.active strong{color:#fff;background:#ff8a16}.mobile-week-days button.today span{color:#f47a00}.mobile-day-title{justify-content:space-between;align-items:center;padding:10px 10px 8px;display:flex}.mobile-day-title>div{color:#172033;align-items:center;gap:7px;display:flex}.mobile-day-title button{width:30px;min-height:30px;padding:0}.mobile-lesson-list{gap:8px;padding:0 10px;display:grid}.mobile-lesson-card{text-align:left;background:#f5faff;border:1px solid #d7e8f7;border-left:4px solid #2f8bd4;border-radius:5px;grid-template-columns:54px 1fr 18px;align-items:center;gap:10px;min-width:0;padding:11px 9px;display:grid}.mobile-lesson-card time{color:#174e79;font-size:15px;font-weight:700}.mobile-lesson-card time small{color:#7a94aa;font-size:10px;font-weight:400;display:block}.mobile-lesson-card>div{min-width:0}.mobile-lesson-card>div>span,.mobile-lesson-card>div>strong{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.mobile-lesson-card>div>strong{color:#173f60}.mobile-lesson-card>div>span{color:#6b7f90;margin-top:2px;font-size:11px}.mobile-lesson-card>div>small{color:#7a8a98;flex-wrap:wrap;align-items:center;gap:4px;margin-top:7px;display:flex}.mobile-lesson-card.completed{background:#f1fbf7;border-color:#caeadf #caeadf #caeadf #20a176}.mobile-lesson-card.ongoing{background:#fffbef;border-color:#f2ddb8 #f2ddb8 #f2ddb8 #ef921a}.weekly-empty-state{display:none}.weekly-lesson-detail dl{grid-template-columns:1fr}.weekly-lesson-detail dl>div{border-right:0;grid-column:1}}.quick-attendance-page{gap:14px;min-width:0;display:grid}.quick-attendance-filters{background:#fff;border:1px solid #e7eaf0;border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px 14px;min-width:0;padding:10px 14px;display:flex;box-shadow:0 3px 12px #1018280a}.quick-attendance-range{background:#f8f9fb;border:1px solid #e0e4ea;border-radius:5px;flex-wrap:wrap;gap:2px;padding:2px;display:inline-flex}.quick-attendance-range button{color:#657080;cursor:pointer;background:0 0;border:0;border-radius:4px;min-height:34px;padding:0 13px}.quick-attendance-range button[aria-pressed=true]{color:#c85f14;background:#fff;font-weight:650;box-shadow:0 1px 5px #10182817}.quick-attendance-custom{align-items:center;gap:8px;min-width:0;display:flex}.quick-attendance-custom label{color:#667085;align-items:center;gap:6px;font-size:11px;display:flex}.quick-attendance-custom input{color:#344054;background:#fff;border:1px solid #dfe3e8;border-radius:4px;min-height:36px;padding:0 8px}.quick-attendance-custom>span{color:#98a2b3;font-size:11px}.quick-attendance-unmarked{color:#526071;cursor:pointer;align-items:center;gap:7px;min-height:36px;margin-left:auto;display:inline-flex}.quick-attendance-unmarked input{accent-color:#e87722;width:16px;height:16px}.quick-attendance-unmarked span{font-size:12px}.quick-attendance-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.quick-attendance-summary article{background:#fff;border:1px solid #e7eaf0;border-radius:6px;align-items:center;gap:12px;min-width:0;min-height:88px;padding:14px 16px;display:flex;box-shadow:0 3px 12px #1018280a}.quick-attendance-summary article>span{border-radius:6px;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.quick-attendance-summary .total{color:#2976c3;background:#eaf4ff}.quick-attendance-summary .pending{color:#e6780a;background:#fff2e4}.quick-attendance-summary .completed{color:#188865;background:#e8f8f2}.quick-attendance-summary .students{color:#7654b5;background:#f2eefb}.quick-attendance-summary article>div{flex-direction:column;min-width:0;display:flex}.quick-attendance-summary strong{color:#172033;font-size:25px;line-height:30px}.quick-attendance-summary small{color:#8992a1;font-size:12px}.quick-attendance-lessons{background:#fff;border:1px solid #e7eaf0;border-radius:6px;min-width:0;overflow:hidden;box-shadow:0 3px 12px #1018280a}.quick-attendance-lessons>header{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:16px;min-height:62px;padding:10px 16px;display:flex}.quick-attendance-lessons>header>div{flex-direction:column;min-width:0;display:flex}.quick-attendance-lessons h2{color:#242e3d;margin:0;font-size:15px}.quick-attendance-lessons>header span{color:#98a2b3;margin-top:2px;font-size:11px}.quick-attendance-empty button,.quick-attendance-error button,.quick-attendance-lessons>header button,.quick-roll-toolbar button{cursor:pointer;background:#fff;border:1px solid #e0e4ea;border-radius:4px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 11px;display:inline-flex}.quick-attendance-list{background:#f5f7fa;gap:10px;padding:12px;display:grid}.quick-lesson-card{background:#fff;border:1px solid #e0e5ec;border-left:4px solid #f09a3d;border-radius:6px;min-width:0;overflow:hidden}.quick-lesson-card.completed{border-left-color:#24a078}.quick-lesson-card.canceled{background:#f8f9fa;border-left-color:#a7afb9}.quick-lesson-card.is-expanded{border-color:#f2a051 #f2a051 #f2a051 #f47a00;box-shadow:0 5px 15px #693c0f14}.quick-lesson-card.completed.is-expanded{border-color:#72c5ac #72c5ac #72c5ac #24a078}.quick-lesson-card__summary{width:100%;min-height:92px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:130px minmax(260px,1fr) minmax(150px,auto) 78px 20px;align-items:center;gap:14px;padding:12px 16px 12px 14px;display:grid}.quick-lesson-card__summary:disabled{cursor:default}.quick-lesson-card__summary:hover:not(:disabled){background:#fffaf5}.quick-lesson-card__summary time{flex-direction:column;min-width:0;display:flex}.quick-lesson-card__summary time small{color:#a16736;font-variant-numeric:tabular-nums;margin-bottom:2px;font-size:10px;line-height:13px}.quick-lesson-card__summary time strong{color:#172033;font-variant-numeric:tabular-nums;font-size:23px;line-height:27px}.quick-lesson-card__summary time span{color:#808a99;font-variant-numeric:tabular-nums;font-size:13px}.quick-lesson-card__info{flex-direction:column;min-width:0;display:flex}.quick-lesson-card__info>small,.quick-lesson-card__info>strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.quick-lesson-card__info>strong{color:#283241;font-size:15px}.quick-lesson-card__info>small{color:#7d8796;margin-top:2px;font-size:12px}.quick-lesson-card__info em{color:#768191;flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;font-size:11px;font-style:normal;display:flex}.quick-lesson-card__info em span{align-items:center;gap:4px;display:inline-flex}.quick-lesson-card__counts{color:#6e7887;white-space:nowrap;font-size:12px}.quick-lesson-status{white-space:nowrap;border-radius:3px;justify-content:center;align-items:center;min-height:26px;padding:0 8px;font-size:12px;display:inline-flex}.quick-lesson-status.pending{color:#ba6008;background:#fff0df}.quick-lesson-status.completed{color:#167755;background:#e6f7f0}.quick-lesson-status.canceled{color:#7e8793;background:#edf0f3}.quick-lesson-card__summary>svg{color:#a7aeba}.quick-roll-panel{background:#fff;border-top:1px solid #e8ebef}.quick-roll-toolbar{border-bottom:1px solid #eef1f4;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:9px 14px;display:flex}.quick-roll-toolbar label{color:#98a2b3;border:1px solid #dfe3e8;border-radius:4px;align-items:center;gap:7px;width:min(280px,42vw);height:34px;padding:0 9px;display:flex}.quick-roll-toolbar input{border:0;outline:0;flex:1;min-width:0}.quick-roll-toolbar>div{flex-wrap:wrap;gap:6px;display:flex}.quick-roll-batch button.present{color:#16815f;background:#f3fbf8;border-color:#bfe3d6}.quick-roll-batch button.absent{color:#c84750;background:#fff7f7;border-color:#f0c8cb}.quick-roll-batch button.late{color:#b96612;background:#fff9f1;border-color:#edd1aa}.quick-roll-batch button.early{color:#a5551c;background:#fff8f3;border-color:#e8ccb5}.quick-roll-batch button.leave{color:#347cc5;background:#f4f9ff;border-color:#c4d9ee}.quick-roll-statuses button:disabled,.quick-roll-toolbar button:disabled{opacity:.48;cursor:not-allowed}.quick-reversal-banner,.quick-reversal-editor{color:#217a5b;background:#f1fbf7;border-bottom:1px solid #e7ecf1;align-items:center;gap:8px;min-height:42px;padding:8px 14px;font-size:12px;display:flex}.quick-reversal-editor{color:#9a6113;background:#fff8e8}.quick-reversal-editor label{flex:1;align-items:center;gap:9px;min-width:0;display:flex}.quick-reversal-editor input{border:1px solid #e1b56d;border-radius:4px;outline:0;flex:1;min-width:0;height:34px;padding:0 9px}.quick-roll-table{z-index:1;min-width:900px;position:relative}.quick-roll-row{border-bottom:1px solid #eef1f4;grid-template-columns:150px 105px minmax(430px,1fr) 100px;align-items:center;gap:12px;min-height:68px;padding:9px 16px;display:grid}.quick-roll-row.is-head{color:#8b94a2;background:#fafbfc;min-height:40px;font-size:12px}.quick-roll-row>strong{color:#303a49;font-weight:600}.quick-roll-row>span{color:#697484;font-variant-numeric:tabular-nums}.quick-roll-statuses{grid-template-columns:repeat(5,minmax(58px,1fr));gap:8px;display:grid}.quick-roll-statuses button{z-index:2;cursor:pointer;pointer-events:auto;touch-action:manipulation;background:#fff;border:1px solid #dfe3e8;border-radius:4px;min-height:34px;position:relative}.quick-roll-statuses button.present{color:#17825f}.quick-roll-statuses button.absent{color:#ce4751}.quick-roll-statuses button.late{color:#d87813}.quick-roll-statuses button.early{color:#b45d1d}.quick-roll-statuses button.leave{color:#347cc5}.quick-roll-statuses button.makeup{color:#7654b5}.quick-roll-statuses button.present.is-active{color:#fff;background:#20a176;border-color:#20a176}.quick-roll-statuses button.absent.is-active{color:#fff;background:#df5962;border-color:#df5962}.quick-roll-statuses button.late.is-active{color:#fff;background:#ed912e;border-color:#ed912e}.quick-roll-statuses button.early.is-active{color:#fff;background:#c9702d;border-color:#c9702d}.quick-roll-statuses button.leave.is-active{color:#fff;background:#3e87cf;border-color:#3e87cf}.quick-roll-statuses button.makeup.is-active{color:#fff;background:#8464bf;border-color:#8464bf}.quick-roll-no-students{color:#98a2b3;place-items:center;min-height:100px;display:grid}.quick-roll-footer{background:#fcfcfd;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:10px 16px;display:flex}.quick-roll-footer>div{color:#717c8b;flex-wrap:wrap;gap:13px;font-size:12px;display:flex}.quick-roll-footer .present{color:#18815f}.quick-roll-footer .absent{color:#c84750}.quick-roll-footer .late{color:#d47713}.quick-roll-footer .early{color:#b45d1d}.quick-roll-footer .leave{color:#337bc3}.quick-roll-footer .makeup{color:#7453b1}.quick-roll-footer>button{color:#fff;cursor:pointer;background:#f47a00;border:0;border-radius:4px;min-width:116px;min-height:38px;padding:0 16px}.quick-roll-footer>button:disabled{color:#fff;cursor:not-allowed;background:#c9ced6}.quick-attendance-empty,.quick-attendance-error{color:#98a2b3;background:#fff;border:1px solid #e7eaf0;border-radius:6px;align-content:center;justify-items:center;gap:9px;min-height:430px;display:grid}.quick-attendance-empty strong,.quick-attendance-error strong{color:#596373;font-size:16px}.quick-attendance-empty button{color:#fff;background:#f47a00;border-color:#f47a00;margin-top:7px}.quick-attendance-error button{color:#d96f08;margin-top:7px}.quick-attendance-inline-error{color:#b4232d;background:#fff5f5;border:1px solid #f0c8cb;border-radius:4px;align-items:center;gap:6px;padding:9px 12px;display:flex}.quick-roll-feedback{color:#16704f;background:#f2fbf7;border-top:1px solid #d5eadf;align-items:center;gap:7px;min-height:40px;padding:9px 16px;font-size:12px;font-weight:600;display:flex}.quick-roll-feedback.is-error{color:#b4232d;background:#fff5f5;border-color:#f0c8cb}.quick-roll-row.is-unavailable{opacity:.72;background:#f8f9fb}.quick-roll-row>strong small{color:#a43f46;margin-top:3px;font-size:10px;font-weight:500;display:block}@media (max-width:1050px){.quick-attendance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-lesson-card__summary{grid-template-columns:110px minmax(230px,1fr) 72px 18px}.quick-lesson-card__counts{display:none}.quick-roll-panel{overflow-x:auto}}@media (max-width:767px){.quick-attendance-page{gap:10px}.quick-attendance-filters{flex-direction:column;align-items:stretch;gap:9px;padding:10px}.quick-attendance-range{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;display:grid}.quick-attendance-range button{min-width:0;min-height:44px;padding:0 4px}.quick-attendance-custom{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.quick-attendance-custom label{flex-direction:column;align-items:stretch;min-width:0}.quick-attendance-custom input{width:100%;min-width:0;min-height:44px}.quick-attendance-custom>span{align-self:end;padding-bottom:14px}.quick-attendance-unmarked{min-height:44px;margin-left:0}.quick-attendance-summary{gap:8px}.quick-attendance-summary article{gap:9px;min-height:76px;padding:10px}.quick-attendance-summary article>span{flex-basis:38px;width:38px;height:38px}.quick-attendance-summary strong{font-size:21px;line-height:25px}.quick-attendance-summary small{font-size:10px}.quick-attendance-lessons>header{align-items:flex-start;padding:10px 12px}.quick-attendance-lessons>header span{max-width:210px}.quick-attendance-list{gap:8px;padding:8px}.quick-lesson-card__summary{grid-template-columns:minmax(0,1fr) auto 18px;gap:9px;min-height:0;padding:12px}.quick-lesson-card__summary time{flex-flow:wrap;grid-area:1/1;align-items:baseline;gap:3px 5px}.quick-lesson-card__summary time small{flex-basis:100%;margin:0}.quick-lesson-card__summary time strong{font-size:20px}.quick-lesson-card__info{grid-area:2/1/auto/-1}.quick-lesson-card__info>strong{white-space:normal;overflow-wrap:anywhere;overflow:visible}.quick-lesson-card__info em{gap:7px 11px}.quick-lesson-status{grid-area:1/2}.quick-lesson-card__summary>svg{grid-area:1/3}.quick-roll-panel{overflow-x:clip}.quick-roll-toolbar{flex-direction:column;align-items:stretch}.quick-roll-toolbar label{width:100%}.quick-roll-toolbar>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.quick-roll-toolbar button{min-height:42px}.quick-reversal-editor{align-items:stretch}.quick-reversal-editor label{flex-direction:column;align-items:stretch}.quick-reversal-editor input{flex:0 0 38px;width:100%}.quick-roll-table{min-width:0}.quick-roll-row.is-head{display:none}.quick-roll-row{grid-template-columns:1fr auto;gap:8px;min-height:0;padding:12px}.quick-roll-row>strong{grid-column:1}.quick-roll-row>span{text-align:right;grid-column:2}.quick-roll-status-stack{grid-column:1/-1;margin-top:7px}.quick-roll-statuses{grid-template-columns:repeat(5,minmax(50px,1fr));gap:5px}.quick-roll-statuses button{min-height:42px;padding:0 3px}.quick-roll-hours{grid-column:1/-1;justify-content:flex-end}.quick-roll-feedback{z-index:4;bottom:calc(104px + env(safe-area-inset-bottom));padding:10px 12px;position:sticky;box-shadow:0 -4px 14px #10182817}.quick-roll-footer{z-index:3;padding:10px 12px calc(10px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;position:sticky;bottom:0;box-shadow:0 -5px 16px #10182817}.quick-roll-footer>div{gap:7px 11px}.quick-roll-footer>button{z-index:2;touch-action:manipulation;width:100%;min-height:48px;position:relative}.quick-attendance-empty,.quick-attendance-error{text-align:center;min-height:340px;padding:20px}}@media (max-width:420px){.quick-roll-statuses{grid-template-columns:repeat(3,minmax(0,1fr))}}.quick-one-to-one-tag{color:#6d28d9;background:#f3e8ff;border-radius:3px;align-items:center;height:18px;margin-left:7px;padding:0 5px;font-size:10px;font-style:normal;font-weight:500;display:inline-flex}.quick-roll-status-stack{gap:6px;display:grid}.quick-roll-minutes{color:#778190;align-items:center;gap:6px;font-size:11px;display:inline-flex}.quick-roll-hours input,.quick-roll-minutes input{color:#35404d;background:#fff;border:1px solid #dfe3e8;border-radius:3px;width:74px;height:32px;padding:0 7px}.quick-roll-hours{color:#778190;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:10px;display:inline-flex}.quick-roll-hours>span{flex-basis:100%}.quick-roll-hours em{color:#347cc5;white-space:nowrap;flex-basis:100%;font-size:10px;font-style:normal;font-weight:600}.quick-roll-hours.is-zero input{color:#246ba8;background:#f2f8ff;border-color:#89b7e2;font-weight:700}.quick-attendance-summary--secondary{margin-top:14px}.renewal-page{color:#344054;background:#f4f6f8;min-height:100%;padding:18px}.renewal-expand,.renewal-filter button,.renewal-pager button,.renewal-refresh,.renewal-submit,.renewal-tabs button{color:#5d6674;cursor:pointer;background:#fff;border:1px solid #dfe3e8;border-radius:4px;justify-content:center;align-items:center;gap:5px;display:inline-flex}.renewal-refresh{height:34px;padding:0 12px}.renewal-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.renewal-stats article{background:#fff;border:1px solid #e7e9ed;border-radius:6px;align-items:center;gap:13px;min-width:0;height:92px;padding:0 18px;display:flex;box-shadow:0 2px 8px #1e293b09}.renewal-stats article>span{color:#4479ba;background:#edf5ff;border-radius:6px;flex:none;place-items:center;width:42px;height:42px;display:grid}.renewal-stats article.orange>span{color:#e27a15;background:#fff3e6}.renewal-stats article.red>span{color:#d94b55;background:#fff0f1}.renewal-stats article.green>span{color:#168b69;background:#e9f7f2}.renewal-stats article div{flex-direction:column;min-width:0;display:flex}.renewal-stats small{color:#8b93a0;font-size:12px}.renewal-stats strong{color:#243041;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:23px;font-weight:650;line-height:28px;overflow:hidden}.renewal-workspace{background:#fff;border:1px solid #e5e8ec;border-radius:6px;margin-top:12px;box-shadow:0 2px 8px #1e293b08}.renewal-tabs{border-bottom:1px solid #e8eaee;align-items:flex-end;gap:24px;height:48px;padding:0 18px;display:flex}.renewal-tabs button{background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;height:48px;padding:0 4px}.renewal-tabs button.active{color:#ed7b19;border-bottom-color:#ed7b19;font-weight:650}.renewal-filter{background:#fbfcfd;border-bottom:1px solid #eceef1;flex-wrap:wrap;align-items:center;gap:9px;min-height:62px;padding:11px 16px;display:flex}.renewal-filter label:not(.search){align-items:center;gap:6px;display:flex}.renewal-filter label>span{color:#747d8b;font-size:12px}.renewal-filter input,.renewal-filter select{outline:none}.renewal-filter .search,.renewal-filter input,.renewal-filter select{background:#fff;border:1px solid #dfe3e8;border-radius:4px;height:34px;padding:0 9px}.renewal-filter .search{color:#9aa2ad;align-items:center;min-width:220px;display:flex}.renewal-filter .search input{border:0;flex:1;min-width:0;padding:0 0 0 7px}.renewal-filter button{height:34px;padding:0 15px}.renewal-filter button.primary,.renewal-submit{color:#fff;background:#f47a00;border-color:#f47a00}.renewal-filter--records>span{color:#9299a4}.renewal-error{color:#c84040;background:#fff4f4;border:1px solid #f3c9c9;border-radius:4px;margin:10px 16px 0;padding:8px 11px}.renewal-alert-list{gap:10px;padding:14px 16px;display:grid}.renewal-alert-card{background:#fff;border:1px solid #e6e9ed;border-radius:6px;overflow:hidden}.renewal-alert-card__main{grid-template-columns:42px minmax(140px,.9fr) minmax(330px,1.6fr) auto auto auto;align-items:center;gap:12px;min-height:82px;padding:10px 14px;display:grid}.renewal-avatar{color:#fff;background:#f0953e;border-radius:50%;place-items:center;width:42px;height:42px;font-size:17px;font-weight:650;display:grid}.renewal-student-copy{flex-direction:column;min-width:0;display:flex}.renewal-student-copy strong{color:#283445;font-size:14px}.renewal-student-copy small{color:#8a93a0;align-items:center;gap:4px;margin-top:5px;font-size:11px;display:flex}.renewal-alert-metrics{grid-template-columns:repeat(3,minmax(90px,1fr));display:grid}.renewal-alert-metrics>span{border-left:1px solid #edf0f2;flex-direction:column;min-width:0;padding-left:14px;display:flex}.renewal-alert-metrics strong{color:#344054;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:650;overflow:hidden}.renewal-alert-metrics strong.danger,.renewal-classes .danger{color:#d94b55}.renewal-alert-metrics small{color:#929aa5;margin-top:3px;font-size:10px}.renewal-reason{white-space:nowrap;border-radius:3px;padding:3px 7px;font-size:11px}.renewal-reason.hours{color:#c86b11;background:#fff2e2}.renewal-reason.expires{color:#cf4650;background:#fff0f1}.renewal-expand{background:0 0;border-color:#0000;height:30px;padding:0 5px}.renewal-expand svg{transition:transform .16s}.renewal-submit{height:32px;padding:0 12px}.renewal-classes{background:#fafbfc;border-top:1px solid #e9ecef}.renewal-classes>div{color:#667080;border-bottom:1px solid #edf0f2;grid-template-columns:1.3fr 1fr .6fr .7fr;align-items:center;gap:12px;min-height:38px;padding:0 18px 0 68px;font-size:12px;display:grid}.renewal-classes>div:last-child{border-bottom:0}.renewal-classes .head{color:#9098a4;background:#f6f8fa;min-height:34px}.renewal-classes strong{color:#364152;font-weight:600}.renewal-all-good{color:#168b69;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:330px;display:flex}.renewal-all-good strong{color:#344054;font-size:15px}.renewal-all-good span{color:#929aa5;font-size:12px}.renewal-record-table{min-height:280px;overflow-x:auto}.renewal-record-table .row{border-bottom:1px solid #edf0f2;grid-template-columns:1.25fr .7fr 1.35fr .65fr .8fr .7fr .7fr 1.05fr;align-items:center;gap:12px;min-width:1020px;min-height:55px;padding:0 16px;font-size:12px;display:grid}.renewal-record-table .row.head{color:#89929f;background:#fafbfc;min-height:42px}.renewal-record-table .row>strong{color:#3c73ad;font-weight:600}.renewal-record-table .row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.renewal-record-table .row span b,.renewal-record-table .row span small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.renewal-record-table .row span b{color:#344054;font-weight:600}.renewal-record-table .row span small{color:#929aa5;margin-top:2px}.renewal-record-table .money{color:#d95545;font-weight:650}.renewal-pager{border-top:1px solid #eceef1;justify-content:flex-end;align-items:center;gap:7px;height:52px;padding:0 16px;display:flex}.renewal-pager>span{color:#89929f;margin-right:8px;font-size:12px}.renewal-pager button{width:30px;height:30px;padding:0}.renewal-pager button:disabled{cursor:not-allowed;opacity:.42}.renewal-pager strong{color:#5d6674;text-align:center;min-width:60px;font-size:12px}.renewal-modal{gap:14px;display:grid}.renewal-modal__student{background:#fff9f3;border:1px solid #f1dfca;border-radius:5px;align-items:center;gap:10px;padding:11px 13px;display:flex}.renewal-modal__student>span{color:#fff;background:#f28a23;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:650;display:grid}.renewal-modal__student>div{flex-direction:column;display:flex}.renewal-modal__student strong{color:#303b4b}.renewal-modal__student small{color:#8b93a0;margin-top:3px;font-size:11px}.renewal-modal__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px;display:grid}.renewal-modal__grid>label{flex-direction:column;gap:6px;min-width:0;display:flex}.renewal-modal__grid>label.full,.renewal-modal__methods{grid-column:1/-1}.renewal-modal__grid label>span,.renewal-modal__methods legend{color:#667080;font-size:12px}.renewal-modal__grid input,.renewal-modal__grid select,.renewal-modal__grid textarea{background:#fff;border:1px solid #dfe3e8;border-radius:4px;outline:none;width:100%;padding:8px 10px}.renewal-modal__grid input:focus,.renewal-modal__grid select:focus,.renewal-modal__grid textarea:focus{border-color:#f0a052;box-shadow:0 0 0 2px #f47a001a}.renewal-modal__grid input:disabled{color:#6d7581;background:#f6f7f9}.renewal-modal__methods{border:0;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin:0;padding:0;display:grid}.renewal-modal__methods legend{margin-bottom:6px}.renewal-modal__methods label{cursor:pointer;border:1px solid #dfe3e8;border-radius:4px;justify-content:center;align-items:center;gap:5px;height:36px;display:flex}.renewal-modal__methods label.active{color:#f47a00;background:#fff8f1;border-color:#f47a00}.renewal-modal__methods input{width:auto}.renewal-modal__summary{border-top:1px solid #edf0f2;justify-content:flex-end;align-items:center;gap:24px;padding-top:12px;display:flex}.renewal-modal__summary span{color:#7d8693;font-size:12px}.renewal-modal__summary strong{color:#384354;margin-left:4px;font-size:14px}.renewal-modal__summary span:last-child strong{color:#e35f19;font-size:19px}.renewal-modal__error{color:#cf4444;text-align:right;margin:0;font-size:12px}@media (max-width:1100px){.renewal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.renewal-alert-card__main{grid-template-columns:42px 1fr auto auto}.renewal-alert-metrics{grid-area:2/2/auto/-1}.renewal-reason{grid-area:1/3}}@media (max-width:700px){.renewal-page{padding:10px}.renewal-stats{grid-template-columns:1fr 1fr;gap:8px}.renewal-stats article{height:78px;padding:0 11px}.renewal-stats article>span{width:36px;height:36px}.renewal-stats strong{font-size:18px}.renewal-filter{flex-direction:column;align-items:stretch}.renewal-filter label:not(.search){justify-content:space-between}.renewal-filter .search,.renewal-filter input,.renewal-filter select{width:100%}.renewal-alert-card__main{grid-template-columns:40px 1fr auto;padding:12px}.renewal-student-copy{grid-column:2/-1}.renewal-alert-metrics{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.renewal-reason{grid-area:auto/1/auto/3;justify-self:start}.renewal-expand{grid-column:3}.renewal-submit{grid-column:1/-1;width:100%;height:40px}.renewal-classes>div{min-width:620px;padding-left:14px}.renewal-classes{overflow-x:auto}.renewal-modal__grid{grid-template-columns:1fr}.renewal-modal__grid>label.full,.renewal-modal__methods{grid-column:1}.renewal-modal__methods{grid-template-columns:repeat(3,minmax(0,1fr))}.renewal-modal__summary{flex-direction:column;align-items:flex-end;gap:4px}}.consumption-report-page{gap:12px;padding-bottom:22px;display:grid}.consumption-report-filter{background:#fff;border-bottom:1px solid #e8ebef;align-items:center;gap:8px;min-height:64px;padding:12px 16px;display:flex;overflow-x:auto}.consumption-report-filter button,.consumption-report-filter input,.consumption-report-filter select{color:#566171;background:#fff;border:1px solid #dce1e7;border-radius:3px;outline:0;height:34px}.consumption-report-filter button{white-space:nowrap;justify-content:center;align-items:center;gap:5px;padding:0 12px;display:inline-flex}.consumption-report-filter button:hover,.consumption-report-filter input:hover,.consumption-report-filter select:hover{border-color:#f3ad69}.consumption-report-filter button.query{color:#fff;background:#f47a00;border-color:#f47a00}.consumption-report-filter select{min-width:145px;padding:0 28px 0 10px}.consumption-group-by,.consumption-preset{background:#f7f8fa;border:1px solid #e0e4e9;border-radius:4px;flex:none;padding:2px;display:inline-flex}.consumption-group-by button,.consumption-preset button{background:0 0;border:0;height:28px;padding:0 9px}.consumption-group-by button.active,.consumption-preset button.active{color:#f47a00;background:#fff;box-shadow:0 1px 4px #10182817}.date-field{color:#8d95a2;flex:none;align-items:center;gap:6px;display:flex}.date-field svg{color:#f47a00}.date-field input{width:136px;padding:0 8px}.consumption-report-error,.consumption-report-loading{color:#8a93a1;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:360px;display:flex}.consumption-report-error strong{color:#3b4350}.consumption-report-error button{color:#fff;background:#f47a00;border:1px solid #f47a00;height:32px;padding:0 13px}.spin{animation:consumption-spin 1s linear infinite}@keyframes consumption-spin{to{transform:rotate(1turn)}}.consumption-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0 12px;display:grid}.consumption-summary article{background:#fff;border:1px solid #eaedf1;border-radius:6px;align-items:center;gap:13px;min-width:0;min-height:88px;padding:15px 17px;display:flex;box-shadow:0 2px 8px #10182808}.consumption-summary article>span{color:#2475c5;background:#eaf4ff;border-radius:5px;flex:none;place-items:center;width:42px;height:42px;display:grid}.consumption-summary article:nth-child(3)>span{color:#159b83;background:#e9f8f4}.consumption-summary article:nth-child(4)>span{color:#7c5cce;background:#f1edff}.consumption-summary article:nth-child(5)>span{color:#d25a52;background:#fff0ed}.consumption-summary article.amount>span{color:#f47a00;background:#fff3e7}.consumption-summary article div{min-width:0}.consumption-summary small{color:#8a93a1;white-space:nowrap;font-size:12px;display:block}.consumption-summary strong{color:#202936;white-space:nowrap;align-items:baseline;gap:4px;margin-top:4px;font-size:23px;font-weight:650;display:flex}.consumption-summary .amount strong{color:#ed7200}.consumption-summary em{color:#929aa6;font-size:11px;font-style:normal;font-weight:400}.consumption-report-grid{gap:12px;padding:0 12px;display:grid}.consumption-report-grid.trend-row{grid-template-columns:minmax(0,1.7fr) minmax(330px,.8fr)}.consumption-report-grid.ranking-row{grid-template-columns:minmax(0,1.35fr) minmax(360px,1fr)}.consumption-report-panel{background:#fff;border:1px solid #e8ebef;border-radius:6px;min-width:0;box-shadow:0 2px 9px #10182808}.consumption-report-panel>header{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 16px;display:flex}.consumption-report-panel h2{color:#313946;margin:0;font-size:14px;font-weight:600}.consumption-report-panel header p{color:#9aa1ac;margin:3px 0 0;font-size:11px}.chart-legend{color:#7f8794;align-items:center;gap:5px;font-size:11px;display:flex}.chart-legend i{border-radius:3px;width:11px;height:3px;margin-left:8px}.chart-legend i.hours{background:#66a6e3}.chart-legend i.amount{background:#f47a00}.consumption-chart-frame{height:305px;padding:16px 11px 10px 3px}.consumption-chart-empty{color:#a1a8b2;place-items:center;min-height:250px;display:grid}.status-distribution{grid-template-columns:minmax(180px,.9fr) minmax(170px,1fr);align-items:center;min-height:305px;padding:8px 13px;display:grid}.status-pie{height:230px;position:relative}.status-pie>div:last-child{text-align:center;pointer-events:none;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.status-pie strong{color:#303846;font-size:22px}.status-pie span{color:#929aa7;font-size:11px}.status-list{align-content:center;display:grid}.status-list>div{color:#697381;border-bottom:1px dashed #edf0f3;grid-template-columns:9px 1fr 44px 63px;align-items:center;gap:7px;min-height:38px;font-size:11px;display:grid}.status-list i{border-radius:2px;width:8px;height:8px}.status-list strong{color:#3d4654;font-weight:500}.status-list em{color:#8a93a1;text-align:right;font-style:normal}.teacher-ranking{padding:0 16px 10px}.teacher-ranking-head,.teacher-ranking-row{border-bottom:1px solid #edf0f3;grid-template-columns:minmax(220px,1fr) 60px 90px 48px 48px;align-items:center;gap:8px;min-height:39px;font-size:12px;display:grid}.teacher-ranking-head{color:#9199a5;background:#fafbfc}.teacher-ranking-head span:first-child{padding-left:8px}.teacher-ranking-row{color:#727b88}.teacher-ranking-row>div{grid-template-columns:25px 82px minmax(70px,1fr);align-items:center;gap:7px;display:grid}.teacher-ranking-row b{color:#fff;background:#b7bec8;border-radius:3px;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.teacher-ranking-row:nth-child(2) b{background:#f47a00}.teacher-ranking-row:nth-child(3) b{background:#f69b42}.teacher-ranking-row:nth-child(4) b{background:#f4b16f}.teacher-ranking-row i{background:#eef1f5;border-radius:5px;height:6px;overflow:hidden}.teacher-ranking-row i em{background:#ff9a3d;border-radius:5px;height:100%;display:block}.teacher-ranking-row>strong{color:#f47a00}.course-chart{height:340px;padding:15px 12px 12px 0}.class-table-panel{margin:0 12px}.consumption-class-table{overflow-x:auto}.consumption-class-row{color:#66707d;border-bottom:1px solid #edf0f3;grid-template-columns:58px minmax(190px,1.35fr) minmax(150px,1fr) 100px 110px 78px 78px;align-items:center;min-width:830px;min-height:47px;font-size:12px;display:grid}.consumption-class-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 11px;overflow:hidden}.consumption-class-row.head{color:#8d96a3;background:#fafbfc;min-height:40px}.consumption-class-row strong{color:#3e4754;font-weight:500}.consumption-class-row em{color:#f47a00;font-style:normal}.consumption-table-empty{color:#a0a7b1;place-items:center;min-height:150px;display:grid}.consumption-pagination{color:#8a93a0;justify-content:flex-end;align-items:center;gap:9px;min-height:52px;padding:0 15px;font-size:12px;display:flex}.consumption-pagination span{margin-right:auto}.consumption-pagination button{color:#626c79;background:#fff;border:1px solid #dde2e8;height:29px;padding:0 10px}.consumption-pagination button:disabled{opacity:.45}.consumption-pagination strong{color:#4d5663;font-weight:500}.academy-toast{z-index:120}.consumption-report-page button{cursor:pointer}.consumption-report-page button:disabled{cursor:not-allowed}.consumption-report-page button:focus-visible,.consumption-report-page input:focus-visible,.consumption-report-page select:focus-visible{outline-offset:1px;outline:2px solid #f47a0038}@media (max-width:1180px){.consumption-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.consumption-report-grid.ranking-row,.consumption-report-grid.trend-row{grid-template-columns:1fr}.status-distribution{grid-template-columns:240px 1fr}}@media (max-width:767px){.consumption-report-page{gap:10px}.consumption-report-filter{flex-wrap:wrap;align-items:stretch;padding:10px 12px;overflow:visible}.consumption-preset{width:100%;overflow-x:auto}.consumption-preset button{flex:1 0 auto}.date-field{grid-template-columns:18px 1fr 16px 1fr;width:100%;display:grid}.date-field input{width:100%;min-width:0}.consumption-report-filter select{width:calc(50% - 4px);min-width:0}.consumption-group-by,.consumption-group-by button,.consumption-report-filter>button{flex:1}.consumption-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 10px}.consumption-summary article{gap:9px;min-height:82px;padding:12px 10px}.consumption-summary article>span{width:36px;height:36px}.consumption-summary strong{font-size:18px}.consumption-report-grid{padding:0 10px}.consumption-report-grid.ranking-row,.consumption-report-grid.trend-row{grid-template-columns:minmax(0,1fr)}.consumption-chart-frame{height:270px;overflow-x:auto}.status-distribution{grid-template-columns:1fr;min-height:auto}.status-pie{height:210px}.status-list{padding:0 12px 12px}.teacher-ranking{padding:0 10px 10px;overflow-x:auto}.teacher-ranking-head,.teacher-ranking-row{min-width:660px}.course-chart{height:300px;overflow-x:auto}.class-table-panel{margin:0 10px}.consumption-report-panel>header{padding:9px 12px}.chart-legend{display:none}}.finance-report-page{gap:12px;padding-bottom:22px;display:grid}.finance-report-filter{background:#fff;border-bottom:1px solid #e8ebef;align-items:center;gap:8px;min-height:64px;padding:12px 16px;display:flex;overflow-x:auto}.finance-report-filter button,.finance-report-filter input,.finance-report-filter select{color:#566171;background:#fff;border:1px solid #dce1e7;border-radius:3px;outline:0;height:34px}.finance-report-filter button{white-space:nowrap;justify-content:center;align-items:center;gap:5px;padding:0 12px;display:inline-flex}.finance-report-filter button:hover,.finance-report-filter input:hover,.finance-report-filter select:hover{border-color:#f3ad69}.finance-report-filter button.query{color:#fff;background:#f47a00;border-color:#f47a00}.finance-report-filter select{min-width:150px;padding:0 28px 0 10px}.finance-report-group,.finance-report-presets{background:#f7f8fa;border:1px solid #e0e4e9;border-radius:4px;flex:none;padding:2px;display:inline-flex}.finance-report-group button,.finance-report-presets button{background:0 0;border:0;height:28px;padding:0 9px}.finance-report-group button.active,.finance-report-presets button.active{color:#f47a00;background:#fff;box-shadow:0 1px 4px #10182817}.finance-report-dates{color:#8d95a2;flex:none;align-items:center;gap:6px;display:flex}.finance-report-dates svg{color:#f47a00}.finance-report-dates input{width:136px;padding:0 8px}.finance-report-error,.finance-report-loading{color:#8a93a1;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:360px;display:flex}.finance-report-error strong{color:#3b4350}.finance-report-error button{color:#fff;background:#f47a00;border:1px solid #f47a00;height:32px;padding:0 13px}.finance-report-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:0 12px;display:grid}.finance-report-summary article{background:#fff;border:1px solid #eaedf1;border-radius:6px;align-items:center;gap:11px;min-width:0;min-height:88px;padding:14px;display:flex;box-shadow:0 2px 8px #10182808}.finance-report-summary article>span{color:#457ac1;background:#edf5ff;border-radius:5px;flex:none;place-items:center;width:40px;height:40px;display:grid}.finance-report-summary article.income>span{color:#1d9b70;background:#eaf8f3}.finance-report-summary article.refund>span{color:#d65d59;background:#fff0ef}.finance-report-summary article.net{background:#fffaf5;border-color:#f7c99c}.finance-report-summary article.net>span{color:#fff;background:#f47a00;width:44px;height:44px}.finance-report-summary article.net strong{color:#e86f00;font-size:24px}.finance-report-summary article div{min-width:0}.finance-report-summary small{color:#8a93a1;white-space:nowrap;font-size:11px;display:block}.finance-report-summary strong{color:#222b38;white-space:nowrap;align-items:baseline;gap:4px;margin-top:4px;font-size:19px;font-weight:650;display:flex}.finance-report-summary .income strong{color:#18845f}.finance-report-summary .refund strong{color:#cb504b}.finance-report-summary em{color:#929aa6;font-size:11px;font-style:normal;font-weight:400}.finance-report-grid{gap:12px;padding:0 12px;display:grid}.finance-report-top-grid{grid-template-columns:minmax(0,1.65fr) minmax(350px,.85fr)}.finance-report-middle-grid{grid-template-columns:minmax(380px,.9fr) minmax(0,1.1fr)}.finance-report-panel{background:#fff;border:1px solid #e8ebef;border-radius:6px;min-width:0;box-shadow:0 2px 9px #10182808}.finance-report-panel>header{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 16px;display:flex}.finance-report-panel h2{color:#313946;margin:0;font-size:14px;font-weight:600}.finance-report-panel header p{color:#9aa1ac;margin:3px 0 0;font-size:11px}.finance-chart-legend{color:#7f8794;align-items:center;gap:5px;font-size:11px;display:flex}.finance-chart-legend i{border-radius:3px;width:11px;height:3px;margin-left:8px}.finance-chart-legend .income{background:#34a47b}.finance-chart-legend .refund{background:#ef7468}.finance-chart-legend .net{background:#f47a00}.finance-report-chart{height:306px;padding:15px 12px 9px 3px}.finance-report-empty{color:#a1a8b2;place-items:center;min-height:250px;display:grid}.finance-method-body{grid-template-columns:minmax(180px,.9fr) minmax(180px,1.1fr);align-items:center;min-height:306px;padding:8px 13px;display:grid}.finance-method-pie{height:230px;position:relative}.finance-method-pie>div:last-child{text-align:center;pointer-events:none;max-width:110px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.finance-method-pie strong{color:#303846;font-size:15px}.finance-method-pie span{color:#929aa7;font-size:11px}.finance-method-list{align-content:center;display:grid}.finance-method-list>div{color:#697381;border-bottom:1px dashed #edf0f3;grid-template-columns:9px minmax(62px,1fr) 82px 75px;align-items:center;gap:7px;min-height:38px;font-size:10px;display:grid}.finance-method-list i{border-radius:2px;width:8px;height:8px}.finance-method-list strong{color:#3d4654;text-align:right;font-weight:500}.finance-method-list em{color:#8a93a1;text-align:right;font-style:normal}.finance-type-chart{height:225px;padding:14px 12px 4px 0}.finance-type-summary{background:#e8ebef;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 14px 14px;display:grid}.finance-type-summary span{background:#fafbfc;gap:3px;padding:9px 11px;display:grid}.finance-type-summary b{color:#7d8693;font-size:10px;font-weight:500}.finance-type-summary strong{color:#3e4754;font-size:13px}.finance-type-summary em{color:#979faa;font-size:10px;font-style:normal}.finance-staff-table{padding:0 15px 12px}.finance-staff-row{color:#737c89;border-bottom:1px solid #edf0f3;grid-template-columns:50px minmax(100px,1fr) 120px 80px 80px;align-items:center;min-height:44px;font-size:11px;display:grid}.finance-staff-row.head{color:#929aa6;background:#fafbfc;min-height:38px}.finance-staff-row>*{padding:0 8px}.finance-staff-row b{color:#fff;background:#b7bec8;border-radius:3px;place-items:center;width:21px;height:21px;display:grid}.finance-staff-row:nth-child(2) b{background:#f47a00}.finance-staff-row:nth-child(3) b{background:#f59a42}.finance-staff-row:nth-child(4) b{background:#f2b16f}.finance-staff-row strong{color:#3d4654;font-weight:500}.finance-staff-row em{color:#18845f;font-style:normal;font-weight:600}.finance-course-panel,.finance-recent-panel{margin:0 12px}.finance-course-table,.finance-recent-table{overflow-x:auto}.finance-course-row{color:#67717e;border-bottom:1px solid #edf0f3;grid-template-columns:60px minmax(220px,1.5fr) 120px 110px 120px 90px;align-items:center;min-width:760px;min-height:47px;font-size:11px;display:grid}.finance-course-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 12px;overflow:hidden}.finance-course-row.head{color:#9098a4;background:#fafbfc;min-height:39px}.finance-course-row strong{color:#3c4653;font-weight:500}.finance-course-row em{color:#18845f;font-style:normal}.finance-course-row i{color:#ce5650;font-style:normal}.finance-course-row b{color:#ed7509;font-weight:600}.finance-recent-row{color:#67717e;border-bottom:1px solid #edf0f3;grid-template-columns:170px 110px minmax(170px,1.2fr) 85px 100px 95px 100px 145px;align-items:center;min-width:1180px;min-height:47px;font-size:10px;display:grid}.finance-recent-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 10px;overflow:hidden}.finance-recent-row.head{color:#9098a4;background:#fafbfc;min-height:39px}.finance-recent-row strong{color:#397cc8;font-weight:500}.finance-recent-row em{font-style:normal}.finance-recent-row b{color:#18845f;font-weight:600}.finance-recent-row i{color:#75687a;background:#f4f1f5;border-radius:2px;width:max-content;padding:3px 7px;font-style:normal;display:inline-flex}.finance-recent-row i.wechat{color:#18845f;background:#eaf8f3}.finance-recent-row i.alipay,.finance-recent-row i.card{color:#2d71bd;background:#edf5ff}.finance-recent-row time{color:#8b94a1}.finance-table-empty{color:#a0a7b1;place-items:center;min-height:130px;display:grid}.finance-report-page button{cursor:pointer}.finance-report-page button:disabled{cursor:not-allowed}.finance-report-page button:focus-visible,.finance-report-page input:focus-visible,.finance-report-page select:focus-visible{outline-offset:1px;outline:2px solid #f47a0038}@media (max-width:1250px){.finance-report-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-report-middle-grid,.finance-report-top-grid{grid-template-columns:1fr}.finance-method-body{grid-template-columns:240px 1fr}}@media (max-width:767px){.finance-report-page{gap:10px}.finance-report-filter{flex-wrap:wrap;align-items:stretch;padding:10px 12px;overflow:visible}.finance-report-presets{width:100%;overflow-x:auto}.finance-report-presets button{flex:1 0 auto}.finance-report-dates{grid-template-columns:18px 1fr 16px 1fr;width:100%;display:grid}.finance-report-dates input{width:100%;min-width:0}.finance-report-filter select{width:100%}.finance-report-filter>button,.finance-report-group,.finance-report-group button{flex:1}.finance-report-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 10px}.finance-report-summary article{gap:8px;min-height:82px;padding:11px 9px}.finance-report-summary article>span{width:35px;height:35px}.finance-report-summary article.net>span{width:38px;height:38px}.finance-report-summary article.net strong,.finance-report-summary strong{font-size:16px}.finance-report-grid{padding:0 10px}.finance-report-middle-grid,.finance-report-top-grid{grid-template-columns:minmax(0,1fr)}.finance-chart-legend{display:none}.finance-report-chart{height:270px;overflow-x:auto}.finance-method-body{grid-template-columns:1fr;min-height:auto}.finance-method-pie{height:210px}.finance-method-list{padding:0 10px 12px}.finance-type-summary{grid-template-columns:1fr}.finance-staff-table{padding:0 10px 10px;overflow-x:auto}.finance-staff-row{min-width:600px}.finance-course-panel,.finance-recent-panel{margin:0 10px}.finance-report-panel>header{padding:9px 12px}}.enrollment-report-page{gap:12px;padding-bottom:22px;display:grid}.enrollment-report-filter{background:#fff;border-bottom:1px solid #e8ebef;align-items:center;gap:8px;min-height:64px;padding:12px 16px;display:flex;overflow-x:auto}.enrollment-report-filter button,.enrollment-report-filter input,.enrollment-report-filter select{color:#566171;background:#fff;border:1px solid #dce1e7;border-radius:3px;outline:0;height:34px}.enrollment-report-filter button{white-space:nowrap;justify-content:center;align-items:center;gap:5px;padding:0 12px;display:inline-flex}.enrollment-report-filter button:hover,.enrollment-report-filter input:hover,.enrollment-report-filter select:hover{border-color:#f3ad69}.enrollment-report-filter button.query{color:#fff;background:#f47a00;border-color:#f47a00}.enrollment-report-filter select{min-width:170px;padding:0 28px 0 10px}.enrollment-report-presets{background:#f7f8fa;border:1px solid #e0e4e9;border-radius:4px;flex:none;padding:2px;display:inline-flex}.enrollment-report-presets button{background:0 0;border:0;height:28px;padding:0 9px}.enrollment-report-presets button.active{color:#f47a00;background:#fff;box-shadow:0 1px 4px #10182817}.enrollment-report-dates{color:#8d95a2;flex:none;align-items:center;gap:6px;display:flex}.enrollment-report-dates svg{color:#f47a00}.enrollment-report-dates input{width:136px;padding:0 8px}.enrollment-report-error,.enrollment-report-loading{color:#8a93a1;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:360px;display:flex}.enrollment-report-error strong{color:#3b4350}.enrollment-report-error button{color:#fff;background:#f47a00;border:1px solid #f47a00;height:32px;padding:0 13px}.enrollment-report-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:0 12px;display:grid}.enrollment-report-summary article{background:#fff;border:1px solid #eaedf1;border-radius:6px;align-items:center;gap:11px;min-width:0;min-height:88px;padding:14px;display:flex;box-shadow:0 2px 8px #10182808}.enrollment-report-summary article>span{color:#397cc8;background:#edf5ff;border-radius:5px;flex:none;place-items:center;width:40px;height:40px;display:grid}.enrollment-report-summary article.enrolled>span{color:#18845f;background:#eaf8f3}.enrollment-report-summary article.enrolled strong{color:#18845f}.enrollment-report-summary article.lost>span{color:#ce5650;background:#fff0ef}.enrollment-report-summary article.lost strong{color:#ce5650}.enrollment-report-summary article.conversion{background:#fffaf5;border-color:#f7c99c}.enrollment-report-summary article.conversion>span{color:#fff;background:#f47a00;width:44px;height:44px}.enrollment-report-summary article.conversion strong{color:#e86f00;font-size:24px}.enrollment-report-summary article div{min-width:0}.enrollment-report-summary small{color:#8a93a1;white-space:nowrap;font-size:11px;display:block}.enrollment-report-summary strong{color:#222b38;white-space:nowrap;align-items:baseline;gap:4px;margin-top:4px;font-size:19px;font-weight:650;display:flex}.enrollment-report-summary em{color:#929aa6;font-size:11px;font-style:normal;font-weight:400}.enrollment-report-grid{gap:12px;padding:0 12px;display:grid}.enrollment-report-top-grid{grid-template-columns:minmax(390px,.85fr) minmax(0,1.45fr)}.enrollment-report-middle-grid{grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr)}.enrollment-report-panel{background:#fff;border:1px solid #e8ebef;border-radius:6px;min-width:0;box-shadow:0 2px 9px #10182808}.enrollment-report-panel>header{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 16px;display:flex}.enrollment-report-panel h2{color:#313946;margin:0;font-size:14px;font-weight:600}.enrollment-report-panel header p{color:#9aa1ac;margin:3px 0 0;font-size:11px}.enrollment-funnel-body{grid-template-columns:minmax(240px,1.1fr) minmax(180px,.9fr);align-items:center;min-height:306px;padding:8px 14px;display:grid}.enrollment-funnel-chart{height:275px}.enrollment-funnel-rates{align-content:center;display:grid}.enrollment-funnel-rates>div{border-bottom:1px dashed #edf0f3;grid-template-columns:10px minmax(60px,1fr) 42px;align-items:center;gap:7px;min-height:52px;display:grid}.enrollment-funnel-rates i{border-radius:2px;width:9px;height:9px}.enrollment-funnel-rates span{color:#606a77;font-size:11px}.enrollment-funnel-rates strong{color:#313a47;text-align:right;font-size:15px}.enrollment-funnel-rates em{color:#969eaa;grid-column:2/4;font-size:10px;font-style:normal}.enrollment-funnel-rates .lost i{background:#ef6b62}.enrollment-funnel-rates .lost strong{color:#cf554e}.enrollment-chart-legend{color:#7f8794;align-items:center;gap:5px;font-size:11px;display:flex}.enrollment-chart-legend i{border-radius:3px;width:11px;height:3px;margin-left:8px}.enrollment-chart-legend .new{background:#62a7e5}.enrollment-chart-legend .enrolled{background:#22a272}.enrollment-chart-legend .lost{background:#e7665f}.enrollment-report-chart{height:306px;padding:15px 12px 9px 3px}.enrollment-report-empty{color:#a1a8b2;place-items:center;min-height:240px;display:grid}.enrollment-source-table{padding:0 15px 12px}.enrollment-source-row{color:#727c89;border-bottom:1px solid #edf0f3;grid-template-columns:minmax(100px,1fr) 70px 70px minmax(150px,1.3fr);align-items:center;min-height:43px;font-size:11px;display:grid}.enrollment-source-row>*{padding:0 9px}.enrollment-source-row.head{color:#929aa6;background:#fafbfc;min-height:38px}.enrollment-source-row strong{color:#3d4654;font-weight:500}.enrollment-source-row>div{background:#eef1f4;border-radius:2px;height:18px;margin:0 8px;padding:0;position:relative;overflow:hidden}.enrollment-source-row>div b{background:#f5a14c;max-width:100%;position:absolute;inset:0 auto 0 0}.enrollment-source-row>div em{color:#4f5966;text-align:right;padding:1px 6px;font-size:10px;font-style:normal;display:block;position:relative}.enrollment-level-body{grid-template-columns:220px 1fr;align-items:center;min-height:294px;padding:8px 16px;display:grid}.enrollment-level-pie{height:220px;position:relative}.enrollment-level-pie>div:last-child{text-align:center;pointer-events:none;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.enrollment-level-pie strong{color:#303846;font-size:20px}.enrollment-level-pie span{color:#929aa7;font-size:10px}.enrollment-level-list{display:grid}.enrollment-level-list>div{color:#697381;border-bottom:1px dashed #edf0f3;grid-template-columns:10px minmax(56px,1fr) 60px 82px;align-items:center;gap:7px;min-height:45px;font-size:11px;display:grid}.enrollment-level-list i{border-radius:50%;width:8px;height:8px}.enrollment-level-list strong{color:#3d4654;text-align:right;font-weight:500}.enrollment-level-list em{color:#8a93a1;text-align:right;font-style:normal}.enrollment-course-panel,.enrollment-owner-panel,.enrollment-recent-panel{margin:0 12px}.enrollment-course-table,.enrollment-owner-table,.enrollment-recent-table{overflow-x:auto}.enrollment-owner-row{color:#67717e;border-bottom:1px solid #edf0f3;grid-template-columns:60px minmax(150px,1.3fr) 90px 90px 90px 110px 130px;align-items:center;min-width:880px;min-height:47px;font-size:11px;display:grid}.enrollment-owner-row>*{min-width:0;padding:0 12px}.enrollment-owner-row.head{color:#9098a4;background:#fafbfc;min-height:39px}.enrollment-owner-row b{color:#fff;background:#b7bec8;border-radius:3px;place-items:center;width:22px;height:22px;display:grid}.enrollment-owner-row:nth-child(2) b{background:#f47a00}.enrollment-owner-row:nth-child(3) b{background:#f59a42}.enrollment-owner-row:nth-child(4) b{background:#f2b16f}.enrollment-owner-row strong{color:#3d4654;font-weight:500}.enrollment-owner-row em{color:#18845f;font-style:normal}.enrollment-owner-row i{color:#ce5650;font-style:normal}.enrollment-course-row{color:#67717e;border-bottom:1px solid #edf0f3;grid-template-columns:60px minmax(250px,1.8fr) 100px 100px 120px;align-items:center;min-width:680px;min-height:47px;font-size:11px;display:grid}.enrollment-course-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 12px;overflow:hidden}.enrollment-course-row.head{color:#9098a4;background:#fafbfc;min-height:39px}.enrollment-course-row strong{color:#3d4654;font-weight:500}.enrollment-course-row em{color:#18845f;font-style:normal}.enrollment-course-row b{color:#ed7509}.enrollment-recent-row{color:#67717e;border-bottom:1px solid #edf0f3;grid-template-columns:130px 125px 90px 85px 110px 160px 160px 90px;align-items:center;min-width:1160px;min-height:47px;font-size:10px;display:grid}.enrollment-recent-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 10px;overflow:hidden}.enrollment-recent-row.head{color:#9098a4;background:#fafbfc;min-height:39px}.enrollment-recent-row strong{color:#397cc8;font-weight:500}.enrollment-recent-row em,.enrollment-recent-row i{border-radius:2px;width:max-content;padding:3px 7px;font-style:normal;display:inline-flex}.enrollment-recent-row i{color:#397cc8;background:#edf5ff}.enrollment-recent-row em.hot{color:#d4514b;background:#fff0ef}.enrollment-recent-row em.warm{color:#d78016;background:#fff7e8}.enrollment-recent-row em.cold{color:#6f7885;background:#f0f2f4}.enrollment-recent-row time{color:#8b94a1}.enrollment-recent-row b{color:#ed7509}.enrollment-table-empty{color:#a0a7b1;place-items:center;min-height:130px;display:grid}.enrollment-report-page button{cursor:pointer}.enrollment-report-page button:disabled{cursor:not-allowed}.enrollment-report-page button:focus-visible,.enrollment-report-page input:focus-visible,.enrollment-report-page select:focus-visible{outline-offset:1px;outline:2px solid #f47a0038}@media (max-width:1250px){.enrollment-report-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.enrollment-report-middle-grid,.enrollment-report-top-grid{grid-template-columns:1fr}.enrollment-funnel-body{grid-template-columns:320px 1fr}}@media (max-width:767px){.enrollment-report-page{gap:10px}.enrollment-report-filter{flex-wrap:wrap;align-items:stretch;padding:10px 12px;overflow:visible}.enrollment-report-presets{width:100%;overflow-x:auto}.enrollment-report-presets button{flex:1 0 auto}.enrollment-report-dates{grid-template-columns:18px 1fr 16px 1fr;width:100%;display:grid}.enrollment-report-dates input{width:100%;min-width:0}.enrollment-report-filter select{width:100%}.enrollment-report-filter>button{flex:1}.enrollment-report-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 10px}.enrollment-report-summary article{gap:8px;min-height:82px;padding:11px 9px}.enrollment-report-summary article>span{width:35px;height:35px}.enrollment-report-summary article.conversion>span{width:38px;height:38px}.enrollment-report-summary article.conversion strong,.enrollment-report-summary strong{font-size:16px}.enrollment-report-grid{padding:0 10px}.enrollment-report-middle-grid,.enrollment-report-top-grid{grid-template-columns:minmax(0,1fr)}.enrollment-funnel-body{grid-template-columns:1fr;min-height:auto}.enrollment-funnel-chart{height:245px}.enrollment-funnel-rates{padding:0 10px 12px}.enrollment-chart-legend{display:none}.enrollment-report-chart{height:270px;overflow-x:auto}.enrollment-source-table{padding:0 10px 10px;overflow-x:auto}.enrollment-source-row{min-width:560px}.enrollment-level-body{grid-template-columns:1fr;min-height:auto}.enrollment-level-pie{height:210px}.enrollment-level-list{padding:0 10px 12px}.enrollment-course-panel,.enrollment-owner-panel,.enrollment-recent-panel{margin:0 10px}.enrollment-report-panel>header{padding:9px 12px}}.app-topbar__popover--campus .app-topbar__menu-item{justify-content:space-between;align-items:center;gap:10px;min-height:36px;display:flex}.app-topbar__popover--campus .app-topbar__menu-item svg{flex:none}.app-campus-manage-link{min-height:36px;color:var(--brand-600);border-top:1px solid var(--line);justify-content:center;align-items:center;margin-top:6px;font-size:12px;text-decoration:none;display:flex}.campus-management-page,.operation-logs-page{min-height:100%}.campus-summary-strip,.operation-log-summary{color:#475467;background:#fff;border:1px solid #e5e9ef;border-radius:5px;align-items:center;gap:18px;min-height:72px;margin:16px;padding:14px 18px;display:flex}.campus-summary-strip>div{border-right:1px solid #edf0f4;grid-template-rows:20px 24px;grid-template-columns:34px 1fr;align-items:center;min-width:150px;padding-right:20px;display:grid}.campus-summary-strip>div>svg{color:#f47a00;grid-row:1/3}.campus-summary-strip>div span{color:#858e9b;font-size:12px}.campus-summary-strip>div strong{color:#172033;font-size:22px;line-height:24px}.campus-summary-strip>p{color:#768191;margin:0 0 0 auto;font-size:12px}.campus-panel,.operation-log-panel{overflow:hidden}.campus-panel-heading{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;min-height:58px;padding:0 16px;display:flex}.campus-panel-heading>div{gap:2px;display:grid}.campus-panel-heading strong{color:#182230;font-size:14px}.campus-panel-heading span{color:#8a94a4;font-size:11px}.campus-panel-heading>button,.operation-logs-page .academy-heading-actions>button,.operation-logs-page .academy-heading>button{color:#5e6876;cursor:pointer;background:#fff;border:1px solid #dfe3e9;border-radius:3px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 13px;display:inline-flex}.campus-table,.operation-log-table{min-width:100%}.campus-row{border-bottom:1px solid #edf0f3;grid-template-columns:72px minmax(150px,1.2fr) 100px 130px minmax(180px,1.4fr) minmax(210px,1.6fr) 76px minmax(210px,auto);align-items:center;min-height:68px;display:grid}.campus-row.head{color:#7b8492;background:#fafbfc;min-height:43px;font-size:12px}.campus-row>*{min-width:0;padding:8px 10px}.campus-row>strong{color:#1e2938;align-items:center;gap:9px;display:flex}.campus-row>strong>span{color:#fff;background:#ef7d24;border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:12px;display:grid}.campus-actions,.campus-address,.campus-sort{align-items:center;display:flex}.campus-sort{gap:3px}.campus-sort button{color:#6e7785;cursor:pointer;background:#fff;border:1px solid #e0e4ea;border-radius:3px;place-items:center;width:25px;height:25px;display:grid}.campus-sort button:disabled{opacity:.35;cursor:not-allowed}.campus-address{color:#657080;text-overflow:ellipsis;white-space:nowrap;gap:5px;overflow:hidden}.campus-counts{flex-wrap:wrap;gap:5px;display:flex}.campus-counts em{color:#566171;white-space:nowrap;background:#f3f5f7;border-radius:3px;padding:2px 6px;font-size:10px;font-style:normal}.campus-status,.operation-action{border-radius:3px;justify-content:center;align-items:center;width:fit-content;font-size:11px;font-style:normal;display:inline-flex}.campus-status{min-width:46px;min-height:24px}.campus-status.active{color:#16815f;background:#e8f6f0}.campus-status.discontinued{color:#7c8490;background:#eef0f2}.campus-actions{flex-wrap:wrap;gap:4px}.campus-actions button.danger{color:#cf3f49}.campus-form textarea{resize:vertical}.operation-log-summary{border-left:3px solid #386ea8;gap:12px}.operation-log-summary>svg{color:#386ea8}.operation-log-summary>div{gap:2px;display:grid}.operation-log-summary strong{color:#1d2939}.operation-log-summary span{color:#7b8491;font-size:11px}.operation-log-summary em{color:#365f8e;background:#edf4fb;border-radius:3px;margin-left:auto;padding:5px 9px;font-size:11px;font-style:normal}.operation-log-toolbar{flex-wrap:wrap}.operation-log-toolbar>label{flex:260px;min-width:260px}.staff-campus-fieldset{border:1px solid #dce1e7;border-radius:3px;grid-column:1/-1;min-width:0;margin:0;padding:12px}.staff-campus-fieldset>legend{color:#616a77;padding:0 5px;font-size:11px}.staff-campus-fieldset .staff-campus-all,.staff-campus-fieldset .staff-campus-option{grid-template-columns:none;align-items:center;gap:7px;min-width:0;display:flex}.staff-campus-fieldset input[type=checkbox]{flex:0 0 15px;width:15px;height:15px}.staff-campus-options{border-top:1px solid #edf0f3;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;padding-top:10px;display:grid}.staff-campus-options>p{color:#a45b13;grid-column:1/-1;margin:0;font-size:12px}@media (max-width:640px){.staff-campus-options{grid-template-columns:1fr}}.operation-log-toolbar>input[type=date],.operation-log-toolbar>select{min-width:130px}.operation-log-row{border-bottom:1px solid #edf0f3;grid-template-columns:170px 120px 120px 100px minmax(180px,1fr) 76px;align-items:center;min-height:55px;display:grid}.operation-log-row.head{color:#7b8492;background:#fafbfc;min-height:43px;font-size:12px}.operation-log-row>*{min-width:0;padding:8px 12px}.operation-log-row time{color:#5d6775;font-size:12px}.operation-log-row>strong{color:#253042}.operation-log-row>span{color:#5f6978;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.operation-log-row>span small{color:#9aa2ae;text-overflow:ellipsis;margin-top:2px;display:block;overflow:hidden}.operation-log-row>button{color:#3472b1;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;display:inline-flex}.operation-action{min-width:52px;min-height:24px;padding:0 6px}.operation-action.create{color:#16815f;background:#e6f5ee}.operation-action.update{color:#2f6eaa;background:#eaf2fb}.operation-action.delete{color:#c83f4b;background:#fdecef}.operation-action.login{color:#6c55a4;background:#f1edfa}.operation-action.export{color:#aa6a13;background:#fff4df}.operation-action.approve{color:#167b83;background:#e5f5f5}.operation-log-pagination{justify-content:flex-end;align-items:center;gap:8px;min-height:52px;padding:0 14px;display:flex}.operation-log-pagination>span{color:#7b8491;margin-right:auto;font-size:12px}.operation-log-pagination button,.operation-log-pagination select{color:#5d6775;background:#fff;border:1px solid #dfe3e9;border-radius:3px;min-height:30px;padding:0 10px}.operation-log-pagination button:disabled{opacity:.4}.operation-log-detail{gap:16px;display:grid}.operation-log-meta{background:#f8fafc;border:1px solid #e6eaf0;border-radius:4px;padding:14px}.operation-log-meta>div{color:#386ea8;align-items:center;gap:9px;margin-bottom:12px;display:flex}.operation-log-meta>div>span{display:grid}.operation-log-meta>div small{color:#8490a0;font-size:10px}.operation-log-meta>div strong{color:#233044}.operation-log-meta dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 16px;margin:0;display:grid}.operation-log-meta dl>div{min-width:0}.operation-log-meta dt{color:#8a94a3;font-size:10px}.operation-log-meta dd{color:#3e4959;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;overflow:hidden}.operation-json-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.operation-json-grid.compare{grid-template-columns:repeat(2,minmax(0,1fr))}.operation-business-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.operation-business-grid.compare{grid-template-columns:repeat(2,minmax(0,1fr))}.operation-business-panel{background:#fff;border:1px solid #e1e6ec;border-radius:4px;min-width:0}.operation-business-panel header{color:#3e4959;background:#f7f9fb;border-bottom:1px solid #e7eaf0;min-height:38px;padding:10px 12px}.operation-business-panel dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0;padding:14px;display:grid}.operation-business-panel dt{color:#8a94a3;font-size:10px}.operation-business-panel dd{color:#3e4959;overflow-wrap:anywhere;margin:3px 0 0}.operation-business-panel p{color:#7b8492;margin:0;padding:18px 14px}.operation-technical-details{background:#f8fafc;border:1px solid #e1e6ec;border-radius:4px}.operation-technical-details>summary{color:#5f6b7b;cursor:pointer;padding:11px 13px;font-size:12px}.operation-technical-details>dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0;padding:0 13px 12px;display:grid}.operation-technical-details>dl dt{color:#8a94a3;font-size:10px}.operation-technical-details>dl dd{color:#475467;overflow-wrap:anywhere;margin:3px 0 0}.operation-technical-details .operation-json-grid{padding:0 12px 12px}@media (max-width:680px){.operation-business-grid.compare,.operation-business-panel dl,.operation-technical-details .operation-json-grid.compare,.operation-technical-details>dl{grid-template-columns:1fr}}.operation-json-panel{border:1px solid #e1e6ec;border-radius:4px;min-width:0;overflow:hidden}.operation-json-panel header{color:#4e5968;background:#f7f9fb;border-bottom:1px solid #e7eaf0;align-items:center;gap:7px;min-height:38px;padding:0 12px;display:flex}.operation-json-panel.before header{color:#9a4f57;background:#fff5f6}.operation-json-panel.after header{color:#267157;background:#f0faf5}.operation-json-panel pre{color:#334155;white-space:pre-wrap;word-break:break-word;background:#fff;min-height:180px;max-height:360px;margin:0;padding:13px;font-family:Consolas,Courier New,monospace;font-size:11px;line-height:1.65;overflow:auto}@media (max-width:1100px){.campus-panel,.operation-log-panel{overflow-x:auto}.campus-table{min-width:1180px}.operation-log-table{min-width:920px}}@media (max-width:767px){.app-topbar__actions .app-topbar__menu-wrap.app-topbar__campus-wrap{display:block}.app-campus-select{max-width:148px;padding:0 7px}.app-campus-select span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campus-summary-strip,.operation-log-summary{margin:10px}.campus-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.campus-summary-strip>div{border-right:0;min-width:0;padding-right:0}.campus-summary-strip>p{grid-column:1/-1;margin:0}.operation-log-summary>div span{display:none}.operation-log-toolbar{align-items:stretch}.operation-log-toolbar>input[type=date],.operation-log-toolbar>label,.operation-log-toolbar>select{flex:100%;width:100%;min-width:0}.operation-log-pagination{flex-wrap:wrap;justify-content:center;padding:10px}.operation-log-pagination>span{text-align:center;width:100%;margin:0}.operation-json-grid.compare,.operation-log-meta dl{grid-template-columns:minmax(0,1fr)}}.remaining-hours-page{gap:14px;display:grid}.remaining-hours-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.remaining-hours-cards article{background:#fff;border:1px solid #e7ebef;border-radius:6px;align-items:center;gap:13px;min-height:82px;padding:16px;display:flex}.remaining-hours-cards article>svg{border-radius:5px;width:38px;height:38px;padding:9px}.remaining-hours-cards article div{gap:3px;display:grid}.remaining-hours-cards span{color:#7b8592;font-size:12px}.remaining-hours-cards strong{color:#162033;font-size:24px;line-height:1}.remaining-hours-cards .blue svg{color:#2779c6;background:#eaf4ff}.remaining-hours-cards .green svg{color:#168566;background:#e9f8f2}.remaining-hours-cards .gray svg{color:#667085;background:#f1f3f5}.remaining-hours-cards .orange svg{color:#e47210;background:#fff2e2}.remaining-hours-panel{background:#fff;border:1px solid #e7ebef;border-radius:6px;overflow:hidden}.remaining-hours-filters{border-bottom:1px solid #edf0f3;flex-wrap:wrap;gap:8px;padding:14px 16px;display:flex}.remaining-hours-filters label{border:1px solid #dfe4e9;border-radius:4px;align-items:center;min-width:220px;padding:0 10px;display:flex}.remaining-hours-filters input,.remaining-hours-filters select{color:#344054;background:#fff;border:1px solid #dfe4e9;border-radius:4px;min-width:150px;height:34px}.remaining-hours-filters label input{border:0;outline:0;width:100%}.remaining-hours-filters button{color:#fff;background:#f47a00;border:0;border-radius:4px;height:34px;padding:0 16px}.remaining-hours-filters button:last-child{color:#5f6977;background:#fff;border:1px solid #dfe4e9}.remaining-hours-table{min-width:1050px}.remaining-hours-table .row{border-bottom:1px solid #edf0f3;grid-template-columns:.75fr 1fr .9fr 1.55fr .65fr .65fr .7fr .85fr .7fr;align-items:center;min-height:52px;padding:0 16px;display:grid}.remaining-hours-table .row.head{color:#7b8592;background:#f8f9fb;min-height:42px;font-size:12px}.remaining-hours-table .row>span{min-width:0}.remaining-hours-table .row span:has(>b){gap:2px;display:grid}.remaining-hours-table .row small{color:#8b94a1;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.remaining-hours-table .danger{color:#e5484d}.remaining-status{border-radius:10px;padding:2px 8px;font-size:11px;font-style:normal;display:inline-flex}.remaining-status.normal{color:#138566;background:#e8f7f1}.remaining-status.low{color:#d46a08;background:#fff1df}.remaining-status.empty{color:#d23f45;background:#ffebec}.remaining-status.expired{color:#667085;background:#eef0f3}.remaining-hours-footer{color:#737d89;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:12px;display:flex}.remaining-hours-footer div{align-items:center;gap:8px;display:flex}.remaining-hours-footer button{background:#fff;border:1px solid #dfe4e9;border-radius:4px;height:30px;padding:0 12px}@media (max-width:767px){.remaining-hours-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.remaining-hours-cards article{min-height:72px;padding:12px}.remaining-hours-filters>*{flex:145px;min-width:0}.remaining-hours-panel{overflow-x:auto}.remaining-hours-footer{min-width:720px}}:root{--brand-50:#fff8f0;--brand-100:#fff0df;--brand-200:#ffd9ad;--brand-400:#ffab4d;--brand-500:#ff8a16;--brand-600:#f47a00;--sidebar:#1d222a;--sidebar-active:#33291f;--canvas:#f4f6f8;--surface:#fff;--text-strong:#101828;--text:#344054;--muted:#8a94a6;--line:#e8ebef;--blue:#2475c5;--teal:#159b83;--coral:#ef725d;--danger:#ef5b56;--sidebar-width:220px;--sidebar-collapsed:72px;--topbar-height:56px;--radius-panel:8px;--radius-control:4px;--shadow-panel:0 3px 14px #1018280d}*{box-sizing:border-box}html{min-width:320px}body,html{background:var(--canvas)}body{color:var(--text);letter-spacing:0;-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:14px;line-height:1.5}body>.tenant-login-page~.compliance-footer{display:none}button,input,select{font:inherit;letter-spacing:0}a,button,select{-webkit-tap-highlight-color:transparent}a,button{color:inherit}a{text-decoration:none}svg{display:block}::selection{color:#fff;background:var(--brand-500)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cfd5dc;border-radius:8px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.surface{background:var(--surface);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);border:1px solid #e8ebefb3}.focus-ring:focus-visible{outline-offset:2px;outline:3px solid #ff8a163d}@keyframes panel-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.panel-enter{animation:panel-enter .42s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--enter-delay,0s)}.dashboard-stack{gap:16px;width:100%;display:grid}@media (max-width:767px){.dashboard-stack{gap:12px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{--shell-sidebar-width:var(--sidebar-width);background:var(--canvas);min-height:100dvh}.app-shell--collapsed{--shell-sidebar-width:var(--sidebar-collapsed)}.app-shell__main{min-width:0;min-height:100dvh;margin-left:var(--shell-sidebar-width);transition:margin-left .24s}.app-sidebar{z-index:40;width:var(--sidebar-width);color:#b6becb;background:var(--sidebar);flex-direction:column;transition:width .24s,transform .24s;display:flex;position:fixed;inset:0 auto 0 0}.app-sidebar--collapsed{width:var(--sidebar-collapsed)}.app-sidebar__brand{min-height:var(--topbar-height);color:#fff;background:#171b22;align-items:center;gap:10px;padding:0 14px;display:flex;position:relative;overflow:hidden}.app-sidebar__logo{color:#fff;background:var(--brand-500);border-radius:8px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:17px;font-weight:700;display:grid}.app-sidebar__brand-name{white-space:nowrap;min-width:max-content;font-size:16px}.app-sidebar__version{color:#fff;background:var(--brand-600);border-radius:3px;min-width:max-content;padding:1px 5px;font-size:10px;line-height:18px}.app-sidebar__footer{justify-content:center;margin-top:auto;padding:0 8px 14px;display:flex}.app-sidebar__close{color:#c9d0db;cursor:pointer;background:0 0;border:0;padding:7px;display:none}.app-menu-search{z-index:3;padding:9px 11px 5px;position:relative}.app-menu-search__field{color:#5a4a33;background:#faedd1;border:1px solid #dfc89f;border-radius:4px;align-items:center;gap:7px;height:34px;padding:0 9px;display:flex}.app-menu-search__field:focus-within{border-color:#f4520d;box-shadow:0 0 0 2px #f4520d33}.app-menu-search__field input{color:#5a4a33;letter-spacing:0;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:12px}.app-menu-search__field input::placeholder{color:#75654e}.app-menu-search__field>button{color:#5a4a33;cursor:pointer;background:0 0;border:0;flex:0 0 24px;place-items:center;width:24px;height:24px;padding:0;display:grid}.app-menu-search__collapsed{color:#5a4a33;cursor:pointer;background:#faedd1;border:1px solid #dfc89f;border-radius:4px;place-items:center;width:40px;height:36px;margin:0 auto;display:grid}.app-menu-search__collapsed:focus-visible,.app-menu-search__collapsed:hover{color:#5a4a33;background:#f7e2bb;border-color:#f4520d;box-shadow:0 0 0 2px #f4520d33}.app-menu-search__results{z-index:60;top:98px;right:auto;left:calc(var(--shell-sidebar-width) + 8px);width:min(340px,calc(100vw - var(--shell-sidebar-width) - 20px));color:#5a4a33;background:#fff9ec;border:1px solid #e4cda5;border-radius:5px;max-height:min(460px,100dvh - 125px);padding:5px;position:fixed;overflow-y:auto;box-shadow:0 12px 30px #0c121c47}.app-menu-search__field--floating{z-index:61;color:#5a4a33;background:#faedd1;border-color:#dfc89f;width:340px;position:fixed;top:66px;left:73px;box-shadow:0 8px 24px #0c121c33}.app-menu-search__field--floating input{color:#5a4a33}.app-menu-search__results.is-floating{width:340px;position:fixed;top:106px;left:73px;right:auto}.app-menu-search__results>button{width:100%;min-height:55px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:8px 10px;display:grid}.app-menu-search__results>button.is-active,.app-menu-search__results>button:hover{color:#a63a0a;background:#f9e4bd}.app-menu-search__results strong{font-size:13px;line-height:18px}.app-menu-search__results strong.is-indirect-match{color:#a63a0a}.app-menu-search__results small,.app-menu-search__results span{color:#806f55;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:15px;overflow:hidden}.app-menu-search__results small{color:#6d5b42}.app-menu-search__results mark{color:#9f3307;background:#ffd1a1;border-radius:2px;padding:0 2px}.app-menu-search__results>p{color:#806f55;text-align:center;margin:0;padding:20px 10px;font-size:12px}.app-sidebar__nav{min-height:0;padding:8px 0 18px;overflow:hidden auto}.app-sidebar__nav::-webkit-scrollbar{width:4px}.app-sidebar__nav::-webkit-scrollbar-thumb{background:#414751}.app-sidebar__group{position:relative}.app-nav-child,.app-nav-item{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;transition:color .16s,background-color .16s;display:flex;position:relative}.app-nav-item{gap:14px;height:48px;padding:0 20px 0 23px}.app-nav-item.is-active:before{content:"";background:var(--brand-500);width:3px;position:absolute;inset:0 auto 0 0}.app-nav-item__icon{flex:none}.app-nav-item__label{white-space:nowrap;flex:auto;min-width:0}.app-nav-item__badge{color:#fff;background:var(--brand-500);border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:11px;line-height:18px;display:grid}.app-nav-item__chevron{flex:none;transition:transform .18s}.app-sidebar__group.is-expanded>.app-nav-item .app-nav-item__chevron{transform:rotate(180deg)}.app-nav-children{max-height:0;transition:max-height .22s;overflow:hidden}.app-sidebar__group.is-expanded .app-nav-children{max-height:440px}.app-nav-child{min-height:42px;padding:9px 18px 9px 54px;font-size:13px}.app-nav-child.is-active{color:var(--brand-500)}.app-sidebar--collapsed .app-sidebar__brand{flex-direction:column;justify-content:center;gap:2px;padding-inline:0}.app-sidebar--collapsed .app-nav-item__badge,.app-sidebar--collapsed .app-nav-item__chevron,.app-sidebar--collapsed .app-nav-item__label,.app-sidebar--collapsed .app-sidebar__brand-name{display:none}.app-sidebar--collapsed .app-sidebar__version{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:52px;font-size:8px;line-height:15px;overflow:hidden}.app-sidebar--collapsed .app-sidebar__footer{padding:0 3px 9px}.app-sidebar--collapsed .app-nav-item{justify-content:center;padding:0}.app-sidebar--collapsed .app-nav-children{display:none}.app-sidebar--collapsed .app-menu-search{padding-inline:0}.app-sidebar--collapsed .app-nav-item:after{z-index:4;color:#fff;content:attr(data-tooltip);opacity:0;pointer-events:none;white-space:nowrap;background:#171b22;border-radius:4px;padding:6px 9px;font-size:12px;line-height:18px;transition:opacity .14s,transform .14s;position:absolute;top:50%;left:calc(100% + 9px);transform:translate(4px,-50%)}.app-sidebar--collapsed .app-nav-item:focus-visible:after,.app-sidebar--collapsed .app-nav-item:hover:after{opacity:1;transform:translateY(-50%)}.app-sidebar__backdrop{z-index:35;opacity:0;cursor:pointer;background:#1018287a;border:0;padding:0;transition:opacity .24s;display:none;position:fixed;inset:0}.app-topbar{height:var(--topbar-height);background:#fffffffa;border-bottom:1px solid #edf0f2;justify-content:space-between;padding:0 14px 0 8px;position:sticky;top:0}.app-account,.app-campus-select,.app-topbar,.app-topbar__actions,.app-topbar__left{align-items:center;display:flex}.app-topbar__left{gap:8px;min-width:0}.app-topbar__actions{gap:10px}.app-topbar__desktop-collapse{color:#667085;cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;width:34px;height:34px;display:grid}.app-topbar__desktop-collapse:hover{color:#f47a00;background:#fff4e6}.app-account,.app-campus-select,.app-topbar__icon-button,.app-topbar__toggle{cursor:pointer;background:0 0;border:0}.app-topbar__icon-button,.app-topbar__toggle{color:#667085;border-radius:5px;place-items:center;width:38px;height:38px;transition:color .16s,background-color .16s;display:grid}.app-topbar__icon-button:hover,.app-topbar__toggle:hover{color:var(--brand-600);background:var(--brand-50)}.app-topbar__toggle-mobile{display:none}.app-topbar__title{color:#475467;white-space:nowrap}.app-topbar__campus-wrap,.app-topbar__notifications{position:relative}.app-campus-select{border-radius:var(--radius-control);height:30px;color:var(--brand-600);border:1px solid #ffc985;gap:6px;padding:0 10px;font-size:12px;transition:border-color .16s,background-color .16s}.app-campus-select:hover{border-color:var(--brand-500);background:var(--brand-50)}.app-topbar__icon-button{position:relative}.app-topbar__notification-badge{color:#fff;background:var(--danger);border:2px solid #fff;border-radius:10px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:700;line-height:14px;display:grid;position:absolute;top:1px;right:1px}.app-account{color:var(--text-strong);border-radius:5px;gap:8px;padding:4px 5px}.app-account:hover{background:#f6f7f9}.app-account__avatar{color:#fff;background:var(--brand-500);border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.app-account__name{white-space:nowrap;font-size:13px;font-weight:600}.app-account__chevron{color:#98a2b3}.app-topbar__popover{z-index:50;border:1px solid var(--line);border-radius:6px;top:calc(100% + 9px);box-shadow:0 10px 30px #10182821}.app-topbar__popover--campus{width:250px}.app-topbar__popover--notifications{width:270px}.app-topbar__popover-title{color:var(--text-strong);padding:6px 8px 9px;font-weight:650}.app-topbar__menu-item{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;width:100%;padding:9px 10px}.app-topbar__menu-item.is-selected,.app-topbar__menu-item:hover{color:var(--brand-600);background:var(--brand-50)}.app-topbar__empty{color:var(--muted);text-align:center;margin:0;padding:25px 8px 30px}@media (max-width:1023px) and (min-width:768px){.app-shell{--shell-sidebar-width:var(--sidebar-collapsed)}.app-sidebar{width:var(--sidebar-collapsed)}.app-sidebar .app-sidebar__brand{flex-direction:column;justify-content:center;gap:2px;padding-inline:0}.app-sidebar .app-nav-item__badge,.app-sidebar .app-nav-item__chevron,.app-sidebar .app-nav-item__label,.app-sidebar .app-sidebar__brand-name{display:none}.app-sidebar .app-sidebar__version{text-overflow:ellipsis;max-width:52px;font-size:8px;display:inline-block;overflow:hidden}.app-sidebar .app-sidebar__footer{padding:0 3px 9px}.app-sidebar .app-nav-item{justify-content:center;padding:0}.app-sidebar .app-nav-children{display:none}}@media (max-width:767px){.app-shell,.app-shell--collapsed{--shell-sidebar-width:0px}.app-shell__main{margin-left:0}.app-shell__content{padding:12px}.app-sidebar,.app-sidebar--collapsed{width:min(82vw,300px);transform:translate(-102%);box-shadow:12px 0 34px #1018283b}.app-sidebar--mobile-open{transform:translate(0)}.app-sidebar--collapsed .app-sidebar__brand{flex-direction:row;justify-content:flex-start;gap:10px;padding:0 14px}.app-sidebar--collapsed .app-sidebar__brand-name,.app-sidebar--collapsed .app-sidebar__version{display:inline}.app-sidebar--collapsed .app-sidebar__footer{justify-content:flex-start;padding:0 14px 12px}.app-sidebar--collapsed .app-nav-item__badge,.app-sidebar--collapsed .app-nav-item__chevron,.app-sidebar--collapsed .app-nav-item__label{display:initial}.app-sidebar--collapsed .app-nav-item{justify-content:flex-start;padding:0 20px 0 23px}.app-sidebar--collapsed .app-nav-children{display:block}.app-sidebar--collapsed .app-nav-item:after{display:none}.app-sidebar__close{place-items:center;margin-left:auto;display:grid}.app-sidebar__backdrop{visibility:hidden;display:block}.app-sidebar__backdrop.is-visible{visibility:visible;opacity:1}.app-topbar{padding-inline:8px}.app-topbar__desktop-collapse,.app-topbar__toggle-desktop{display:none}.app-topbar__toggle-mobile{display:block}.app-account__chevron,.app-account__name,.app-topbar__campus-wrap{display:none}.app-topbar__actions{gap:2px}}:root{--sidebar-width:110px;--sidebar-collapsed:64px;--topbar-height:47px;--sidebar:#f47a00;--sidebar-active:#d96b00;--canvas:#eff0f8}.app-shell{background:#eff0f8}.app-shell__content{min-height:calc(100dvh - 78px);padding:0}.app-sidebar{color:#fffffff5;width:110px;box-shadow:none;background:#f47a00}.app-sidebar.app-sidebar--collapsed{width:var(--sidebar-collapsed)}.print-navigation-link{color:#46505f;min-height:30px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7dbe2;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 10px;line-height:1;text-decoration:none;display:inline-flex}.print-navigation-link:focus-visible,.print-navigation-link:hover{border-color:var(--brand-500);color:var(--brand-600)}.academy-modal footer .print-navigation-link.primary{border-color:var(--brand-500);color:#fff;background:var(--brand-500)}.print-navigation-error{color:#b42318;gap:4px;display:grid}.print-navigation-error input{min-width:220px}.app-sidebar__brand{background:#ee7200;justify-content:center;gap:5px;min-height:47px;padding:0 6px}.app-sidebar__logo{color:#f47a00;background:#fff;border:1px solid #ffffffdb;border-radius:5px;flex-basis:28px;width:28px;height:28px;font-size:14px}.app-sidebar__brand-name{color:#fff;min-width:0;font-size:13px;font-weight:700}.app-sidebar__nav{padding:28px 0 18px}.app-nav-item{color:#fff;gap:10px;height:49px;padding:0 12px 0 19px;font-size:14px}.app-nav-child:focus-visible,.app-nav-child:hover,.app-nav-item:focus-visible,.app-nav-item:hover{color:#fff;background:#df6e00}.app-nav-item.is-active{color:#fff;background:#d96b00}.app-nav-item.is-active:before{display:none}.app-nav-item__badge{color:#0000;background:#ff596e;border-radius:50%;width:6px;min-width:6px;height:6px;padding:0;font-size:0}.app-topbar{z-index:30;background:#fff;border-bottom:1px solid #edf0f4;height:47px;padding:0 16px 0 8px;position:relative}.app-topbar__mobile-menu{color:#73798a;cursor:pointer;background:0 0;border:0;border-radius:3px;place-items:center;width:36px;height:36px;padding:0;display:none}.app-topbar__actions{gap:18px;height:100%}.app-topbar__menu-wrap{align-items:center;height:100%;display:flex;position:relative}.app-topbar__avatar,.app-topbar__plain-icon,.app-topbar__text-action{color:#6f7481;cursor:pointer;background:0 0;border:0;padding:0}.app-topbar__plain-icon{color:#c7c9cf;place-items:center;width:22px;height:28px;display:grid}.app-topbar__text-action{white-space:nowrap;align-items:center;gap:5px;height:36px;font-size:14px;transition:color .15s;display:inline-flex}.app-topbar__ai,.app-topbar__text-action:hover,.app-topbar__text-action[aria-expanded=true]{color:#f47a00}.app-topbar__avatar{border-radius:50%;place-items:center;width:28px;height:28px;display:grid;overflow:hidden}.app-topbar__avatar img{object-fit:cover;width:100%;height:100%}.app-topbar__popover{z-index:80;background:#fff;border:1px solid #e5e7ed;border-radius:2px;padding:8px;animation:top-pop .16s both;position:absolute;top:calc(100% - 1px);right:0;box-shadow:0 2px 7px #00000024}.app-topbar__popover.compact{width:156px}.app-topbar__popover.account button,.app-topbar__popover.compact button{text-align:left;color:#606672;cursor:pointer;background:0 0;border:0;border-radius:2px;width:100%;height:34px}.app-topbar__popover.account button:hover,.app-topbar__popover.compact button:hover{color:#f47a00;background:#fff6ed}.app-topbar__popover.feedback{width:270px;padding:14px}.app-topbar__popover.feedback strong{color:#343a46;margin-bottom:10px;display:block}.app-topbar__popover.feedback textarea{resize:vertical;border:1px solid #dfe2e9;border-radius:3px;outline:none;width:100%;min-height:82px;padding:8px}.app-topbar__popover.feedback textarea:focus{border-color:#f47a00;box-shadow:0 0 0 3px #f47a001c}.app-topbar__popover.feedback>button,.app-topbar__popover.organization>button{color:#fff;cursor:pointer;background:#f47a00;border:0;border-radius:2px;width:100%;height:32px;margin-top:10px}.app-topbar__popover.organization{width:200px;padding:20px}.organization-current{color:#4f5664;align-items:center;gap:8px;min-height:45px;display:flex}.organization-current span{background:#f47a00;border:4px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 1px #f47a00}.app-topbar__popover.account{width:190px;padding:13px}.app-topbar__popover.account strong,.app-topbar__popover.account>span{display:block}.app-topbar__popover.account strong{color:#343a46}.app-topbar__popover.account>span{color:#969ba6;margin-bottom:9px;font-size:12px}.app-topbar__popover.feedback>button:disabled{cursor:not-allowed;opacity:.48}.app-topbar__toast{z-index:100;color:#bd650f;background:#fff8ef;border:1px solid #f8d1aa;border-radius:3px;padding:8px 15px;font-size:12px;animation:top-pop .16s both;position:fixed;top:60px;left:50%;transform:translate(-50%);box-shadow:0 5px 16px #1a1f291f}@keyframes top-pop{0%{opacity:0;transform:translateY(-4px)}}.app-worktabs{background:#fff;border-bottom:1px solid #e6e8ef;align-items:stretch;height:31px;display:flex}.app-worktabs__refresh,.app-worktabs__tab{color:#777d8d;cursor:pointer;background:#fff;border:0;border-right:1px solid #edf0f4;align-items:center;padding:0;display:inline-flex}.app-worktabs__refresh{color:#9fa4ae;justify-content:center;width:55px}.app-worktabs__tab{color:#6a7080;justify-content:center;gap:5px;min-width:56px;font-size:12px;position:relative}.app-worktabs__tab.is-active:after{content:"";background:#f47a00;height:2px;position:absolute;bottom:-1px;left:0;right:0}.app-worktabs__refresh:hover,.app-worktabs__tab:hover{color:#f47a00;background:#fff8f0}.app-worktabs__refresh.is-refreshing svg{animation:refresh-spin .5s linear}@keyframes refresh-spin{to{transform:rotate(1turn)}}.app-worktabs__scroller{scrollbar-width:none;flex:auto;min-width:0;display:flex;overflow:auto hidden}.app-worktabs__scroller::-webkit-scrollbar{display:none}.app-worktabs__tab{min-width:max-content;padding:0 14px}.app-worktabs__tab i{color:#a8acb6;border-radius:50%;place-items:center;width:17px;height:17px;font-style:normal;display:grid}.app-worktabs__tab i:hover{color:#fff;background:#b6bac3}.source-submenu-backdrop{z-index:44;cursor:default;background:#00000080;border:0;padding:0;animation:source-backdrop-in .16s both;position:fixed;inset:0}.source-submenu-panel{z-index:45;inset:0 auto 8px var(--shell-sidebar-width);color:#4b515e;background:#fff;width:350px;animation:source-submenu-in .2s cubic-bezier(.2,.75,.25,1) both;position:fixed;overflow:hidden;box-shadow:4px 0 14px #00000021}.source-submenu-panel__brand{border-bottom:1px solid #f0f1f4;align-items:center;gap:9px;height:60px;padding:0 19px;display:flex}.source-submenu-panel__brand>span{color:#fff;background:#f47a00;border-radius:5px;place-items:center;width:29px;height:29px;font-size:14px;font-weight:700;display:grid}.source-submenu-panel__brand strong{color:#151924;font-size:16px}.source-submenu-panel__brand button{color:#979ca7;cursor:pointer;background:0 0;border:0;border-radius:3px;place-items:center;width:30px;height:30px;margin-left:auto;display:grid}.source-submenu-panel__brand button:hover{color:#f47a00;background:#fff6ed}.source-submenu-panel__body{height:calc(100% - 60px);padding:19px 25px 35px;overflow-y:auto}.source-submenu-group+.source-submenu-group{margin-top:21px}.source-submenu-group h2{color:#292f3b;align-items:center;gap:3px;margin:0 0 9px;font-size:14px;font-weight:600;display:flex}.source-submenu-group h2 svg{color:#f47a00}.source-submenu-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 15px;display:grid}.source-submenu-links button{color:#6a707d;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:2px;align-items:center;gap:6px;min-width:0;height:31px;padding:0 10px 0 17px;display:flex;overflow:hidden}.source-submenu-links button.active,.source-submenu-links button:hover{color:#f47a00;background:#fff5ea}.source-submenu-links button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.source-submenu-link-badge{color:#fff;background:#f47a00;border-radius:9px;place-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:10px;font-style:normal;display:inline-grid}.source-submenu-group>p{color:#a4a9b2;margin:0;font-size:12px}@keyframes source-backdrop-in{0%{opacity:0}}@keyframes source-submenu-in{0%{opacity:0;transform:translate(-12px)}}.module-page{color:#434957;background:#f3f4f8;min-height:calc(100dvh - 78px);padding:15px 18px 30px}.module-page button,.module-page input,.module-page select,.module-page textarea{font-size:12px}.module-page button{cursor:pointer}.feature-placeholder-page{min-height:calc(100dvh - 78px);padding:10px}.feature-placeholder-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);min-height:420px;box-shadow:var(--shadow-panel);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.feature-placeholder-icon{width:64px;height:64px;color:var(--brand-600);background:var(--brand-50);border-radius:50%;place-items:center;display:grid}.feature-placeholder-panel h2{color:var(--text-strong);margin:0;font-size:18px;font-weight:600}.feature-placeholder-panel p{max-width:520px;color:var(--muted);margin:0;font-size:13px;line-height:1.8}.feature-placeholder-panel small{color:#98a2b3;align-items:center;gap:5px;font-size:12px;display:inline-flex}.module-page__heading{background:#fff;border-bottom:1px solid #eceef3;justify-content:space-between;align-items:center;min-height:54px;padding:0 17px;display:flex}.module-page__heading>div>span{color:#a0a5b0;font-size:11px;line-height:17px;display:block}.module-page__heading h1{color:#252a35;margin:0;font-size:16px;font-weight:500;line-height:23px}.module-page__heading>button{color:#a2a6af;background:0 0;border:0;border-radius:3px;place-items:center;width:30px;height:30px;display:grid}.module-page__heading>button:hover{color:#f47a00;background:#fff7ef}.source-filter-band{background:#fff;align-items:center;gap:10px;min-height:61px;margin-top:12px;padding:13px 16px;display:flex}.source-filter-band input,.source-filter-band select{color:#656b78;background:#fff;border:1px solid #dfe2e8;border-radius:2px;outline:none;width:145px;height:33px;padding:0 10px}.module-modal-form input:focus,.module-modal-form select:focus,.source-filter-band input:focus,.source-filter-band select:focus,.source-form-grid input:focus,.source-form-grid select:focus,.source-form-grid textarea:focus{border-color:#f47a00;box-shadow:0 0 0 2px #f47a0017}.source-filter-band button,.source-list-heading button,.source-pagination button,.source-pagination select,.source-row-actions button,.source-table-row>span>button{color:#666d7a;background:#fff;border:1px solid #e0e3e8;border-radius:2px;justify-content:center;align-items:center;gap:5px;height:31px;padding:0 12px;display:inline-flex}.source-filter-band button:hover,.source-list-heading button:hover,.source-pagination button:not(:disabled):hover,.source-row-actions button:hover,.source-table-row>span>button:hover{color:#f47a00;border-color:#f7ad66}.source-filter-band button.primary,.source-list-actions>button:first-child{color:#fff;background:#f47a00;border-color:#f47a00}.source-filter-band button.primary:hover,.source-list-actions>button:first-child:hover{color:#fff;background:#df6f00;border-color:#df6f00}.ai-workbench,.settings-panel,.source-management-panel,.source-report-panel{background:#fff;min-height:430px;margin-top:12px;position:relative}.source-list-heading{border-bottom:1px solid #eceef2;justify-content:space-between;align-items:center;gap:15px;min-height:53px;padding:0 16px;display:flex}.source-list-heading h2{color:#292e39;margin:0;font-size:14px;font-weight:500}.source-list-actions,.source-list-heading>div,.source-list-tabs{align-items:center;gap:8px;display:flex}.source-list-tabs h2{margin-right:13px}.source-list-tabs button{color:#868b97;background:0 0;border-width:0 0 2px;height:53px;padding:0 9px}.source-list-tabs button.active{color:#f47a00;border-color:#f47a00}.source-list-actions input{display:none}.module-inline-success,.module-toast{color:#cb690c;background:#fff8ef;border-bottom:1px solid #f9d9b8;align-items:center;gap:7px;min-height:36px;padding:0 16px;font-size:12px;display:flex}.source-table{width:100%;min-width:900px;overflow:hidden}.source-management-panel{overflow-x:auto}.source-table-row{color:#6a7180;border-bottom:1px solid #eef0f4;align-items:center;min-height:47px;padding:0 13px;font-size:12px;display:grid}.source-table-row:hover:not(.head){background:#fffaf4}.source-table-row.head{color:#8d929d;background:#fafbfc;min-height:40px}.source-table-row strong{color:#3f4653;font-weight:400}.source-table-row em{font-style:normal}.source-table-row em.success{color:#1c9c77}.source-table-row em.pending{color:#e98a25}.source-table-row.family-enrollment{grid-template-columns:1.25fr .85fr .7fr .75fr .85fr .85fr .65fr .65fr 1.25fr}.source-table-row.contract,.source-table-row.family-education,.source-table-row.family-finance,.source-table-row.family-frontdesk,.source-table-row.family-students{grid-template-columns:1.2fr .85fr .9fr .9fr .9fr 1fr .7fr .85fr}.source-table-row.family-learning,.source-table-row.family-marketing,.source-table-row.family-oa{grid-template-columns:1fr 1.25fr .9fr .8fr 1fr 1fr .8fr}.source-row-actions{gap:4px;display:flex}.source-row-actions button,.source-table-row>span>button{color:#4a8fd8;background:0 0;border:0;height:27px;padding:0 5px}.source-row-actions button:hover,.source-table-row>span>button:hover{color:#f47a00;background:0 0;border:0}.source-table-empty{color:#a4a9b1;place-items:center;min-height:270px;display:grid}.source-pagination{color:#8d929d;justify-content:flex-end;align-items:center;gap:6px;min-width:900px;min-height:55px;padding:0 16px;display:flex}.source-pagination button{width:28px;padding:0}.source-pagination button:disabled{cursor:default;opacity:.48}.source-pagination select{color:#707681;background:#fff;border:1px solid #e0e3e8;border-radius:2px;height:31px}.source-pagination strong{font-weight:400}.source-record-form{background:#fff;min-height:620px;margin-top:12px;padding:0 32px 32px}.source-record-form>h2{color:#2d323e;border-bottom:1px solid #eceef2;align-items:center;gap:7px;height:55px;margin:0;font-size:15px;font-weight:500;display:flex}.source-record-form>h2 svg{color:#a7abb3}.source-form-grid{grid-template-columns:repeat(2,minmax(260px,1fr));gap:17px 65px;max-width:1120px;padding:25px 19px;display:grid}.source-form-grid>label{color:#707581;grid-template-columns:105px minmax(0,1fr);align-items:center;gap:12px;display:grid}.source-form-grid>label>span:first-child{text-align:right}.source-form-grid i{color:#ef5f58;margin-right:3px;font-style:normal}.ai-workbench select,.module-modal-form input,.module-modal-form select,.settings-row select,.source-form-grid input,.source-form-grid select,.source-form-grid textarea{color:#5f6673;background:#fff;border:1px solid #dfe2e8;border-radius:2px;outline:none;width:100%;height:34px;padding:0 10px}.source-form-grid input:disabled{color:#a3a7af;background:#f7f8fa}.source-form-grid textarea{resize:vertical;min-height:72px;padding-block:8px}.source-form-wide{grid-column:1/-1}.source-radio{gap:8px;display:flex}.source-radio button{background:#fff;border:1px solid #dfe2e8;border-radius:2px;width:56px;height:30px}.source-radio button.active{color:#f47a00;background:#fff8f0;border-color:#f47a00}.source-record-form>footer{border-top:1px solid #eef0f3;justify-content:center;align-items:center;gap:9px;min-height:62px;display:flex}.module-detail-drawer footer button,.module-modal-form footer button,.settings-panel>footer button,.source-record-form>footer button{color:#666c78;background:#fff;border:1px solid #dedfe5;border-radius:2px;min-width:76px;height:33px;padding:0 15px}.module-modal-form footer button[type=submit],.settings-panel>footer button,.source-record-form>footer button:last-child,.source-record-form>footer button[type=submit]{color:#fff;background:#f47a00;border-color:#f47a00}.source-form-success{color:#159b75;align-items:center;gap:5px;margin-right:12px;font-size:12px;display:inline-flex}.attendance-grid{grid-template-columns:repeat(3,minmax(250px,1fr));gap:15px;padding:18px;display:grid}.attendance-grid article{background:#fff;border:1px solid #e9ebf0;border-radius:3px;padding:17px;transition:border-color .16s,box-shadow .16s}.attendance-grid article:hover{border-color:#f7bc84;box-shadow:0 5px 16px #2d32410f}.attendance-grid article>div{flex-direction:column;gap:3px;display:flex}.attendance-grid article strong{color:#303642;font-size:15px}.attendance-grid article span{color:#9499a4;font-size:12px}.attendance-grid dl{grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0;display:grid}.attendance-grid dl div{border-right:1px solid #edf0f3}.attendance-grid dl div:last-child{border:0}.attendance-grid dt{color:#a2a6ae;font-size:11px}.attendance-grid dd{color:#555b68;margin:3px 0 0;font-size:12px}.attendance-grid article>button{color:#fff;background:#f47a00;border:1px solid #f47a00;border-radius:2px;justify-content:center;align-items:center;gap:5px;width:100%;height:33px;display:flex}.attendance-grid article>button.done{color:#159b75;background:#f2fbf8;border-color:#bce3d8}.module-drawer-layer,.module-modal-layer{z-index:900;background:#161b246b;animation:source-backdrop-in .16s both;position:fixed;inset:0}.module-detail-drawer{background:#fff;width:min(470px,92vw);animation:drawer-in .22s both;position:absolute;top:0;bottom:0;right:0;box-shadow:-7px 0 24px #00000021}.module-detail-drawer header,.module-modal>header{border-bottom:1px solid #eceef2;justify-content:space-between;align-items:center;height:55px;padding:0 18px;display:flex}.module-detail-drawer h2,.module-modal h2{color:#2b303b;margin:0;font-size:15px;font-weight:500}.module-detail-drawer header button,.module-modal header button{color:#9297a1;background:0 0;border:0;place-items:center;width:30px;height:30px;display:grid}.module-detail-drawer dl{margin:0;padding:18px 22px}.module-detail-drawer dl>div{border-bottom:1px solid #f0f1f4;grid-template-columns:112px 1fr;align-items:center;min-height:43px;display:grid}.module-detail-drawer dt{color:#9297a1}.module-detail-drawer dd{color:#444a57;margin:0}.module-detail-drawer footer{border-top:1px solid #eceef2;justify-content:flex-end;align-items:center;height:58px;padding:0 18px;display:flex;position:absolute;bottom:0;left:0;right:0}.module-modal-layer{place-items:center;padding:18px;display:grid}.module-modal{background:#fff;border-radius:3px;width:min(520px,95vw);animation:modal-in .18s both;box-shadow:0 18px 50px #0003}.module-modal-form{gap:15px;padding:20px 24px 24px;display:grid}.module-modal-form label{color:#6f7580;grid-template-columns:85px 1fr;align-items:center;display:grid}.module-modal-form footer{justify-content:flex-end;gap:8px;margin-top:5px;display:flex}@keyframes drawer-in{0%{opacity:.5;transform:translate(30px)}}@keyframes modal-in{0%{opacity:.5;transform:translateY(-8px)}}.report-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.report-summary button{color:#797f8b;text-align:left;background:#fff;border:0;flex-direction:column;align-items:flex-start;height:105px;padding:17px 20px;display:flex}.report-summary button:hover{box-shadow:inset 0 -2px #f47a00}.report-summary strong{color:#f47a00;margin-top:4px;font-size:25px;font-weight:500}.report-summary small{color:#a4a9b1}.source-report-chart{height:390px;padding:20px}.settings-panel{padding:0 26px 28px}.settings-panel>h2{color:#303641;border-bottom:1px solid #eceef2;height:58px;margin:0;padding-top:18px;font-size:15px;font-weight:500}.settings-row{border-bottom:1px solid #f0f1f4;justify-content:space-between;align-items:center;gap:24px;min-height:74px;display:flex}.settings-row>div{flex-direction:column;display:flex}.settings-row strong{color:#3c424f;font-weight:500}.settings-row span{color:#9a9fa8;font-size:12px}.settings-row label{color:#707681;align-items:center;gap:14px;min-width:260px;display:flex}.settings-row select{width:190px}.switch{background:#c8ccd4;border:0;border-radius:12px;width:39px;height:22px;padding:0;position:relative}.switch i{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:3px;left:3px}.switch.active{background:#f47a00}.switch.active i{transform:translate(17px)}.settings-panel>footer{justify-content:flex-end;align-items:center;gap:14px;height:70px;display:flex}.settings-panel>footer span{color:#159b75;align-items:center;gap:5px;display:inline-flex}.app-library-tabs{background:#fff;align-items:flex-end;gap:21px;height:56px;padding:0 22px;display:flex}.app-library-tabs button{color:#767c88;background:0 0;border:0;border-bottom:2px solid #0000;height:43px;padding:0 8px}.app-library-tabs button.active{color:#f47a00;border-color:#f47a00}.app-library-grid{grid-template-columns:repeat(3,minmax(260px,1fr));gap:12px;margin-top:12px;display:grid}.app-library-grid article{background:#fff;grid-template-columns:47px 1fr auto;align-items:center;gap:13px;min-height:120px;padding:18px;display:grid}.app-library-grid article>span{color:#fff;background:#f47a00;border-radius:4px;place-items:center;width:47px;height:47px;display:grid}.app-library-grid strong{color:#363c48;font-weight:500}.app-library-grid p{color:#9a9fa8;margin:5px 0 0;font-size:12px}.app-library-grid article>button{color:#f47a00;background:#fff;border:1px solid #f47a00;border-radius:2px;height:30px;padding:0 10px}.app-library-grid article>button.active{color:#8d929d;background:#f7f8fa;border-color:#dfe2e7}.ai-workbench{grid-template-columns:320px 1fr;min-height:520px;display:grid}.ai-workbench__controls{border-right:1px solid #eceef2;padding:24px}.ai-workbench__controls label{color:#666d78;flex-direction:column;gap:9px;display:flex}.ai-workbench__controls button{color:#fff;background:#f47a00;border:0;border-radius:2px;gap:6px;width:100%;height:35px;margin-top:15px}.ai-result,.ai-workbench__controls button{justify-content:center;align-items:center;display:flex}.ai-result{color:#f47a00;gap:15px;padding:35px}.ai-result>p{color:#9a9fa8}.ai-result strong{color:#333944}.ai-result p{color:#606672;max-width:650px;margin:7px 0;line-height:1.8}.ai-result button{color:#f47a00;background:#fff;border:1px solid #f47a00;border-radius:2px;height:31px;padding:0 12px}@media (max-width:1023px) and (min-width:768px){.app-shell{--shell-sidebar-width:64px}.app-sidebar{width:64px}.app-sidebar .app-sidebar__brand{padding:0}.app-sidebar .app-sidebar__brand-name{display:none}.app-sidebar .app-nav-item{justify-content:center;padding:0}.source-submenu-panel{left:64px}.app-library-grid{grid-template-columns:repeat(2,minmax(250px,1fr))}.attendance-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media (max-width:767px){.app-shell,.app-shell--collapsed{--shell-sidebar-width:0px}.app-sidebar,.app-sidebar--collapsed{width:min(78vw,286px)}.app-sidebar--collapsed .app-sidebar__brand,.app-sidebar__brand{justify-content:flex-start;padding:0 13px}.app-sidebar--collapsed .app-sidebar__brand-name,.app-sidebar__brand-name{font-size:15px;display:inline}.app-sidebar__nav{padding-top:8px}.app-menu-search{padding:10px 13px 4px}.app-menu-search__results{width:auto;max-height:min(430px,100dvh - 135px);position:absolute;top:calc(100% + 2px);left:13px;right:13px}.app-nav-item,.app-sidebar--collapsed .app-nav-item{justify-content:flex-start;padding:0 22px}.app-topbar{padding:0 10px}.app-topbar__mobile-menu{width:44px;height:44px;display:grid}.app-sidebar__close{width:44px;height:44px;padding:10px}.app-topbar__help-wrap .app-topbar__text-action{min-width:44px;min-height:44px}.app-topbar__actions{gap:11px}.app-topbar__feedback-wrap,.app-topbar__plain-icon{display:none}.app-topbar__text-action{gap:0;font-size:0}.app-topbar__text-action svg{width:18px;height:18px}.app-topbar__organization-wrap .app-topbar__text-action{font-size:12px}.app-topbar__organization-wrap .app-topbar__text-action svg{width:12px;height:12px}.app-worktabs{height:44px}.app-worktabs,.app-worktabs__refresh,.app-worktabs__tab{min-height:44px}.app-worktabs__refresh{width:48px;min-width:48px}.app-worktabs__tab{padding-right:0}.app-worktabs__tab i{width:44px;height:44px}.app-shell__content{min-height:calc(100dvh - 91px)}.source-submenu-backdrop{z-index:46}.source-submenu-panel{z-index:47;width:min(92vw,350px);bottom:0;left:0}.source-submenu-panel__body{padding-inline:20px}.module-page{min-height:calc(100dvh - 91px);padding:10px 10px 22px}.module-page__heading{min-height:51px;padding-inline:12px}.source-filter-band{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;display:grid}.source-filter-band input,.source-filter-band select{width:100%}.source-list-heading{flex-direction:column;align-items:flex-start;padding:11px}.source-list-tabs{width:100%;overflow-x:auto}.source-list-tabs button{height:auto;min-height:44px;padding-block:8px}.source-list-actions{flex-wrap:wrap;width:100%}.source-management-panel{min-height:410px}.source-table{min-width:840px}.source-form-grid{grid-template-columns:1fr;row-gap:13px;padding-inline:0}.source-record-form{padding:0 16px 24px}.source-form-grid>label{grid-template-columns:88px minmax(0,1fr)}.source-form-wide{grid-column:auto}.source-record-form>footer{flex-wrap:wrap;justify-content:flex-end}.source-form-success{justify-content:flex-end;width:100%}.attendance-grid{grid-template-columns:1fr;padding:12px}.report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.report-summary button{height:92px;padding:13px}.source-report-chart{height:320px;padding:10px}.settings-row{flex-direction:column;align-items:flex-start;padding:15px 0}.settings-row label{justify-content:space-between;width:100%;min-width:0}.app-library-grid{grid-template-columns:1fr}.app-library-grid article{grid-template-columns:43px 1fr auto;padding:14px}.ai-workbench{grid-template-columns:1fr}.ai-workbench__controls{border-bottom:1px solid #eceef2;border-right:0}.ai-result{align-items:flex-start;padding:24px}}.tenant-login-page{background:#f3f5f8;place-items:center;min-height:100dvh;padding:24px;display:grid}.tenant-login-card{background:#fff;border:1px solid #e5e8ed;border-radius:6px;width:min(410px,100%);padding:32px;box-shadow:0 16px 42px #1a26371a}.tenant-login-card>header{align-items:center;gap:12px;margin-bottom:28px;display:flex}.tenant-login-card>header>span{color:#fff;background:#f58a1f;border-radius:6px;flex:0 0 46px;place-items:center;width:46px;height:46px;font-size:20px;font-weight:700;display:grid}.tenant-login-card h1{color:#1f2a3d;margin:0 0 4px;font-size:22px}.tenant-login-card footer,.tenant-login-card header p{color:#9099a8;margin:0;font-size:11px}.tenant-login-card footer{text-align:center;margin-top:22px}.tenant-login-form{gap:17px;display:grid}.tenant-login-form label{color:#4b5668;gap:7px;font-size:12px;display:grid}.tenant-login-form label>div{border:1px solid #d9dee7;border-radius:4px;align-items:center;height:42px;padding:0 11px;display:flex;position:relative}.tenant-login-form label>div:focus-within{border-color:#f58a1f;box-shadow:0 0 0 3px #f58a1f1a}.tenant-login-form label svg{color:#9ba4b2;flex:none}.tenant-login-form input{min-width:0;height:100%;font:inherit;border:0;outline:0;flex:1;padding:0 9px}.tenant-login-form label button{cursor:pointer;background:0 0;border:0;place-items:center;width:28px;height:28px;padding:0;display:grid}.tenant-login-form>p{color:#b42318;background:#fff3f2;border:1px solid #ffd5d2;border-radius:3px;margin:-5px 0 0;padding:8px 10px;font-size:11px}.tenant-login-form>button{color:#fff;height:42px;font:inherit;cursor:pointer;background:#f58a1f;border:0;border-radius:4px;justify-content:center;align-items:center;gap:7px;display:flex}.tenant-login-form>button:hover{background:#df7612}.tenant-login-form>button:disabled{opacity:.65;cursor:wait}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}