.welcome{display:flex;align-items:center;justify-content:space-between;padding:23px 27px;margin-bottom:22px;background:linear-gradient(105deg,#e9f5ff,#f0f8ff 65%,#e0f1ff);border:1px solid #dfedfa;border-radius:12px;position:relative;overflow:hidden}.welcome h2{font-size:20px;color:#315a7b;letter-spacing:.5px}.welcome p{font-size:12px;color:#7c9ab3;margin-top:7px}.welcome-art{width:180px;height:80px;position:relative;color:#79bce8;display:flex;align-items:center;justify-content:center;gap:10px}.welcome-art:before,.welcome-art:after{content:"";position:absolute;width:90px;height:90px;border:1px solid #c5e4fa;border-radius:50%;right:0}.welcome-art:after{width:130px;height:130px;right:-20px}.welcome-art svg{z-index:1;transform:rotate(-9deg);filter:drop-shadow(0 7px 6px #8bc7ed40)}.welcome-date{font-size:11px;position:absolute;right:24px;bottom:12px;color:#86a3ba}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}.metric{background:#fff;border:1px solid var(--border);border-radius:11px;padding:20px 22px}.metric-top{display:flex;justify-content:space-between;align-items:center;color:#7d8da1;font-size:12px}.metric-icon{color:var(--primary);background:var(--primary-soft);padding:8px;border-radius:9px}.metric-icon.green{color:#2ab294;background:#eaf9f4}.metric-icon.purple{color:#9583de;background:#f3effc}.metric-icon.orange{color:#e5ac59;background:#fff6e9}.metric-value{font-size:29px;line-height:1.3;font-weight:650;letter-spacing:.5px;margin:9px 0 11px}.metric-value small{font-size:11px;font-weight:400;margin-left:6px}.metric-foot{font-size:10px;color:#9ca8b7}.metric-foot em{font-style:normal;color:var(--success);margin-right:5px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px}.stack{display:flex;flex-direction:column;gap:22px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:2px 15px 22px}.quick{font-size:11px;display:flex;align-items:center;flex-direction:column;gap:9px}.quick-icon{width:42px;height:42px;background:var(--primary-soft);color:var(--primary);border-radius:12px;display:grid;place-items:center;transition:transform .2s}.quick:hover .quick-icon{transform:translateY(-3px)}.chart{height:215px;padding:5px 22px 16px;position:relative}.chart svg{width:100%;height:165px;overflow:visible}.chart-labels{display:flex;justify-content:space-between;font-size:9px;color:#a5b1be;padding-left:29px}.chart-legend{font-size:10px;color:var(--muted);display:flex;gap:18px;align-items:center}.chart-legend i{display:inline-block;width:7px;height:7px;background:var(--primary);border-radius:50%;margin-right:6px}.chart-legend i.pale{background:#b7d8f1}.segmented{background:#f5f7fa;padding:3px;border-radius:6px;display:flex;gap:3px}.segmented button{font-size:10px;padding:4px 9px;color:#8c9aab}.segmented button.active{background:#fff;box-shadow:0 1px 4px #2036570a;border-radius:4px;color:var(--primary)}.todo-list{padding:0 22px 8px}.todo{display:flex;align-items:center;padding:12px 0;border-bottom:1px solid var(--border);gap:11px}.todo:last-child{border:0}.todo-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--warning-soft);color:#dca04c}.todo-text{flex:1;font-size:12px}.todo-text small{font-size:10px;display:block}.todo b{font-size:17px;color:#d99e4d}.usage{padding:0 22px 20px}.usage-line{display:flex;justify-content:space-between;font-size:11px;margin:13px 0 9px}.progress{height:5px;background:#edf3f9;border-radius:4px;overflow:hidden}.progress span{height:100%;display:block;background:var(--primary);border-radius:4px}.refund-calculation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 8px}.refund-calculation>div{padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--panel-soft, #f7faff)}.refund-calculation small,.refund-calculation b{display:block}.refund-calculation b{margin-top:7px;color:var(--text)}.refund-workflow{display:flex;margin:6px 0 24px}.refund-workflow>div{position:relative;flex:1;text-align:center;color:var(--muted)}.refund-workflow>div:not(:last-child):after{content:"";position:absolute;top:14px;left:58%;width:84%;height:3px;background:var(--border)}.refund-workflow i{position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;margin:auto;border-radius:50%;background:var(--panel-soft, #f7faff);border:2px solid var(--border);font-style:normal}.refund-workflow span{display:block;margin-top:7px;font-size:12px}.refund-workflow .done i,.refund-workflow .current i{color:#fff;border-color:var(--primary);background:var(--primary)}.refund-workflow .done:not(:last-child):after{background:var(--primary)}.refund-workflow .current span{color:var(--primary);font-weight:700}@media(max-width:760px){.refund-calculation{grid-template-columns:repeat(2,minmax(0,1fr))}}.refund-timeline{margin:12px 0;padding-left:10px}.refund-timeline>div{position:relative;display:grid;grid-template-columns:18px 1fr;gap:2px 10px;padding:0 0 18px}.refund-timeline>div:not(:last-child):after{content:"";position:absolute;left:5px;top:13px;bottom:0;border-left:2px solid var(--border)}.refund-timeline i{grid-row:1/3;width:12px;height:12px;margin-top:4px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px var(--panel-soft, #eef6ff)}.refund-timeline span{color:var(--muted);font-size:12px}.quota-usage{min-width:150px;max-width:210px}.quota-usage>div:first-child{display:flex;align-items:baseline;gap:4px;margin-bottom:8px;color:var(--muted)}.quota-usage b{color:var(--text);font-size:15px}.quota-usage small{margin-left:auto;color:var(--muted)}.quota-usage .progress{margin:0}.usage small{font-size:10px}.today-table td,.today-table th{padding:12px 18px}.course-name{font-weight:500}.course-name:before{content:"";display:inline-block;width:3px;height:25px;background:#70b9ed;margin-right:10px;vertical-align:middle;border-radius:3px}.announcements{padding:0 22px 17px}.announcement{padding:10px 0;font-size:11px}.announcement small{display:block;font-size:9px;margin-top:4px}.mini-stats{display:flex;gap:25px;margin:0 22px 20px;font-size:12px}.mini-stats strong{font-size:23px;margin-left:8px}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;gap:12px;flex-wrap:wrap}.calendar-grid{display:grid;grid-template-columns:60px repeat(7,minmax(110px,1fr));min-width:840px;padding:0 15px 20px}.cal-header{padding:13px 8px;text-align:center;border-bottom:1px solid var(--border);font-size:12px;color:#8c9bad}.cal-header.today{color:var(--primary);background:var(--primary-soft);border-radius:7px}.cal-time{color:var(--muted);font-size:10px;padding-top:12px;border-bottom:1px solid var(--border)}.cal-cell{min-height:120px;border-left:1px solid var(--border);border-bottom:1px solid var(--border);padding:7px}.event{display:block;width:100%;border-left:3px solid var(--primary);background:var(--primary-soft);padding:9px 8px;border-radius:5px;font-size:10px;text-align:left}.event strong{display:block;font-size:11px;margin:3px 0}.event small{font-size:9px}.event.green{border-color:#42b598;background:#eff9f4}.calendar-timeline{min-width:calc(70px + var(--calendar-days) * 150px);padding:0 18px 22px 58px}.calendar-timeline-head,.calendar-timeline-body{display:grid;grid-template-columns:70px repeat(var(--calendar-days),minmax(150px,1fr))}.calendar-timeline-body{position:relative}.calendar-timeline-head>div{padding:12px 8px;border-bottom:1px solid var(--border);color:var(--muted);font-size:12px;text-align:center}.calendar-timeline-head>.today{color:var(--primary);background:var(--primary-soft);border-radius:8px 8px 0 0}.calendar-time-axis{position:relative;border-right:1px solid var(--border)}.calendar-time-axis span{position:absolute;right:9px;color:var(--muted);font-size:10px;line-height:1;transform:translateY(-50%)}.calendar-day-column{position:relative;border-right:1px solid var(--border);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--hour-height) - 1px),var(--border) calc(var(--hour-height) - 1px),var(--border) var(--hour-height))}.calendar-day-column.today{background-color:#f8fbff}.calendar-event{position:absolute;z-index:2;min-width:0;overflow:hidden;padding:6px 7px;border:1px solid color-mix(in srgb,var(--event-border),transparent 35%);border-left:3px solid var(--event-border);border-radius:7px;background:var(--event-bg);color:var(--text);text-align:left;cursor:pointer}.calendar-event:hover{z-index:4;box-shadow:0 5px 16px #466b9229}.calendar-event b,.calendar-event span{display:block;overflow:hidden;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.calendar-event b{margin-bottom:3px;font-size:11px}.current-time-line{position:absolute;z-index:5;right:0;left:-48px;border-top:2px dashed #de7180;pointer-events:none}.current-time-line:before{position:absolute;top:-5px;left:-4px;width:8px;height:8px;border-radius:50%;background:#de7180;content:""}.current-time-line span{position:absolute;top:-17px;left:0;padding:1px 4px;border-radius:4px;background:#fff1f3;color:#bd5261;font-size:9px}.schedule-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:18px;padding:4px;border-radius:10px;background:#f2f6fb}.schedule-mode-tabs button{padding:9px 16px;border-radius:7px;color:var(--muted)}.schedule-mode-tabs button.active{background:#fff;color:var(--primary);box-shadow:0 2px 8px #4c73951f;font-weight:600}.cancelled-row td{color:#aeb8c5;background:#fafbfc}.cancelled-row .link{color:#8f9bab}.pending-session-row td{background:#fff9f7;border-top-color:#ffd8cf;border-bottom-color:#ffd8cf}.pending-session-row td:first-child{box-shadow:inset 4px 0 #ef6b57}.session-pending-label{display:inline-block;margin-left:9px;padding:2px 7px;border-radius:10px;color:#c94b3a;background:#ffebe7;font-size:11px}.unread-message-row td{background:#f7fbff;font-weight:600}.unread-dot{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:#f15b64;box-shadow:0 0 0 3px #ffe8ea;vertical-align:1px}.template-color-dot{display:inline-block;width:14px;height:14px;margin-right:8px;border:0;border-radius:50%;background:var(--dot);box-shadow:none;vertical-align:-2px}.session-color-title{display:inline-block;max-width:calc(100% - 30px);font-weight:600;vertical-align:top}.session-color-title small{display:block;margin-top:4px;color:var(--muted);font-weight:400}.student-archive-tabs{display:flex;gap:5px;margin:20px 0 14px;padding:4px;border-radius:10px;background:#f2f6fb}.student-archive-tabs button{flex:1;padding:9px 12px;border-radius:7px;color:var(--muted)}.student-archive-tabs button.active{background:#fff;color:var(--primary);box-shadow:0 2px 8px #4c73951f;font-weight:600}.archive-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;color:var(--muted);font-size:12px}.archive-pagination div{display:flex;gap:5px}.archive-pagination button{min-width:30px;height:30px;border:1px solid var(--border);border-radius:6px;background:#fff}.archive-pagination button.active{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.archive-pagination button:disabled{cursor:not-allowed;opacity:.4}.schedule-color-picker{display:flex;flex-wrap:wrap;gap:12px;padding:5px 2px}.schedule-color-picker label{display:block;padding:3px;border-radius:50%;cursor:pointer}.schedule-color-picker input{position:absolute;opacity:0}.schedule-color-picker label>span{display:block;width:28px;height:28px;background:var(--swatch);border:2px solid var(--swatch-border);border-radius:50%}.schedule-color-picker input:checked+span{outline:3px solid #5a9ee73d;box-shadow:0 0 0 2px #fff,0 0 0 3px var(--primary)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:22px}.product-card.organization-product{border-top:4px solid #5b9ee8}.product-card.campus-product{border-top:4px solid #55b89c}.product-card.organization-product .product-banner{background:linear-gradient(120deg,#e8f3ff,#f7fbff)}.product-card.campus-product .product-banner{color:#37977d;background:linear-gradient(120deg,#e7f7f2,#f7fcfa)}.product-card.inactive{opacity:.82;filter:saturate(.65)}.product-scope-legend{display:flex;gap:18px;margin-bottom:14px;color:var(--muted);font-size:12px}.product-scope-legend span{display:flex;align-items:center;gap:7px}.product-scope-legend i{width:10px;height:10px;border-radius:3px}.product-scope-legend .organization{background:#5b9ee8}.product-scope-legend .campus{background:#55b89c}.product-lifecycle{min-height:34px;line-height:1.5}.inactive-products{margin-top:22px;padding:16px 18px 20px;border:1px solid var(--border);border-radius:12px;background:#f8fafc}.inactive-products summary{cursor:pointer;color:#60748a;font-weight:600}.inactive-products summary small{margin-left:10px;color:var(--muted);font-weight:400}.inactive-products .product-grid{margin-top:18px}.product-long-term{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid var(--border);border-radius:9px;background:#f8fbff;cursor:pointer}.product-long-term>input{position:absolute;opacity:0;pointer-events:none}.product-checkmark{position:relative;width:20px;height:20px;flex:0 0 20px;border:1px solid #b8c7d8;border-radius:5px;background:#fff}.product-long-term input:checked+.product-checkmark{border-color:var(--primary);background:var(--primary)}.product-long-term input:checked+.product-checkmark:after{position:absolute;top:3px;left:6px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;content:"";transform:rotate(45deg)}.product-long-term b,.product-long-term small{display:block}.product-long-term small{margin-top:3px;color:var(--muted);font-size:11px}.product-banner{height:70px;display:flex;align-items:center;justify-content:space-between;color:var(--primary);background:linear-gradient(120deg,var(--primary-soft),#f6fbff);margin:-22px -22px 20px;padding:20px 22px}.product-card p{font-size:12px;color:var(--muted);margin:10px 0}.product-price{font-size:26px;margin:15px 0}.product-price small{font-size:12px}.product-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:15px}.settings-grid{display:grid;grid-template-columns:220px 1fr;gap:22px}.account-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.account-settings-grid .settings-body{width:100%;max-width:none}.account-settings-grid .form-grid{grid-template-columns:1fr}.settings-nav{padding:15px;height:fit-content}.settings-nav button{display:block;width:100%;text-align:left;padding:13px;border-radius:7px}.settings-nav button.active{background:var(--primary-soft);color:var(--primary)}.settings-body{padding:25px;max-width:850px}.settings-body h2,.settings-body .form-grid{margin-bottom:23px}.theme-options{display:flex;gap:15px;margin:18px 0 25px}.theme-choice{border:2px solid var(--border);border-radius:9px;padding:15px 25px}.theme-choice.active{border-color:var(--primary)}.theme-choice i{display:block;width:80px;height:40px;border-radius:5px;background:#2196e5;margin-bottom:9px}.theme-choice.mint i{background:#169e8e}.theme-choice.pink i{background:#e56b9f}.appearance-settings{margin-top:24px;padding-top:22px;border-top:1px solid var(--border)}.appearance-settings .form-grid{margin-top:14px}.stat-bars{padding:10px 24px 25px}.stat-bar{display:grid;grid-template-columns:95px 1fr 55px;gap:15px;align-items:center;margin:21px 0;font-size:12px}@media(max-width:1200px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 280px}.metrics{gap:12px}.metric{padding:16px}.metric-value{font-size:26px}}@media(max-width:1000px){.account-settings-grid,.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>.stack:last-child{display:grid;grid-template-columns:1fr 1fr}.metrics,.product-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.table-wrap{position:relative;overflow-x:auto;overscroll-behavior-inline:contain;box-shadow:inset -14px 0 12px -16px #183b6688}.table-wrap table{min-width:820px}.table-wrap th:first-child,.table-wrap td:first-child{position:sticky;left:0;z-index:1;background:var(--surface, #fff)}.dashboard-grid>.stack:last-child{display:flex}.welcome{padding:20px}.welcome h2{font-size:17px}.welcome-art,.welcome-date{display:none}.metrics{gap:10px}.metric{padding:14px}.metric-value{font-size:25px}.product-grid,.settings-grid{grid-template-columns:1fr}.settings-nav{display:flex;overflow:auto}.settings-nav button{white-space:nowrap}.chart-legend{display:none}}.month-calendar{border-top:1px solid var(--border)}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));min-width:910px}.month-weekdays span{padding:11px 14px;text-align:center;color:var(--muted);background:var(--surface-soft);border-right:1px solid var(--border);font-size:12px;font-weight:600}.month-grid{border-bottom:1px solid var(--border)}.month-cell{min-height:126px;padding:9px;border-top:1px solid var(--border);border-right:1px solid var(--border);background:var(--surface)}.month-cell.empty{background:var(--surface-soft)}.month-cell.today{background:var(--primary-soft)}.month-date{display:flex;justify-content:space-between;align-items:center;min-height:25px;font-weight:600}.month-date small{padding:2px 7px;border-radius:10px;color:var(--primary);background:var(--primary-soft);font-size:10px}.month-events{display:grid;gap:5px}.month-events button{display:flex;align-items:center;gap:6px;min-width:0;padding:5px 7px;border:1px solid color-mix(in srgb,var(--event-bg) 45%,var(--border));border-radius:6px;background:color-mix(in srgb,var(--event-bg) 18%,var(--surface));color:var(--text);text-align:left;font-size:11px}.month-events button i{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--event-bg)}.month-events button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
