/* Approved responsive design: one type scale, intrinsic grids and readable controls. */
:root{font-size:15px;--nav:220px;--blue:#245ce4;--muted:#68778e;--border:#e8edf5;background:#f6f8fc;color:#18253d}
body{background:#f6f8fc;line-height:1.45}h1{font-size:28px;line-height:1.2;letter-spacing:-.7px;font-weight:700;max-width:none}h2{font-size:18px;line-height:1.3;font-weight:650}h3{font-size:17px}small{font-size:13px}p{line-height:1.5}button,input,select,textarea{font-size:15px}b{font-weight:600}svg{width:20px;height:20px}
.primary,.secondary,.danger,.whatsapp,.white-button,button.primary{font-size:14px;min-height:44px;line-height:1.3;border-radius:9px;white-space:normal;padding:10px 14px}.primary{box-shadow:none}.secondary{border:1px solid #dce4f0}.icon-button{min-width:44px;height:44px;font-size:24px}.text-button{font-size:14px;min-height:44px}.eyebrow,.school,.nav-caption,.local{display:none}.mobile-date,.dashboard-mobile-cta{display:none}
.shell{--nav-width:var(--nav)}.shell.sidebar-collapsed{--nav-width:76px}.workspace{margin-left:var(--nav-width);min-width:0}.sidebar{width:var(--nav-width);padding:24px 14px 16px;overflow-y:auto;overflow-x:hidden;gap:0}.brand{font-size:20px;letter-spacing:-.7px;padding:0;gap:7px;white-space:nowrap;min-height:40px}.brandmark{width:32px;height:32px;object-fit:contain;flex:none}.brand small{display:none}.sidebar nav{margin-top:28px;gap:5px}.sidebar nav a{font-size:14px;padding:11px 12px;min-height:44px;line-height:1.3;gap:12px;color:#566882}.sidebar nav a small{font-size:12px;padding:2px 5px}.sidebar-bottom{margin-top:auto;padding-top:24px}.sidebar-toggle,.header-toggle{border:1px solid var(--border);background:#f7f9fd;border-radius:8px;color:#536f9d;min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px}.sidebar-toggle{width:100%;margin-bottom:8px}.header-toggle{display:none;width:44px;flex:none}.profile{font-size:14px;padding:16px 2px 0;margin-top:12px}.profile small{font-size:13px}.backup{font-size:13px;min-height:44px;padding:8px 2px}.avatar{width:36px;height:36px;font-size:13px}.avatar.small{width:34px;height:34px;font-size:13px}.sidebar-collapsed .brand>span,.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .sidebar nav a small,.sidebar-collapsed .backup,.sidebar-collapsed .profile,.sidebar-collapsed .sidebar-toggle span{display:none}.sidebar-collapsed .brand,.sidebar-collapsed .sidebar nav a{justify-content:center;padding-inline:0}.sidebar-collapsed .sidebar-toggle{font-size:24px}
header{height:64px;padding:0 24px;gap:16px}.breadcrumbs{font-size:13px}.breadcrumbs span{padding:0 10px}.header-right{gap:16px}.today-label{font-size:13px}.header-right .icon-button{min-width:44px;height:44px;font-size:24px}.mobile-brand{display:none}main{padding:24px;max-width:1680px}.page-heading{align-items:center;gap:16px;margin-bottom:22px}.page-heading p{font-size:15px;margin-top:6px}.page-heading>.primary{flex:none}.page-heading>div{min-width:0}footer{font-size:12px;padding:0 24px 20px;gap:12px}footer small{font-size:12px}
.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.metric{position:relative;min-width:0;border:1px solid var(--border);border-radius:12px;box-shadow:none;padding:18px 16px 18px 74px;display:flex;flex-direction:column;justify-content:center;min-height:110px}.metric-top{display:contents}.metric-top>span:first-child{font-size:14px;color:#566882;order:2;line-height:1.3}.metric-icon{position:absolute;left:16px;top:24px;width:44px;height:44px;border-radius:12px;color:var(--blue);background:#edf3ff}.metric-icon svg{width:24px;height:24px}.tint1{background:#f1efff;color:#7b61dd}.tint2{background:#e8f8ef;color:#149b57}.tint3{background:#fff0ee;color:#e85b52}.metric strong{font-size:27px;line-height:1.25;letter-spacing:-.5px;font-weight:700;order:1;white-space:normal;overflow-wrap:normal}.metric small{font-size:12px;margin-top:5px;order:3;line-height:1.4}.panel{border:1px solid var(--border);border-radius:12px;box-shadow:none}.panel-heading{padding:18px;gap:12px;align-items:center}.panel-heading h2{font-size:18px}.panel-heading a{font-size:13px;min-height:30px}.panel-heading a svg{width:14px}.panel-heading p{font-size:13px}.panel-foot{font-size:13px;padding:14px 18px}.count{font-size:12px}.mock-dashboard{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px;align-items:stretch}.dashboard-lessons,.dashboard-week{min-height:330px}.lesson-row{min-height:68px;padding:12px 18px;gap:10px}.lesson-row .avatar{display:inline-grid;width:36px;height:36px;font-size:13px}.time{min-width:38px}.time b{font-size:14px}.time small{font-size:12px;margin-top:3px}.lesson-stripe{height:30px;width:2px}.lesson-person b{font-size:14px;line-height:1.3}.lesson-person small{font-size:12px;line-height:1.45;margin-top:4px}.duration{font-size:13px;white-space:nowrap}.badge{font-size:12px;padding:4px 7px;border-radius:6px;white-space:nowrap;line-height:1.3}.lesson-row>svg{width:12px}.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:0 16px 12px;gap:5px}.week-strip button{border:1px solid var(--border);background:#f8faff;border-radius:8px;display:grid;place-items:center;gap:2px;min-height:66px;padding:5px 0;color:#566882}.week-strip .current{background:#eaf1ff;border-color:#adc8ff;color:var(--blue)}.week-strip small,.week-strip span{font-size:12px}.week-strip b{font-size:15px}.week-lesson{display:flex;gap:10px;align-items:center;width:calc(100% - 32px);margin:0 16px 8px;padding:10px;border:0;border-left:3px solid #4380ee;border-radius:6px;background:#edf4ff;text-align:left;min-height:52px;color:#24436d}.week-lesson.violet{background:#f1edff;border-color:#9a70e5}.week-lesson>span{font-size:13px;align-self:flex-start}.week-lesson b{font-size:14px}.week-lesson small{font-size:12px;display:block;margin-top:3px}.progress-content{display:flex;align-items:center;gap:18px;padding:6px 18px 22px;justify-content:space-between;flex-wrap:wrap}.progress-content p{font-size:13px;margin:10px 0}.progress-content b{color:#18253d;font-size:15px}.progress-money{border-left:1px solid var(--border);padding-left:16px}.progress-money b{font-size:19px}.progress-money small{display:block;font-size:12px;margin-top:4px}.ring{width:110px;height:110px;flex:none;background:conic-gradient(#245ce4 var(--progress),#e7edfa var(--progress));border-radius:50%;position:relative;display:grid;place-content:center;text-align:center}.ring:before{content:'';position:absolute;inset:11px;background:#fff;border-radius:50%}.ring strong,.ring small{position:relative}.ring strong{font-size:24px}.ring small{font-size:12px}.template-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 16px 18px}.template-tiles button{display:flex;align-items:center;gap:10px;background:#fcfdff;border:1px solid var(--border);border-radius:10px;min-width:0;text-align:left;padding:12px;min-height:72px}.template-tiles button>svg:first-child{color:var(--blue);flex:none}.template-tiles button>svg:last-child{width:12px;margin-left:auto;flex:none}.template-tiles span{min-width:0}.template-tiles b{display:block;font-size:13px;line-height:1.4;overflow-wrap:normal}.template-tiles small{display:block;font-size:12px;margin-top:4px;line-height:1.35}.next-lesson-mobile,.quick-actions-mobile{display:none}
.planning-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.calendar-date{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.calendar-date strong{font-size:15px;line-height:1.4;text-transform:capitalize}.previous svg{transform:rotate(180deg)}.segmented{padding:3px;border:1px solid var(--border);background:white;flex:none}.segmented button{font-size:14px;min-height:40px;padding:8px 18px}.segmented .selected{background:var(--blue);color:white;box-shadow:none}.planning-filters{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.planning-filters select,.planning-filters input{font-size:13px;min-height:44px;max-width:190px}.calendar-legend{margin-left:auto;display:flex;gap:14px;font-size:12px;color:#566882}.calendar-legend>span{display:flex;gap:6px;align-items:center}.legend-dot{width:9px;height:9px;border-radius:50%;background:#4380ee;display:inline-block}.legend-dot.violet{background:#9a70e5}.planning-layout.daily{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:16px;align-items:start}.planning-layout.weekly{display:block}.calendar-scroll{display:block;overflow:auto;max-height:calc(100dvh - 300px);min-height:350px;overscroll-behavior:contain}.calendar.week-view{min-width:1000px}.calendar.day-view{min-width:440px}.calendar-head{position:sticky;top:0;z-index:3;background:white;grid-template-columns:48px repeat(var(--days),minmax(0,1fr))}.calendar-head button{gap:2px;min-height:62px;padding:10px 3px}.calendar-head b{font-size:14px;font-weight:600;width:auto;height:auto;text-transform:capitalize;background:transparent;color:inherit}.calendar-head small{font-size:12px;text-transform:none}.calendar-head .is-today{background:#eaf2ff;color:var(--blue)}.calendar-body{grid-template-columns:48px repeat(var(--days),minmax(0,1fr))}.hours{font-size:12px;background:white;position:sticky;left:0;z-index:2}.hours span{padding-top:4px}.day-column{background:white}.today-column{background:#fcfdff}.slot{border-bottom:1px solid var(--border);position:relative;background:transparent}.slot:after{content:'';position:absolute;top:50%;left:0;right:0;border-top:1px dashed #eef1f7;pointer-events:none}.slot:hover{background:#f2f6ff}.calendar-event{position:absolute;display:flex;flex-direction:column;gap:2px;text-align:left;align-items:flex-start;border:0;border-left:3px solid #4380ee;background:#eaf2ff;color:#18253d;border-radius:5px;padding:6px 7px;overflow:hidden;min-width:0;box-shadow:none;z-index:1}.calendar-event.violet{background:#f0eaff;border-color:#9a70e5}.calendar-event b{font-size:13px;line-height:1.25;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event small,.calendar-event span{font-size:12px;line-height:1.2;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;color:#526b93}.calendar-event:hover{box-shadow:0 0 0 2px #8ab2ff;z-index:2}.calendar-agenda{display:none}.calendar-hint{margin-left:auto}.instructor-column-head{display:grid;justify-items:center;gap:5px;padding:14px 6px;border-left:1px solid var(--border)}.instructor-column-head b{font-size:14px}.instructor-column-head small{font-size:12px}.planning-detail{padding:18px;position:sticky;top:16px}.planning-person{display:flex;gap:12px;align-items:center}.planning-person .avatar{width:48px;height:48px;font-size:16px}.planning-person h2{font-size:19px;margin-bottom:7px}.planning-facts{padding:12px 0}.planning-facts>div{display:flex;align-items:center;gap:12px;padding:10px 0;font-size:14px}.planning-facts svg{color:#566b94;flex:none}.planning-facts small{display:block;font-size:13px;margin-top:3px}.planning-hours{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);border-radius:10px;padding:12px}.planning-hours>div{padding:0 12px}.planning-hours>div+div{border-left:1px solid var(--border)}.planning-hours b{font-size:17px}.planning-hours small{display:block;font-size:13px}.planning-payment{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--border);border-radius:10px;padding:14px 12px;margin:10px 0 14px;font-size:13px;flex-wrap:wrap}.planning-actions{display:grid;gap:8px}.planning-actions button{width:100%;font-size:14px;min-height:44px}.planning-actions .whatsapp{background:#fff;border:1px solid #96cba8;color:#168342}.planning-actions .danger{background:white;border:1px solid #f2c5c5}.planning-message{margin-top:12px;border-top:1px solid var(--border);padding-top:14px;font-size:13px}.planning-message p{font-size:13px;margin-top:8px}.planning-message .text-button{font-size:13px}
input,select,textarea{font-size:15px;min-height:44px}label{font-size:14px}table{font-size:14px}th,td{padding:14px 18px}th,td small{font-size:12px}.person-button b{font-size:14px}.person-button small{font-size:13px}.table-wrap{max-width:100%}.table-wrap table{min-width:660px}.student-card b,.student-card-stats b{font-size:15px}.student-card small,.student-card-stats small{font-size:12px}.notice p,.template-row p{font-size:14px}.notice b{font-size:15px}.template-row{min-width:0}.template-row>div{min-width:0}.resource-grid{gap:18px}.summary-line{font-size:14px}.report-grid{gap:18px}.modal-heading h2{font-size:21px}.modal-heading{padding:18px}.form-grid input,.form-grid select,textarea,.whatsapp-preview textarea{font-size:16px}.form-grid label{font-size:14px}.form-error{font-size:14px}.student-hero h2{font-size:22px}.student-hero p{font-size:14px}.detail-metrics strong{font-size:21px}.detail-metrics small{font-size:13px}.action-wrap button{font-size:14px}.mini-lesson{font-size:13px}dl{font-size:14px}.form-help{font-size:13px}#toast{font-size:14px}.login-screen{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:100%;max-width:430px;border:1px solid var(--border);border-radius:16px;background:#fff;padding:32px}.login-brand{font-size:22px;font-weight:700;color:var(--blue);margin-bottom:24px}.login-card p{font-size:15px;margin:8px 0 24px}.login-card label{margin-bottom:18px}.login-card input,.login-card button{width:100%;font-size:16px}.login-card .form-error{margin-bottom:0}
@media(min-width:1400px){.calendar.week-view{min-width:0}.mock-dashboard{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}
@media(min-width:701px) and (max-width:1150px){.shell,.shell.sidebar-collapsed{--nav-width:76px}.sidebar{padding:18px 10px}.sidebar .brand{justify-content:center}.sidebar .brand>span,.sidebar nav a span,.sidebar nav a small,.sidebar .profile,.sidebar .backup,.sidebar-toggle span{display:none}.sidebar .brandmark{width:34px;height:34px}.sidebar nav{margin-top:24px;gap:8px}.sidebar nav a{justify-content:center;padding:12px}.sidebar nav svg{width:22px;height:22px}.sidebar-bottom{display:block}.header-toggle{display:flex}.sidebar-toggle{font-size:24px}.metrics{gap:12px}.metric{padding:16px 12px;min-height:105px}.metric-icon{position:static;width:30px;height:30px;margin-bottom:6px;order:0}.metric-icon svg{width:19px;height:19px}.metric strong{font-size:25px}.metric small{font-size:12px}.page-heading h1{font-size:26px}.page-heading .primary{font-size:14px}.today-label{font-size:13px}.mock-dashboard{gap:14px}.lesson-row .duration,.lesson-row>svg{display:none}.lesson-row{padding:12px;gap:8px}.lesson-row .avatar{width:30px;height:30px;font-size:12px}.lesson-person small{font-size:12px}.panel-heading{padding:16px}.panel-heading h2{font-size:17px}.panel-heading a{font-size:12px}.template-tiles{grid-template-columns:1fr}.progress-content{justify-content:center}.progress-money{border:0;padding:0}.planning-layout.daily{grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr)}.calendar.day-view{min-width:390px}.planning-filters input{max-width:155px}.calendar-legend{width:100%;margin:0}.planning-detail{padding:16px}.planning-person h2{font-size:18px}.resource-grid{grid-template-columns:1fr 1fr}.message-layout{grid-template-columns:1fr}}
@media(max-width:700px){
 :root{font-size:16px}.shell,.shell.sidebar-collapsed{--nav-width:0px}.workspace{margin:0}.sidebar{display:none}.sidebar.open{display:flex;position:fixed;inset:0 auto 0 0;width:min(300px,85vw);padding:18px 16px calc(80px + env(safe-area-inset-bottom));overflow-y:auto}.sidebar.open .brand>span,.sidebar.open nav a span,.sidebar.open nav a small,.sidebar.open .profile,.sidebar.open .backup{display:flex}.sidebar.open .brand{font-size:20px;justify-content:flex-start}.sidebar.open .brand>span{display:block}.sidebar.open .brandmark{width:30px;height:30px}.sidebar.open nav{margin-top:18px;gap:3px}.sidebar.open nav a{font-size:15px;min-height:44px;padding:11px 12px;justify-content:flex-start}.sidebar.open .profile{font-size:14px}.sidebar.open .profile small{font-size:13px}.sidebar.open .sidebar-bottom{padding-bottom:0}.sidebar-toggle,.header-toggle{display:none}.scrim{position:fixed;inset:0;z-index:50;border:0;background:#18253d55}.sidebar.open{z-index:60}
 header{height:64px;padding:0 16px;border-bottom:0;background:#f6f8fc}.breadcrumbs,.today-label,.header-right .icon-button{display:none}.mobile-brand{display:flex;align-items:center;gap:7px;font-size:20px;letter-spacing:-.6px;color:#18253d;font-weight:700;white-space:nowrap}.mobile-brand img{width:30px;height:30px;object-fit:contain}.header-right{gap:0}.header-right .avatar{width:34px;height:34px;font-size:14px}main{padding:16px 16px 24px}.page-heading{display:flex;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:16px}.page-heading h1{font-size:24px;line-height:1.25;letter-spacing:-.5px;max-width:none}.page-heading p{font-size:14px;margin-top:5px}.page-heading>.primary{width:100%;font-size:15px;min-height:44px}.page-dashboard .page-heading>.primary,.page-dashboard .page-description{display:none}.mobile-date{display:block;text-transform:capitalize}.page-dashboard .page-heading{margin-bottom:16px}.metrics{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.metric{min-height:88px;padding:12px 10px 12px 54px;border-radius:11px}.metric-top{display:contents}.metric-icon{position:absolute;left:12px;top:24px;width:32px;height:32px;display:grid;margin:0}.metric-icon svg{width:21px;height:21px}.metric-top>span:first-child{font-size:13px;line-height:1.25}.metric strong{font-size:24px;line-height:1.25;letter-spacing:-.7px;white-space:normal;overflow-wrap:normal}.metric small{display:none}.page-dashboard .metric strong{font-size:26px}.page-dashboard .metric:last-child strong{font-size:23px}.dashboard-mobile-cta{display:block;margin-bottom:16px}.dashboard-mobile-cta button{width:100%;font-size:15px;min-height:44px}.mock-dashboard{display:block}.dashboard-week,.dashboard-progress,.dashboard-templates{display:none}.dashboard-lessons{min-height:0}.panel-heading,.mock-dashboard .panel-heading{padding:14px 12px;gap:8px;flex-wrap:nowrap}.panel-heading h2,.mock-dashboard .panel-heading h2{font-size:17px}.panel-heading a{font-size:12px}.panel-heading a svg{display:none}.dashboard-lessons .lesson-row:nth-of-type(n+4){display:none}.lesson-row{min-height:72px;padding:10px 12px;gap:7px}.lesson-row .avatar{display:inline-grid;width:30px;height:30px;font-size:11px}.lesson-stripe{display:none}.time{min-width:34px}.time b{font-size:12px}.time small{font-size:12px}.lesson-person b{font-size:13px;line-height:1.35}.lesson-person small{font-size:12px;line-height:1.3;margin-top:3px}.duration,.lesson-row>svg{display:none}.lesson-row .badge{font-size:11px;max-width:none;white-space:nowrap;padding:4px 5px}.dashboard-lessons .time small{display:none}.next-lesson-mobile{display:block;margin-top:12px}.next-lesson-mobile>button{background:none;border:0;padding:14px 12px;display:flex;align-items:center;gap:12px;min-height:64px;width:100%;text-align:left}.next-lesson-mobile>button>svg{color:var(--blue);width:24px;height:24px}.next-lesson-mobile>button>svg:last-child{margin-left:auto;width:15px}.next-lesson-mobile b{font-size:15px}.next-lesson-mobile small{display:block;font-size:12px;margin-top:3px}.quick-actions-mobile{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.quick-actions-mobile button{min-height:52px;background:#fff;border:1px solid var(--border);font-size:14px}.quick-actions-mobile button:first-child svg{color:#149b57}.bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;padding:8px 0 calc(8px + env(safe-area-inset-bottom));min-height:64px;border-top:1px solid var(--border);background:#fffffffa;z-index:45}.bottom-nav a,.bottom-nav button{font-size:12px;min-width:0;min-height:44px;gap:4px;line-height:1.2}.bottom-nav svg{width:22px;height:22px}.page-dashboard footer{font-size:0;padding:0 16px 80px}.page-dashboard footer span,.page-dashboard footer small{display:none}footer{font-size:12px;padding:0 16px 90px}footer small{font-size:12px}
 .planning-toolbar{flex-wrap:wrap;gap:10px}.calendar-date{width:100%;display:grid;grid-template-columns:44px 1fr 44px;gap:6px}.calendar-date strong{font-size:14px;text-align:center}.calendar-date>.secondary{grid-column:1/-1;min-height:40px}.segmented{width:100%;display:grid;grid-template-columns:1fr 1fr}.segmented button{font-size:14px;min-height:40px}.planning-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px}.planning-filters select,.planning-filters input{width:100%;max-width:none;font-size:14px;min-width:0}.planning-filters input{grid-column:1/-1}.calendar-legend{display:none}.planning-layout.daily{display:block}.planning-detail{display:none}.calendar-scroll{display:none}.calendar-agenda{display:block}.calendar-agenda h3{font-size:15px;margin:10px 12px 14px;text-transform:capitalize;padding:0}.day-picker{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding:12px 8px}.day-picker button{display:grid;justify-items:center;gap:4px;background:#f8faff;border:1px solid var(--border);border-radius:8px;min-width:0;padding:7px 0;min-height:48px}.day-picker small{font-size:11px}.day-picker b{font-size:14px}.day-picker .selected{background:var(--blue);color:#fff}.day-picker .selected small{color:#fff}.calendar-agenda .lesson-row .avatar{display:none}.calendar-hint{display:none}.panel-foot{font-size:12px;padding:12px}.calendar-agenda .lesson-person b{font-size:14px}.calendar-agenda .lesson-person small{font-size:12px}.resource-grid,.report-grid,.message-layout{grid-template-columns:1fr}.resource-body{padding:18px}.notice p,.template-row p{font-size:14px}.template-row{flex-wrap:wrap}.template-row>div{flex:1;min-width:180px}.template-row h3{font-size:16px}.template-row .text-button{font-size:14px}.student-card-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.student-card-stats b{font-size:14px}.student-card-stats small{font-size:12px}.students-table{display:none}.student-cards{display:block}.report-toolbar{flex-wrap:wrap;gap:12px}.report-toolbar .secondary{font-size:14px;max-width:none}.report-toolbar input{font-size:16px;width:100%;max-width:180px}.report-toolbar label{font-size:14px}.dated-lesson>span{font-size:12px;min-width:53px}.dated-lesson .lesson-row{padding-right:8px}.dated-lesson .avatar{display:none}.dated-lesson .badge{font-size:11px;max-width:none}.dated-lesson .lesson-person small{font-size:12px}.panel-heading:has(.toolbar),.panel-heading:has(.search){flex-wrap:wrap}.panel-heading .toolbar{width:100%}.toolbar input,.toolbar select{font-size:16px;min-width:0}.form-body,.detail-body{padding:18px}.form-grid{grid-template-columns:1fr;gap:16px}.form-grid input,.form-grid select,textarea{font-size:16px}.modal-heading h2{font-size:20px}.student-hero h2{font-size:21px}.detail-metrics strong{font-size:20px}.detail-metrics small{font-size:12px}.mini-lesson{font-size:12px;flex-wrap:wrap}.action-wrap button{font-size:14px}dl{font-size:14px;grid-template-columns:85px 1fr}.whatsapp-preview textarea{font-size:16px}#toast{font-size:14px;bottom:85px}.login-card{padding:24px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.calendar.week-view .calendar-event.compact{padding:6px 3px;gap:3px}.calendar.week-view .calendar-event.compact b{font-size:12px;overflow:visible;text-overflow:clip;line-height:1.15}.calendar.week-view .calendar-event.compact small,.calendar.week-view .calendar-event.compact span{font-size:11px;overflow:visible;text-overflow:clip}
@media(min-width:1151px){.calendar.week-view{min-width:0}}
@media(max-width:700px){.page-dashboard header{height:58px}.page-dashboard main{padding-top:10px}.page-dashboard .page-heading{margin-bottom:12px}.page-dashboard .metric{min-height:80px}.page-dashboard .metrics{margin-bottom:12px}.page-dashboard .dashboard-mobile-cta{margin-bottom:12px}.page-dashboard .dashboard-lessons .lesson-row{min-height:63px}.page-dashboard .next-lesson-mobile{margin-top:10px}.page-dashboard .next-lesson-mobile>button{min-height:56px}.page-dashboard .quick-actions-mobile{margin-top:10px}.page-dashboard .quick-actions-mobile button{min-height:48px}}
.header-search{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:8px;background:#fff;padding:0 12px;margin-left:auto;width:min(390px,34vw);min-height:40px;color:#6f83a5}.header-search svg{width:18px;height:18px}.header-search input{font-size:13px;min-height:38px;border:0;padding:0;box-shadow:none;flex:1;width:100%;background:transparent}.header-search input:focus{box-shadow:none}.header-search:focus-within{border-color:#8fb1fa;box-shadow:0 0 0 3px #245ce411}
@media(max-width:700px){.header-search{display:none}}
@media(min-width:701px) and (max-width:1150px){.calendar-legend{display:none}.planning-filters{margin-bottom:12px}.planning-filters input{display:none}.planning-detail .planning-facts>div{padding:8px 0}.planning-person{padding-bottom:8px}}
.calendar.week-view .calendar-event{padding-block:4px;gap:1px}.calendar.week-view .calendar-event.compact{padding:4px 3px;gap:2px}.planning-layout.weekly .calendar-scroll{max-height:calc(100dvh - 240px)}
.calendar.week-view .calendar-event.compact{padding:2px 3px;gap:1px}
@media(max-width:700px){.page-dashboard header{height:54px}.page-dashboard .metric{min-height:70px}.page-dashboard .metric-icon{top:19px}.page-dashboard .dashboard-lessons .lesson-row{min-height:54px;padding-block:7px}.page-dashboard .next-lesson-mobile>button{min-height:52px}.page-dashboard .quick-actions-mobile{margin-top:8px}}
.avatar{overflow:hidden}.avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.resource-illustration:has(.resource-photo){height:96px;overflow:hidden}.resource-photo{display:block;object-fit:cover}.resource-illustration .instructor-photo{width:70px;height:70px;border-radius:50%;box-shadow:0 8px 24px #21447522}.resource-illustration .vehicle-photo{width:140px;height:78px;object-fit:contain}.resource-illustration .badge{z-index:1}
.sidebar{scrollbar-width:none;-ms-overflow-style:none}.sidebar::-webkit-scrollbar{display:none;width:0;height:0}
.header-profile-photo{border:0;background:none;padding:4px;border-radius:50%;cursor:pointer;display:grid;place-items:center}.header-profile-photo:focus-visible,.photo-button:focus-visible{outline:3px solid #7aa7ff;outline-offset:2px}.profile .photo-button{border:0;background:none;color:var(--blue);padding:2px 0;min-height:28px;font-size:11px;justify-content:flex-start}.profile .photo-button svg{display:none}.resource-body .photo-button{margin-left:8px}.photo-button svg{width:15px;height:15px;vertical-align:middle}.student-hero .avatar{width:52px;height:52px}
.logout-button{margin-top:10px;width:100%;min-height:40px;border:1px solid var(--border);background:#fff;border-radius:8px;color:#5e6c82;cursor:pointer;font:inherit;font-size:13px}.logout-button:hover{background:#f3f6fb}.user-panel{padding:0 22px 12px}.user-panel .panel-heading{padding:20px 0}.user-panel .panel-heading p{color:#687891;margin-top:6px}.user-row{display:flex;align-items:center;gap:14px;min-height:76px;border-top:1px solid var(--border);padding:12px 0}.user-row>div{flex:1;min-width:0}.user-row b,.user-row small{display:block}.user-row small{color:#79879b;margin-top:3px}.user-row .secondary{white-space:nowrap}.user-empty{padding:20px 0;color:#78869a}@media(max-width:700px){.user-row{flex-wrap:wrap}.user-row>div{flex-basis:calc(100% - 65px)}.user-row .badge{margin-left:50px}.user-row .secondary{flex:1}.resource-body .photo-button{margin-left:0;margin-top:8px}}
.user-panel .panel-heading p{text-transform:none}
.logout-button{display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.logout-symbol{font-size:18px;line-height:1}.sidebar-collapsed .logout-button{width:44px;min-width:44px;height:44px;padding:0;margin:10px auto 0}.sidebar-collapsed .logout-label{display:none}
