:root{font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1e2f38;background:#f5f4ef;font-synthesis:none;text-rendering:optimizeLegibility;--ink:#233542;--turquoise:#3fabb8;--yellow:#f6c64a;--coral:#e56355;--orange:#f47b2d;--pink:#eb9aa5;--muted:#738079;--line:#e5e5df;--white:#fff;--sidebar:244px}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button,a{color:inherit}button{cursor:pointer}a{text-decoration:none}svg{flex:0 0 auto}h1,h2,h3,p{margin-top:0}.screen-loading{min-height:100vh;display:grid;place-items:center}.app-shell{min-height:100vh}.sidebar{position:fixed;z-index:50;inset:0 auto 0 0;width:var(--sidebar);display:flex;flex-direction:column;background:var(--ink);color:#fff;padding:24px 16px}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:0 9px 26px;border-bottom:1px solid #ffffff17}.brand-mark,.login-logo{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--turquoise);font-size:22px;font-weight:900}.brand-mark span,.login-logo span{color:var(--yellow)}.sidebar-brand>div:nth-child(2){display:flex;flex-direction:column}.sidebar-brand b{font-size:14px}.sidebar-brand small{margin-top:2px;color:#9eafb4;font-size:10px}.sidebar nav{display:grid;gap:5px;padding:25px 0}.sidebar nav a{position:relative;display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:10px;color:#aebbbf;font-size:12px;font-weight:700;transition:.2s}.sidebar nav a:hover{color:#fff;background:#ffffff0d}.sidebar nav a.active{color:#fff;background:#ffffff13}.sidebar nav a.active:before{content:"";position:absolute;left:-16px;width:3px;height:22px;background:var(--yellow);border-radius:0 3px 3px 0}.nav-arrow{margin-left:auto;transform:rotate(180deg);opacity:.4}.sidebar-foot{margin-top:auto;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:15px 10px;background:#ffffff0a;border-radius:12px}.sidebar-foot>div:nth-child(2){min-width:0;display:flex;flex-direction:column}.sidebar-foot b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.sidebar-foot small{color:#91a3a8;font-size:8px;margin-top:2px}.sidebar-foot button{border:0;background:none;color:#93a4a8}.user-avatar,.avatar{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:#dceff0;color:#237783;font-weight:900;font-size:11px}.avatar.small{width:32px;height:32px;border-radius:9px}.avatar.tiny{width:25px;height:25px;border-radius:7px;font-size:8px}.mobile-close,.menu-button,.sidebar-overlay{display:none}.app-main{min-height:100vh;margin-left:var(--sidebar)}.topbar{height:74px;position:sticky;z-index:30;top:0;display:flex;align-items:center;padding:0 34px;background:#f8f7f3e8;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar>div{display:flex;flex-direction:column}.topbar small{font-size:8px;letter-spacing:.16em;color:var(--turquoise);font-weight:900}.topbar b{font-size:13px;margin-top:3px}.topbar>a{margin-left:auto;display:flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid #d9ddd9;border-radius:9px;background:#fff;font-size:10px;font-weight:800}.page{width:min(1420px,100%);margin:auto;padding:42px 36px 70px}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px}.eyebrow{display:block;color:var(--turquoise);font-size:8px!important;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.page-header h1{margin:9px 0 8px;font-size:32px;line-height:1;letter-spacing:-.04em}.page-header p{max-width:650px;margin:0;color:var(--muted);font-size:12px;line-height:1.6}.button{min-height:40px;border:0;border-radius:10px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:11px;font-weight:850;transition:.2s}.button svg{width:16px}.button.primary{background:var(--ink);color:#fff;box-shadow:0 8px 20px #23354220}.button.primary:hover{transform:translateY(-2px);box-shadow:0 12px 25px #2335422d}.button.secondary{background:#fff;color:var(--ink);border:1px solid #dfe2de}.icon-button{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:#fff}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.toolbar>span,.toolbar-hint{color:var(--muted);font-size:10px}.toolbar-hint{display:flex;align-items:center;gap:8px}.live-dot{width:7px;height:7px;border-radius:50%;background:#39a96b;box-shadow:0 0 0 4px #39a96b18}.search{width:min(440px,100%);height:42px;display:flex;align-items:center;gap:10px;padding:0 13px;background:#fff;border:1px solid #dee1de;border-radius:10px}.search svg{width:16px;color:#84908b}.search input{width:100%;border:0;outline:0;background:none;font-size:11px;color:var(--ink)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.metric-card{min-height:154px;display:flex;justify-content:space-between;padding:22px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 8px 25px #25342e0a}.metric-card>div{display:flex;flex-direction:column}.metric-card span{font-size:10px;color:var(--muted);font-weight:700}.metric-card strong{margin:auto 0 8px;font-size:27px;letter-spacing:-.04em}.metric-card small{font-size:9px;color:#8b9691}.metric-card i{width:38px;height:38px;display:grid;place-items:center;border-radius:11px}.metric-card i svg{width:18px}.metric-card.turquoise i{background:#e6f5f6;color:#21818c}.metric-card.yellow i{background:#fff7d9;color:#957514}.metric-card.coral i{background:#fce9e6;color:#b84d43}.metric-card.pink i{background:#fae8eb;color:#a85b68}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px}.panel>header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:15px}.panel h2{margin:6px 0 0;font-size:18px}.panel>header>a{display:flex;align-items:center;gap:5px;color:#58716c;font-size:9px;font-weight:800}.panel>header>a svg{width:13px}.list{display:grid}.list-row{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:13px 0;border-top:1px solid #eff0ed}.list-row>div:nth-child(2){display:flex;flex-direction:column;min-width:0}.list-row b{font-size:11px}.list-row small{margin-top:4px;color:#85908b;font-size:9px}.status{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;background:#eff2f0;color:#607069;font-size:7px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.status.new,.status.draft{background:#e8f5f6;color:#267983}.status.qualified,.status.sent{background:#fff4cc;color:#856a0e}.status.won,.status.accepted{background:#e4f5eb;color:#26794a}.status.lost,.status.rejected,.status.expired{background:#f0f0ed;color:#79817d}.status.proposal,.status.negotiation{background:#f4eaf9;color:#76528a}.date-chip{width:40px;height:44px;border-radius:10px;display:flex!important;align-items:center;justify-content:center;flex-direction:column!important;background:var(--ink);color:#fff}.date-chip b{font-size:15px}.date-chip small{margin:0!important;color:#b7c5c8!important;font-size:7px!important;text-transform:uppercase}.mini-action{padding:7px 10px;border-radius:7px;background:#e8f5f6;color:#287d87;font-size:8px;font-weight:900}.compact-empty{padding:35px;display:grid;place-items:center;color:#9aa4a0}.compact-empty svg{width:28px}.compact-empty p{font-size:10px;margin:8px 0 0}.kanban{display:flex;align-items:flex-start;gap:10px;overflow-x:auto;padding-bottom:16px}.kanban-column{width:258px;min-width:258px;background:#ecece7;border:1px solid #e1e1dc;border-radius:13px;padding:9px}.kanban-column>header{height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 6px}.kanban-column>header>div{display:flex;align-items:center;gap:8px}.kanban-column>header i{width:7px;height:7px;border-radius:50%}.kanban-column>header b{font-size:10px}.kanban-column>header>span{width:21px;height:21px;display:grid;place-items:center;border-radius:6px;background:#fff;color:#70807a;font-size:8px}.kanban-stack{display:grid;gap:8px}.lead-card{padding:14px;background:#fff;border:1px solid #e1e3e0;border-radius:10px;box-shadow:0 3px 10px #22332c08;cursor:grab;transition:.2s}.lead-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #22332c12}.lead-top,.lead-card footer{display:flex;justify-content:space-between;align-items:center}.source{font-size:7px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#2e8994}.lead-top button{border:0;background:none;color:#95a09b;padding:0}.lead-top svg{width:15px}.lead-card h3{margin:14px 0 4px;font-size:13px}.lead-card>p{font-size:9px;color:#818d88;margin-bottom:12px}.lead-meta{display:grid;gap:6px}.lead-meta span,.lead-card footer>span{display:flex;align-items:center;gap:6px;color:#7c8883;font-size:8px}.lead-meta svg,.lead-card footer svg{width:11px}.lead-card footer{margin-top:14px;padding-top:10px;border-top:1px solid #eff0ed}.kanban-empty{height:54px;display:grid;place-items:center;border:1px dashed #cdd1ce;border-radius:9px;color:#9ca6a2;font-size:8px}.plans-grid,.student-grid,.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.plan-card,.student-card,.course-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px;box-shadow:0 8px 24px #26362f08}.plan-card.inactive{opacity:.55}.plan-card header,.student-card header{display:flex;align-items:center;justify-content:space-between}.plan-icon,.course-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#e8f5f6;color:#2f8791}.plan-icon svg,.course-icon svg{width:18px}.active-badge,.inactive-badge{padding:5px 8px;border-radius:999px;background:#e5f6ec;color:#287c4c;font-size:7px;font-weight:900;letter-spacing:.08em}.inactive-badge{background:#efefec;color:#77817c}.plan-card>small,.course-card>span{display:block;margin-top:24px;color:var(--turquoise);font-size:7px;font-weight:900;letter-spacing:.15em}.plan-card h2,.course-card h2,.student-card h2{margin:7px 0 8px;font-size:18px}.plan-card>p,.course-card>p{min-height:36px;color:#7b8782;font-size:10px;line-height:1.5}.plan-price{display:flex;align-items:baseline;gap:8px;margin:24px 0}.plan-price strong{font-size:25px;letter-spacing:-.04em}.plan-price span{color:#87918d;font-size:8px}.plan-card ul{list-style:none;padding:14px 0;margin:0;border-top:1px solid #eceeeb;display:grid;grid-template-columns:1fr 1fr;gap:10px}.plan-card li{display:flex;align-items:center;gap:6px;color:#596861;font-size:8px}.plan-card li svg{width:12px;color:#2d9a5b}.plan-card footer,.course-card footer{display:flex;gap:13px;padding-top:14px;margin-top:5px;border-top:1px solid #eceeeb;color:#7d8883;font-size:8px}.plan-card footer span{display:flex;align-items:center;gap:5px}.plan-card footer svg{width:11px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}table{width:100%;border-collapse:collapse;min-width:900px}th{text-align:left;padding:13px 16px;background:#f0f1ed;color:#76817d;font-size:7px;letter-spacing:.1em;text-transform:uppercase}td{padding:15px 16px;border-top:1px solid #eceeeb;font-size:10px}td>b,td>small{display:block}td>small{margin-top:4px;color:#8b9691;font-size:8px}.row-actions{display:flex;justify-content:flex-end;gap:6px}.row-actions button{width:31px;height:31px;display:grid;place-items:center;border:1px solid #e0e3df;border-radius:8px;background:#fff;color:#60706a}.row-actions button.success-action{background:#e7f6ed;color:#2f8b55;border-color:#cee9d9}.row-actions svg{width:14px}.notice{margin:-10px 0 18px;padding:12px 15px;border-radius:10px;background:#e7f5ec;color:#27774a;font-size:10px;font-weight:700;cursor:pointer}.student-card h2{margin-top:18px}.student-contact{display:grid;gap:7px;min-height:70px;padding:14px 0}.student-contact span{display:flex;align-items:center;gap:7px;color:#73807a;font-size:9px}.student-contact svg{width:13px}.enrollment-list{padding-top:12px;border-top:1px solid #eceeeb}.enrollment-list>div{display:flex;align-items:center;gap:9px}.enrollment-list svg{width:17px;color:var(--turquoise)}.enrollment-list b,.enrollment-list small{display:block;font-size:9px}.enrollment-list small{color:#86918c;margin-top:3px}.tabs{display:flex;gap:4px;margin-bottom:20px;padding:4px;width:max-content;background:#e9eae6;border-radius:10px}.tabs button{border:0;background:none;padding:9px 13px;border-radius:7px;color:#74807a;font-size:10px;font-weight:800}.tabs button.active{background:#fff;color:var(--ink);box-shadow:0 3px 8px #27342f0e}.tabs button span{margin-left:5px;color:#9aa39f}.course-card{position:relative}.course-card>span{margin-top:20px}.course-card footer span{display:flex;gap:5px;align-items:center}.course-card footer svg{width:12px}.group-list,.session-list{display:grid;gap:10px}.group-card{display:grid;grid-template-columns:5px 1.1fr 1.2fr 120px;gap:22px;align-items:center;min-height:112px;padding:15px 22px 15px 0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.group-color{align-self:stretch;background:var(--turquoise);border-radius:0 6px 6px 0}.group-main h2{margin:7px 0 5px;font-size:16px}.group-main p{margin:0;color:#82908a;font-size:9px}.group-info{display:grid;gap:8px}.group-info span,.group-info a{display:flex;align-items:center;gap:7px;color:#697873;font-size:9px}.group-info a{color:#247f89;font-weight:800}.group-info svg{width:13px}.capacity{text-align:right}.capacity strong,.capacity small{display:block}.capacity strong{font-size:19px}.capacity small{color:#8b9691;font-size:8px}.capacity>div{height:4px;margin-top:8px;background:#e8eae7;border-radius:3px;overflow:hidden}.capacity i{display:block;height:100%;background:var(--turquoise)}.session-card{display:grid;grid-template-columns:62px 1.2fr 1fr auto;gap:20px;align-items:center;padding:17px;background:#fff;border:1px solid var(--line);border-radius:14px}.session-date{height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;background:var(--ink);color:#fff}.session-date b{font-size:21px}.session-date span{font-size:7px;text-transform:uppercase;color:#b6c3c6}.session-main h2{margin:6px 0 4px;font-size:15px}.session-main p{margin:0;color:#85918c;font-size:9px}.session-meta{display:grid;gap:8px}.session-meta span{display:flex;align-items:center;gap:7px;color:#697873;font-size:9px}.session-meta svg{width:13px}.session-actions{display:flex;gap:7px}.attendance-list{display:grid;gap:7px;max-height:440px;overflow:auto}.attendance-list>label{display:grid;grid-template-columns:auto 1fr 135px;align-items:center;gap:10px;padding:9px;border:1px solid #e6e8e5;border-radius:10px}.attendance-list b{font-size:10px}.modal-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:#17201db8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{width:min(650px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#faf9f6;border-radius:17px;box-shadow:0 30px 90px #0004}.modal>header{position:sticky;z-index:2;top:0;display:flex;justify-content:space-between;align-items:flex-start;padding:22px 24px;background:#faf9f6e8;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal h2{margin:0;font-size:20px}.modal header p{margin:6px 0 0;color:#7c8882;font-size:10px}.modal>form,.modal>.lead-detail{padding:22px 24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column;gap:7px}.field>span{font-size:9px;font-weight:850}.field>small{color:#8b9691;font-size:8px}.field:has(.textarea),.form-actions{grid-column:1/-1}.input{width:100%;height:42px;padding:0 12px;border:1px solid #dcdeda;border-radius:9px;background:#fff;outline:none;color:var(--ink);font-size:10px;transition:.2s}.input:focus{border-color:var(--turquoise);box-shadow:0 0 0 3px #3fabb81c}.textarea{min-height:78px;padding-top:11px;resize:vertical}.form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.detail-summary{display:grid;grid-template-columns:100px 1fr;gap:9px;padding:14px;background:#eff1ed;border-radius:11px}.detail-summary>span{color:#7d8983;font-size:8px}.detail-summary>b{font-size:10px}.lead-detail>h3{margin:22px 0 12px;font-size:12px}.activity{display:flex;gap:10px;padding:10px 0;border-top:1px solid #e8eae7}.activity>svg{width:15px;color:var(--turquoise)}.activity b{font-size:8px}.activity p{margin:3px 0;color:#61706a;font-size:9px}.activity small{color:#98a19d;font-size:7px}.activity-form{display:grid;grid-template-columns:130px 1fr auto;gap:7px;margin-top:15px}.empty,.error-state{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px;background:#fff;border:1px dashed #d7dad6;border-radius:14px}.empty>div{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#e8f5f6;color:#25818b}.empty h3,.error-state b{margin:12px 0 5px;font-size:13px}.empty p,.error-state p{max-width:350px;margin:0;color:#86918c;font-size:9px;line-height:1.5}.error-state .button{margin-top:14px}.loading{min-height:240px;display:flex;align-items:center;justify-content:center;gap:5px}.loading span{width:7px;height:7px;border-radius:50%;background:var(--turquoise);animation:pulse 1s infinite}.loading span:nth-child(2){animation-delay:.15s}.loading span:nth-child(3){animation-delay:.3s}@keyframes pulse{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:#f7f4ec}.login-brand-panel{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:45px;background:var(--ink);color:#fff}.login-brand-panel:before{content:"";position:absolute;right:-130px;top:-130px;width:440px;height:440px;border:1px solid #3fabb866;border-radius:50%;box-shadow:0 0 0 70px #3fabb80b,0 0 0 140px #3fabb809}.login-brand-panel:after{content:"";position:absolute;right:9%;bottom:14%;width:110px;height:110px;border-radius:50%;background:var(--coral)}.login-logo{position:relative;z-index:2}.login-message{position:relative;z-index:2;margin:auto 0;max-width:650px}.login-message>small{color:var(--yellow);font-size:9px;font-weight:900;letter-spacing:.2em}.login-message h1{margin:18px 0 22px;font-size:clamp(44px,5vw,75px);line-height:.88;letter-spacing:-.065em}.login-message>p{max-width:470px;color:#b7c2c5;font-size:13px;line-height:1.7}.login-features{display:flex;gap:18px;margin-top:32px;flex-wrap:wrap}.login-features span{display:flex;align-items:center;gap:6px;color:#d8dfe0;font-size:9px}.login-features svg{width:13px;color:var(--turquoise)}.login-version{position:relative;z-index:2;font-size:8px;letter-spacing:.15em;color:#7f9297}.login-form-panel{display:grid;place-items:center;padding:35px}.login-form-panel form{width:min(390px,100%)}.login-form-panel h2{margin:10px 0 7px;font-size:31px;letter-spacing:-.045em}.login-form-panel form>div:first-child>p{margin-bottom:28px;color:#7e8a84;font-size:11px}.login-form-panel label{display:block;margin-top:14px}.login-form-panel label>span{display:block;margin-bottom:7px;font-size:9px;font-weight:850}.login-form-panel input{width:100%;height:47px;padding:0 13px;border:1px solid #dcdeda;border-radius:10px;background:#fff;outline:none}.password-field{position:relative}.password-field button{position:absolute;right:6px;top:6px;width:35px;height:35px;border:0;background:none;color:#82908a}.password-field svg{width:17px}.login-button{width:100%;height:49px;margin-top:20px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border:0;border-radius:10px;background:var(--orange);color:#fff;font-size:11px;font-weight:900;box-shadow:0 12px 28px #f47b2d34}.login-button svg{width:17px}.login-button:disabled{opacity:.6}.form-error{margin-top:13px;padding:10px;border-radius:8px;background:#fce8e5;color:#a53f36;font-size:9px}.demo-note{display:block;margin-top:14px;text-align:center;color:#8f9995;font-size:8px}@media(max-width:1100px){.metric-grid,.plans-grid,.student-grid,.course-grid{grid-template-columns:1fr 1fr}.group-card{grid-template-columns:5px 1fr 1fr 90px}.session-card{grid-template-columns:55px 1fr auto}.session-meta{display:none}.login-page{grid-template-columns:1fr 1fr}}@media(max-width:800px){:root{--sidebar:0px}.sidebar{width:260px;transform:translate(-100%);transition:.25s}.sidebar.open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;z-index:45;inset:0;border:0;background:#17201d99}.mobile-close{display:grid;margin-left:auto;border:0;background:none;color:#fff}.app-main{margin-left:0}.menu-button{display:grid;width:36px;height:36px;margin-right:12px;place-items:center;border:1px solid var(--line);border-radius:9px;background:#fff}.menu-button svg{width:18px}.topbar{padding:0 18px}.topbar>a{font-size:0}.topbar>a svg{margin:0}.page{padding:30px 18px 55px}.dashboard-grid{grid-template-columns:1fr}.page-header{align-items:flex-start}.page-header h1{font-size:29px}.page-header>.button{white-space:nowrap}.group-card{grid-template-columns:5px 1fr 100px}.group-info{display:none}.session-card{grid-template-columns:55px 1fr}.session-actions{grid-column:1/-1;justify-content:flex-end}.login-page{grid-template-columns:1fr}.login-brand-panel{display:none}.login-form-panel{min-height:100vh}}@media(max-width:560px){.page-header{display:grid}.page-header>.button{width:100%}.metric-grid,.plans-grid,.student-grid,.course-grid{grid-template-columns:1fr}.metric-card{min-height:130px}.toolbar{align-items:flex-start;flex-direction:column}.toolbar-hint{display:none}.kanban-column{width:82vw;min-width:82vw}.form-grid{grid-template-columns:1fr}.field,.form-actions{grid-column:1}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}.panel{padding:17px}.plan-card ul{grid-template-columns:1fr}.group-card{grid-template-columns:5px 1fr 70px;gap:12px;padding-right:12px}.session-card{padding:12px;gap:12px}.session-actions .button{flex:1}.activity-form,.footer-experiences{grid-template-columns:1fr}.topbar>a{display:none}.attendance-list>label{grid-template-columns:auto 1fr}.attendance-list .input{grid-column:1/-1}.login-form-panel{padding:24px}}.sidebar nav{padding:16px 0;overflow:auto;scrollbar-width:thin}.sidebar nav a{padding:9px 13px;font-size:10px}.button.danger{background:#fff0ee;color:#b74439;border:1px solid #f0cfca}.status.open{background:#fff4cc;color:#856a0e}.status.partial{background:#e8f5f6;color:#267983}.status.paid{background:#e4f5eb;color:#26794a}.status.overdue,.status.cancelled{background:#fbe8e5;color:#a84339}.status.active{background:#e4f5eb;color:#26794a}.status.suspended{background:#fff4cc;color:#856a0e}.status.finished{background:#e8f5f6;color:#267983}.status svg{width:11px;margin-right:4px;vertical-align:middle}.header-actions{display:flex;align-items:center;gap:8px}.header-actions .input{min-width:230px}.finance-metrics strong,.diary-metrics strong{font-size:22px}.finance-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:-2px 0 18px}.finance-strip>a{display:flex;align-items:center;gap:12px;padding:15px 17px;border:1px solid var(--line);border-radius:12px;background:#fff}.finance-strip svg{width:18px;color:var(--turquoise)}.finance-strip div{display:flex;flex-direction:column}.finance-strip span{font-size:8px;color:var(--muted)}.finance-strip b{margin-top:4px;font-size:13px}.student-card-actions{display:flex;align-items:center;gap:8px}.student-card-actions .row-actions button{width:27px;height:27px}.course-card-head{display:flex;align-items:center;justify-content:space-between}.course-card.inactive,.group-card.inactive,.session-card.is-cancelled{opacity:.55}.group-card .capacity .row-actions{justify-content:flex-end;margin-top:9px}.contract-terms{padding:14px;border-radius:10px;background:#fff;border:1px solid var(--line);font-size:10px;line-height:1.7;color:#5f6e68}.compact-list{max-height:250px;overflow:auto}.check{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:700}.check input{accent-color:var(--turquoise)}.diary-list{display:grid;gap:10px}.diary-entry{display:grid;grid-template-columns:62px 1fr 180px;gap:18px;align-items:start;padding:18px;background:#fff;border:1px solid var(--line);border-radius:14px}.diary-entry h3{margin:6px 0 12px;font-size:15px}.diary-entry p{margin:5px 0;color:#6e7c76;font-size:9px;line-height:1.5}.diary-side{display:flex;align-items:flex-end;flex-direction:column;gap:13px}.diary-side>span{font-size:9px;color:var(--muted)}.note-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.note-card{display:flex;min-height:190px;flex-direction:column;padding:20px;background:#fff;border:1px solid var(--line);border-radius:14px}.note-card h3{margin:9px 0;font-size:14px}.note-card p{color:#66756e;font-size:10px;line-height:1.6}.note-card footer{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line);font-size:8px}.note-card footer span{color:var(--muted)}.grade-list{display:grid;gap:7px;max-height:460px;overflow:auto;padding:22px 24px}.grade-list>div{display:grid;grid-template-columns:auto 1fr 80px 1.5fr auto;align-items:center;gap:9px;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff}.grade-list b{font-size:9px}.grade-list .input{height:36px}.modal>form>.grade-list+.form-actions{padding:0 24px 22px}.settings-panel{max-width:920px}.settings-panel form{padding:2px}.tabs button{display:flex;align-items:center;gap:5px}.tabs button svg{width:14px}.meeting-loading{min-height:100vh;display:grid;place-items:center;background:#14242d}.meeting-lobby{min-height:100vh;display:grid;grid-template-columns:1fr .8fr;background:#f7f5ef}.meeting-lobby>section{display:flex;flex-direction:column;justify-content:center;width:min(520px,100%);margin:auto;padding:50px}.meeting-lobby h1{margin:14px 0 8px;font-size:44px;line-height:1;letter-spacing:-.05em}.meeting-lobby>section>p{color:var(--muted);font-size:12px}.meeting-lobby form{display:grid;gap:14px;margin-top:25px}.meeting-lobby>section>a{display:flex;align-items:center;gap:7px;margin-top:22px;color:var(--muted);font-size:9px;font-weight:800}.meeting-lobby>section>a svg{width:14px}.meeting-lobby>aside{display:grid;place-items:center;overflow:hidden;background:var(--ink)}.meeting-brand{width:48px;height:48px;display:grid;place-items:center;margin-bottom:25px;border-radius:14px;background:var(--turquoise);color:#fff;font-size:23px;font-weight:950}.meeting-brand span{color:var(--yellow)}.meeting-brand.small{width:36px;height:36px;margin:0;border-radius:10px;font-size:17px}.meeting-security{display:flex;gap:9px;margin-top:20px;padding:13px;border-radius:10px;background:#e6f4ef;color:#37725a;font-size:9px;line-height:1.5}.meeting-security svg{width:17px}.meeting-join{height:48px;background:var(--orange);color:#fff}.lobby-orbit{position:relative;width:220px;height:220px;display:grid;place-items:center;border:1px solid #3fabb866;border-radius:50%;box-shadow:0 0 0 60px #3fabb812,0 0 0 120px #3fabb809;color:#fff}.lobby-orbit svg{width:55px;height:55px;color:var(--turquoise)}.lobby-orbit span{position:absolute;bottom:45px;font-size:10px;letter-spacing:.3em;font-weight:900}.meeting-room{height:100vh;display:grid;grid-template-rows:68px 1fr 90px;background:#10191f;color:#fff}.meeting-room>header{display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid #ffffff14;background:#16232a}.meeting-room>header>div{display:flex;align-items:center;gap:10px}.meeting-room>header>div>div:last-child{display:flex;flex-direction:column}.meeting-room header b{font-size:12px}.meeting-room header small{margin-top:3px;color:#93a4aa;font-size:8px}.live-pill{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:999px;background:#ffffff0c;font-size:8px;font-weight:900}.live-pill i{width:7px;height:7px;border-radius:50%;background:#56d68d;box-shadow:0 0 0 4px #56d68d1f}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;overflow:auto}.video-grid.count-1{grid-template-columns:1fr}.video-grid.count-3 .video-tile:first-child{grid-row:span 2}.video-tile{position:relative;min-height:220px;overflow:hidden;border:1px solid #ffffff15;border-radius:13px;background:#1d2b32}.video-tile video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.video-tile>span{position:absolute;left:10px;bottom:10px;display:flex;align-items:center;gap:5px;padding:6px 8px;border-radius:7px;background:#0b1216b8;font-size:8px}.camera-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:#1d2b32}.camera-placeholder>div{width:78px;height:78px;display:grid;place-items:center;border-radius:25px;background:#2e8994;color:#fff;font-size:24px;font-weight:900}.meeting-room>footer{display:flex;align-items:center;justify-content:center;gap:9px;border-top:1px solid #ffffff14;background:#16232a}.control{min-width:76px;height:57px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;border:0;border-radius:11px;background:#ffffff0d;color:#fff}.control svg{width:19px}.control span{font-size:7px}.control:hover,.control.active{background:#ffffff18}.control.off,.control.hangup{background:#bb4b43}.control.hangup{margin-left:20px}@media(max-width:1100px){.finance-strip,.note-grid{grid-template-columns:1fr 1fr}.grade-list>div{grid-template-columns:auto 1fr 70px}.grade-list>div .input:nth-of-type(2){grid-column:2/-1}.diary-entry{grid-template-columns:55px 1fr}.diary-side{grid-column:2}}@media(max-width:800px){.header-actions{width:100%;flex-direction:column}.header-actions .input,.header-actions .button{width:100%}.meeting-lobby{grid-template-columns:1fr}.meeting-lobby>aside{display:none}.video-grid{grid-template-columns:1fr!important}.meeting-room>footer{gap:5px}.control{min-width:60px}.control.hangup{margin-left:5px}}@media(max-width:560px){.finance-strip,.note-grid,.diary-entry{grid-template-columns:1fr}.diary-entry .session-date{width:55px}.diary-side{grid-column:1;align-items:stretch}.grade-list>div{grid-template-columns:auto 1fr}.grade-list>div .input{grid-column:1/-1}.meeting-lobby>section{padding:28px}.meeting-lobby h1{font-size:36px}.control span{display:none}.control{min-width:48px;height:48px}.meeting-room{grid-template-rows:60px 1fr 70px}}.global-notice{position:fixed;right:24px;bottom:24px;z-index:1000;max-width:min(440px,calc(100vw - 32px));display:flex;gap:18px;align-items:center;text-align:left;border:0;box-shadow:0 18px 50px #1f254433}.global-notice span{font-size:1.25rem;margin-left:auto}.view-switch{display:flex;padding:3px;border:1px solid var(--line);border-radius:9px;background:#e9eae6}.view-switch button{height:32px;display:flex;align-items:center;gap:6px;padding:0 11px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:9px;font-weight:850}.view-switch button.active{background:#fff;color:var(--ink);box-shadow:0 3px 8px #27342f12}.view-switch svg{width:13px}.kanban-column{transition:.18s}.kanban-column.drop-target{border-color:var(--turquoise);background:#e4f2f2;box-shadow:inset 0 0 0 2px #3fabb826}.lead-card.dragging{opacity:.42;transform:rotate(1deg) scale(.98)}.drag-handle{display:grid;place-items:center;margin-left:auto;color:#a0aaa6}.drag-handle svg{width:14px}.card-stage-select{height:31px;margin-top:12px;padding:0 8px;font-size:8px;background:#f7f8f5}.detail-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.activity-form.expanded{grid-template-columns:125px 1fr 150px auto auto;align-items:center}.attachments-panel{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading>div{display:flex;align-items:center;gap:8px}.section-heading h3,.attachments-panel h3{margin:0;font-size:12px}.section-heading svg{width:15px;color:var(--turquoise)}.section-heading>span{color:var(--muted);font-size:8px}.attachment-list{display:grid;margin-top:11px;border:1px solid var(--line);border-radius:11px;overflow:hidden}.attachment-list article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px;background:#fff;border-top:1px solid var(--line)}.attachment-list article:first-child{border-top:0}.attachment-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#e8f5f6;color:#2a818a}.attachment-icon svg{width:16px}.attachment-list article>div:nth-child(2){min-width:0}.attachment-list b,.attachment-list small,.attachment-list p{display:block}.attachment-list b{overflow:hidden;text-overflow:ellipsis;font-size:9px}.attachment-list small{margin-top:3px;color:var(--muted);font-size:7px}.attachment-list p{margin:4px 0 0;color:#66756e;font-size:8px}.attachment-form{display:grid;grid-template-columns:1.2fr 150px 1fr auto;gap:7px;margin-top:10px}.attachment-form input,.attachment-form select{min-width:0;height:38px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:8px}.attachment-form input[type=file]{padding:9px}.attachment-help{display:block;margin-top:7px;color:var(--muted);font-size:7px}.attachment-empty{padding:18px;margin-top:10px;border:1px dashed #cfd4d0;border-radius:10px;text-align:center;color:var(--muted);font-size:8px}.inline-feedback{margin-top:8px;color:#38725b;font-size:8px;font-weight:700}.invoice-items{grid-column:1/-1}.invoice-item-edit{display:grid;grid-template-columns:1fr 80px 110px 90px 35px;gap:7px;align-items:center;margin-top:8px}.invoice-item-edit b{text-align:right;font-size:9px}.financial-lines{display:grid;border:1px solid var(--line);border-radius:11px;background:#fff;overflow:hidden}.financial-lines>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 13px;border-top:1px solid var(--line);font-size:9px}.financial-lines>div:first-child{border-top:0}.financial-lines small{display:block;margin-top:3px;color:var(--muted);font-size:7px}.financial-total{background:#f0f2ef;font-size:11px!important}.record-notes,.provider-notice{padding:12px;margin:12px 0 0;border-radius:9px;background:#eef2ef;color:#5e6c66;font-size:9px;line-height:1.5}.provider-notice{grid-column:1/-1;background:#fff5d5;color:#705d20}.boleto-card{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:13px;border:1px solid #cfe7d7;border-radius:11px;background:#f2faf5}.boleto-card>div:first-child{min-width:0;display:flex;flex-direction:column;gap:7px}.boleto-card b{overflow-wrap:anywhere;font-size:9px}.boleto-card small{color:var(--muted);font-size:7px}.row-actions a{width:31px;height:31px;display:grid;place-items:center;border:1px solid #e0e3df;border-radius:8px;background:#fff;color:#60706a}.row-actions a svg{width:14px}.floating-loading{position:fixed;z-index:120;inset:0;display:grid;place-items:center;background:#17201d60}.contract-print-screen{min-height:100vh;padding:30px;background:#ecece7}.print-toolbar{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.contract-document{width:210mm;min-height:297mm;margin:auto;padding:22mm 20mm;background:#fff;box-shadow:0 20px 60px #25342e22;color:#1d2a31}.contract-document>header{display:flex;justify-content:space-between;gap:30px;padding-bottom:20px;border-bottom:2px solid var(--ink)}.contract-document h1{max-width:500px;margin:8px 0;font-size:28px;line-height:1.05}.contract-document header p{font-size:10px}.contract-brand{display:flex;align-items:flex-end;flex-direction:column;text-align:right}.contract-brand b{font-size:19px}.contract-brand small{margin-top:4px;color:#68766f;font-size:9px}.contract-document section{margin-top:28px}.contract-document section h2{font-size:13px;text-transform:uppercase;letter-spacing:.06em}.contract-document section p,.print-terms{font-size:11px;line-height:1.8;text-align:justify}.contract-facts{display:grid;grid-template-columns:1fr 1fr;border:1px solid #dfe3df}.contract-facts>div{padding:12px;border-right:1px solid #dfe3df;border-top:1px solid #dfe3df}.contract-facts>div:nth-child(-n+2){border-top:0}.contract-facts>div:nth-child(2n){border-right:0}.contract-facts span,.contract-facts b{display:block}.contract-facts span{color:#6c7973;font-size:8px;text-transform:uppercase}.contract-facts b{margin-top:4px;font-size:10px}.print-terms{white-space:pre-wrap}.signature-section{margin-top:50px!important}.signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:65px}.signature-grid>div{text-align:center}.signature-grid span{display:block;border-top:1px solid #333}.signature-grid b,.signature-grid small{display:block;margin-top:7px;font-size:9px}.signature-grid small{margin-top:3px;color:#6b7772;font-size:7px}.contract-document>footer{margin-top:50px;padding-top:10px;border-top:1px solid #dfe3df;text-align:center;color:#7a8680;font-size:7px}@media(max-width:900px){.activity-form.expanded,.attachment-form{grid-template-columns:1fr 1fr}.attachment-form .button{width:100%}.contract-document{width:100%;min-height:auto;padding:35px}.contract-facts{grid-template-columns:1fr}.contract-facts>div{border-right:0}.contract-facts>div:nth-child(2){border-top:1px solid #dfe3df}}@media(max-width:560px){.view-switch{width:100%}.view-switch button{flex:1;justify-content:center}.activity-form.expanded,.attachment-form,.invoice-item-edit{grid-template-columns:1fr}.attachment-list article{grid-template-columns:auto 1fr}.attachment-list .row-actions{grid-column:1/-1}.invoice-item-edit b{text-align:left}.contract-print-screen{padding:12px}.contract-document{padding:24px}.contract-document>header,.signature-grid{grid-template-columns:1fr;display:grid}.contract-brand{align-items:flex-start;text-align:left}.signature-grid{gap:55px}.print-toolbar{position:sticky;z-index:3;top:8px}}@media print{body{background:#fff}.sidebar,.topbar,.print-toolbar{display:none!important}.app-main{margin:0}.page{width:auto;max-width:none;padding:0}.contract-print-screen{padding:0;background:#fff}.contract-document{width:auto;min-height:auto;margin:0;padding:14mm 16mm;box-shadow:none}.contract-document section{break-inside:avoid}.contract-document>footer{position:fixed;bottom:5mm;left:16mm;right:16mm}}.form-section-title{grid-column:1/-1;margin-top:8px;padding-bottom:7px;border-bottom:1px solid var(--line);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}.button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.48}.attendance-list>label{grid-template-columns:auto 1fr 135px 1fr}.inline-link{display:inline-flex;align-items:center;gap:6px;color:#247f89;font-size:9px;font-weight:800}.inline-link svg{width:13px}.enrollment-row{grid-template-columns:auto 1fr minmax(130px,170px)}.enrollment-row .select{height:35px}.group-card .row-actions button{position:relative;z-index:2}@media(max-width:560px){.form-section-title{grid-column:1}.attendance-list>label{grid-template-columns:auto 1fr}.attendance-list>label .input{grid-column:1/-1}.enrollment-row{grid-template-columns:auto 1fr}.enrollment-row .select{grid-column:1/-1}}:root{--sidebar:258px;--surface:#fff;--soft:#eef1ee;--ink:#1f3038;--muted:#687770;--line:#dde2de}body{background:#f4f5f2;color:var(--ink)}.sidebar{padding:22px 15px}.sidebar nav{gap:3px;padding:20px 0}.sidebar nav a{min-height:43px;padding:10px 13px;font-size:12px}.topbar{height:72px;padding:0 30px}.topbar b{font-size:14px}.topbar>a{font-size:11px}.page{width:min(1560px,100%);padding:36px clamp(22px,3vw,46px) 72px}.page-header{align-items:center;margin-bottom:28px}.page-header h1{font-size:36px}.page-header p{font-size:13px;max-width:760px}.eyebrow{font-size:9px!important}.button{min-height:42px;padding:0 17px;font-size:12px}.input{height:44px;font-size:12px}.field>span{font-size:11px}.field>small{font-size:10px}.search{height:46px}.search input{font-size:13px}.toolbar>span,.toolbar-hint{font-size:11px}.tabs{max-width:100%;overflow-x:auto;scrollbar-width:thin}.tabs button{white-space:nowrap;padding:10px 14px;font-size:11px}.metric-card span{font-size:11px}.metric-card small{font-size:10px}.panel h2{font-size:19px}.panel>header>a{font-size:11px}th{padding:14px 16px;font-size:9px}td{padding:15px 16px;font-size:12px}td>small{font-size:10px}.status{font-size:8px}.list-row b{font-size:12px}.list-row small{font-size:10px}.modal{width:min(700px,calc(100vw - 32px))}.modal-wide{width:min(1100px,calc(100vw - 32px))}.modal-full{width:min(1500px,calc(100vw - 24px));height:calc(100vh - 24px);max-height:none}.modal>header{padding:21px 24px}.modal h2{font-size:22px}.modal header p{font-size:11px}.modal>form,.modal>.lead-detail{padding:24px}.notice{font-size:11px}.header-actions{max-width:100%;flex-wrap:wrap}.clean-table{border:0;border-radius:0}.clean-table table{min-width:780px}.span-full{grid-column:1/-1}.back-link{width:max-content;display:inline-flex;align-items:center;gap:7px;margin-bottom:20px;border:0;background:none;color:#5d6f68;font-size:11px;font-weight:800}.back-link svg{width:15px}.student-search-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 30px #26362f08}.student-search{width:min(680px,100%);height:50px;background:#f7f8f6}.student-search-panel>div{display:flex;align-items:baseline;gap:7px}.student-search-panel>div b{font-size:24px}.student-search-panel>div span{color:var(--muted);font-size:11px}.student-list{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 30px #26362f08}.student-list-head,.student-list>article{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(210px,1fr) minmax(190px,1fr) 90px 120px;gap:18px;align-items:center;padding:14px 20px}.student-list-head{background:#eef0ed;color:#6f7d77;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.student-list>article{min-height:76px;border-top:1px solid #e9ece9;cursor:pointer;transition:.18s}.student-list>article:hover{background:#f7faf8;box-shadow:inset 4px 0 var(--turquoise)}.student-identity{display:flex;align-items:center;gap:12px;min-width:0}.student-identity>div:last-child{min-width:0}.student-identity b,.student-list>article>div:nth-child(3)>b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.student-identity small,.student-list>article>div:nth-child(3)>small{display:block;margin-top:4px;color:var(--muted);font-size:10px}.student-list-contact{display:grid;gap:5px}.student-list-contact span{display:flex;align-items:center;gap:6px;color:#5f7068;font-size:11px}.student-list-contact svg{width:13px}.student-profile-header{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-bottom:18px;padding:24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#fff 55%,#eaf5f4);box-shadow:0 12px 36px #26362f0b}.profile-avatar{width:66px;height:66px;border-radius:18px;font-size:20px}.student-profile-header h1{margin:7px 0 5px;font-size:32px;line-height:1}.student-profile-header p{margin:0;color:var(--muted);font-size:12px}.profile-actions{display:flex;gap:8px}.student-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.student-kpis article{min-height:92px;display:flex;align-items:center;gap:14px;padding:17px;border:1px solid var(--line);border-radius:14px;background:#fff}.student-kpis article>svg{width:21px;color:var(--turquoise)}.student-kpis article>div{display:flex;flex-direction:column}.student-kpis span{color:var(--muted);font-size:10px}.student-kpis b{margin-top:5px;font-size:20px}.student-kpis small{margin-top:2px;color:#a44a40;font-size:9px}.student-kpis article.attention{border-color:#efc9c3;background:#fff8f6}.student-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-data{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-data span{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;padding:12px;border-radius:10px;background:#f4f6f3;color:var(--muted);font-size:10px}.profile-data svg{grid-row:1/3;width:17px;color:var(--turquoise)}.profile-data b{display:block;color:var(--ink);font-size:12px}.timeline-list{display:grid}.timeline-list>div{display:grid;grid-template-columns:12px 1fr;gap:10px;padding-bottom:17px}.timeline-list i{position:relative;width:9px;height:9px;margin-top:4px;border-radius:50%;background:var(--turquoise);box-shadow:0 0 0 4px #3fabb81b}.timeline-list i:after{content:"";position:absolute;top:13px;left:4px;width:1px;height:38px;background:#d9dfdb}.timeline-list>div:last-child i:after{display:none}.timeline-list b,.timeline-list span,.timeline-list small{display:block}.timeline-list b{font-size:12px}.timeline-list span{margin-top:3px;color:var(--muted);font-size:10px}.timeline-list small{margin-top:4px;color:#2b838d;font-size:8px;font-weight:900}.attendance-history{display:grid}.attendance-history>div{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:11px 0;border-top:1px solid #edf0ed}.attendance-mark{width:31px;height:31px;display:grid;place-items:center;border-radius:8px;background:#e7f4eb;color:#277c4b;font-size:10px;font-weight:900}.attendance-mark.absent{background:#fbe9e6;color:#a74338}.attendance-mark.justified{background:#fff4cc;color:#806715}.attendance-mark.late{background:#e8f2f6;color:#2c7185}.attendance-history b,.attendance-history small{display:block}.attendance-history b{font-size:12px}.attendance-history small{margin-top:3px;color:var(--muted);font-size:9px}.attendance-history>div>span:last-child{color:var(--muted);font-size:10px}.contract-dashboard-list{display:grid}.contract-dashboard-list article{display:grid;grid-template-columns:auto 1fr auto auto;gap:13px;align-items:center;padding:15px 0;border-top:1px solid #edf0ed}.contract-dashboard-list article>svg{width:20px;color:var(--turquoise)}.contract-dashboard-list b,.contract-dashboard-list span,.contract-dashboard-list small{display:block}.contract-dashboard-list b{font-size:13px}.contract-dashboard-list span{margin-top:4px;color:var(--muted);font-size:10px}.contract-dashboard-list small{margin-top:3px;color:#8b9691;font-size:9px}.note-list>div{display:flex;gap:11px;padding:13px 0;border-top:1px solid #edf0ed}.note-list svg{width:18px;color:var(--turquoise)}.note-list b{font-size:12px}.note-list p{margin:4px 0;color:#5f6f68;font-size:11px;line-height:1.5}.note-list small{color:var(--muted);font-size:9px}.course-structure-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:24px}.course-structure-summary>div{display:flex;align-items:center;gap:11px;padding:14px;border-radius:12px;background:#eef3f0}.course-structure-summary svg{width:18px;color:var(--turquoise)}.course-structure-summary span{display:flex;align-items:baseline;gap:5px;color:var(--muted);font-size:10px}.course-structure-summary b{color:var(--ink);font-size:18px}.curriculum-topic-list{display:grid;margin-top:12px;border:1px solid var(--line);border-radius:13px;overflow:hidden}.curriculum-topic-list article{display:grid;grid-template-columns:46px 1fr auto;gap:13px;align-items:center;padding:15px;border-top:1px solid var(--line);background:#fff}.curriculum-topic-list article:first-child{border-top:0}.curriculum-topic-list article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--ink);color:#fff;font-size:11px;font-weight:900}.curriculum-topic-list b{font-size:13px}.curriculum-topic-list p{margin:3px 0;color:var(--muted);font-size:10px}.curriculum-topic-list small{color:#2f8791;font-size:9px}.structure-section{margin-top:28px}.assessment-blueprint-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.assessment-blueprint-grid article{padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff}.assessment-blueprint-grid article>div:first-child{display:flex;align-items:center;justify-content:space-between}.assessment-blueprint-grid h4{margin:18px 0 6px;font-size:14px}.assessment-blueprint-grid p{color:var(--muted);font-size:10px}.assessment-blueprint-grid footer{display:flex;align-items:center;gap:14px;padding-top:12px;border-top:1px solid var(--line)}.assessment-blueprint-grid footer>span{font-size:9px}.assessment-blueprint-grid footer .row-actions{margin-left:auto}.diary-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.diary-overview article{display:flex;align-items:center;gap:11px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff}.diary-overview svg{width:20px;color:var(--turquoise)}.diary-overview span,.diary-overview b{display:block}.diary-overview span{color:var(--muted);font-size:9px}.diary-overview b{margin-top:3px;font-size:15px}.diary-legend{display:flex;align-items:center;flex-wrap:wrap;gap:13px;margin-bottom:10px;padding:10px 13px;border-radius:10px;background:#ecefeb}.diary-legend span{display:flex;align-items:center;gap:5px;font-size:9px}.diary-legend i{min-width:22px;height:22px;display:grid;place-items:center;border-radius:6px;background:#fff;font-style:normal;font-weight:900}.diary-legend i.present{color:#287b4c;background:#e4f4e9}.diary-legend i.absent{color:#a74338;background:#fbe9e6}.diary-legend i.justified{color:#806715;background:#fff4cc}.diary-legend i.late{color:#2c7185;background:#e5f1f5}.diary-legend i.grade{color:#76528a;background:#f4eaf9}.diary-legend small{margin-left:auto;color:var(--muted);font-size:9px}.diary-matrix-wrap{max-width:100%;overflow:auto;border:1px solid #d9dfda;border-radius:14px;background:#fff;box-shadow:0 10px 30px #26362f09}.diary-matrix{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.diary-matrix th,.diary-matrix td{border-top:1px solid #e8ece8;border-right:1px solid #e8ece8}.diary-matrix thead th{position:sticky;z-index:4;top:0;width:118px;min-width:118px;height:128px;padding:11px;background:#eef1ed;vertical-align:top;cursor:pointer}.diary-matrix thead th:hover{background:#e5eeea}.diary-matrix .student-column{position:sticky;z-index:5;left:0;width:260px;min-width:260px;background:#f8f9f7;text-align:left}.diary-matrix thead .student-column{z-index:6;padding:16px}.diary-matrix tbody .student-column{display:flex;align-items:center;gap:10px;height:64px;padding:10px 14px}.diary-matrix .student-column span{min-width:0}.diary-matrix .student-column b,.diary-matrix .student-column small{display:block}.diary-matrix .student-column b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:11px;text-transform:none;letter-spacing:0}.diary-matrix .student-column small{margin-top:3px;color:var(--muted);font-size:8px;text-transform:none;letter-spacing:0}.diary-matrix thead th>b,.diary-matrix thead th>small{display:block}.diary-matrix thead th>b{margin-top:8px;max-height:31px;overflow:hidden;color:var(--ink);font-size:10px;line-height:1.35;text-transform:none;letter-spacing:0}.diary-matrix thead th>small{margin-top:5px;color:var(--muted);font-size:8px;text-transform:none;letter-spacing:0}.diary-matrix thead th>button{position:absolute;right:6px;bottom:6px;width:25px;height:25px;display:grid;place-items:center;border:0;border-radius:6px;background:#fff;color:#65736d}.diary-matrix thead th>button svg{width:12px}.matrix-event-kind{display:block;width:max-content;padding:4px 6px;border-radius:5px;background:#dff0f1;color:#287d87;font-size:7px;font-weight:900}.matrix-event-kind.assessment{background:#f4eaf9;color:#76528a}.diary-matrix td{height:64px;padding:0;text-align:center;cursor:pointer}.diary-matrix td:hover{background:#f1f7f4}.matrix-value{width:30px;height:30px;display:grid;place-items:center;margin:auto;border-radius:8px;background:#f0f2ef;color:#89938f;font-size:10px;font-weight:900}.matrix-value.attendance-present{background:#e4f4e9;color:#287b4c}.matrix-value.attendance-absent{background:#fbe9e6;color:#a74338}.matrix-value.attendance-justified{background:#fff4cc;color:#806715}.matrix-value.attendance-late{background:#e5f1f5;color:#2c7185}.matrix-value.score{background:#f4eaf9;color:#76528a}.diary-matrix td>small{display:block;margin-top:-4px;color:var(--orange);font-size:7px}.register-list{display:grid;padding:0 24px}.register-head,.register-list>div:not(.register-head){display:grid;grid-template-columns:minmax(220px,1fr) 180px minmax(220px,1.3fr);gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.register-head{position:sticky;z-index:1;top:78px;padding-top:14px;background:#faf9f6;color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase}.grade-register .register-head,.grade-register>div:not(.register-head){grid-template-columns:minmax(210px,1fr) 100px minmax(220px,1.3fr) 90px}.new-note-card{min-height:180px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;border:1px dashed #bfc9c3;border-radius:14px;background:#f7faf8;color:#507068}.new-note-card svg{width:24px}.new-note-card b{font-size:12px}.new-note-card span{max-width:220px;font-size:9px}.collection-dashboard,.report-section{margin-top:18px}.collection-list{display:grid}.collection-list>article{display:grid;grid-template-columns:auto minmax(240px,1fr) 130px 80px auto;gap:13px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.collection-list>article>div:nth-child(2) b,.collection-list>article>div:nth-child(2) span{display:block}.collection-list>article>div:nth-child(2) b{font-size:12px}.collection-list>article>div:nth-child(2) span{margin-top:3px;color:var(--muted);font-size:9px}.collection-list>article>div:nth-child(3){display:flex;flex-direction:column}.collection-list>article>div:nth-child(3) small{color:var(--muted);font-size:8px}.collection-list>article>div:nth-child(3) b{margin-top:3px;font-size:12px}.report-period{display:flex;align-items:center;gap:8px;padding:6px;border:1px solid var(--line);border-radius:11px;background:#fff}.report-period svg{width:17px;margin-left:6px;color:var(--turquoise)}.report-period .input{width:145px;height:34px;border:0;background:#f1f3f0}.report-period span{color:var(--muted);font-size:9px}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.aging-bars,.funnel-report{display:grid;gap:12px}.aging-bars>div,.funnel-report>div{display:grid;grid-template-columns:100px 1fr 100px;gap:10px;align-items:center}.aging-bars span,.funnel-report span{color:var(--muted);font-size:10px}.aging-bars>div>div,.funnel-report>div>div{height:8px;overflow:hidden;border-radius:8px;background:#e8ece8}.aging-bars i,.funnel-report i{display:block;height:100%;border-radius:8px;background:var(--turquoise)}.aging-bars b,.funnel-report b{text-align:right;font-size:11px}.funnel-report i{background:var(--orange)}.report-success{min-height:180px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;color:#628078}.report-success svg{width:28px;color:#35a261}.report-success b{font-size:13px}.report-success span{font-size:10px}.academic-report-list,.risk-list{display:grid}.academic-report-list>a{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 0;border-top:1px solid var(--line)}.academic-report-list>a>div:first-child{display:flex;align-items:center;gap:10px}.academic-report-list svg{width:18px;color:var(--turquoise)}.academic-report-list b,.academic-report-list small{display:block}.academic-report-list b{font-size:12px}.academic-report-list small{margin-top:3px;color:var(--muted);font-size:9px}.academic-report-list>a>div:last-child{display:flex;gap:15px}.academic-report-list>a>div:last-child span{display:flex;flex-direction:column;color:var(--muted);font-size:8px}.academic-report-list>a>div:last-child b{margin-top:4px;color:var(--ink);font-size:12px}.risk-list>a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.risk-list>a>div:nth-child(2){display:flex;flex-direction:column}.risk-list b{font-size:11px}.risk-list span{margin-top:3px;color:#a14c42;font-size:9px}.risk-list>a>svg{width:15px;color:#d47769}@media(max-width:1180px){.student-list-head,.student-list>article{grid-template-columns:minmax(230px,1.3fr) minmax(180px,1fr) minmax(170px,1fr) 80px auto}.student-kpis,.diary-overview,.course-structure-summary,.assessment-blueprint-grid{grid-template-columns:1fr 1fr}.report-grid{grid-template-columns:1fr}}@media(max-width:900px){.student-list-head{display:none}.student-list>article{grid-template-columns:1fr auto;padding:16px}.student-list>article>.student-list-contact,.student-list>article>div:nth-child(3){grid-column:1}.student-list>article>.active-badge,.student-list>article>.inactive-badge{grid-column:2;grid-row:1}.student-list>article>.row-actions{grid-column:2;grid-row:2/4}.student-profile-header{grid-template-columns:auto 1fr}.profile-actions{grid-column:1/-1}.student-dashboard-grid{grid-template-columns:1fr}.student-kpis{grid-template-columns:1fr 1fr}.collection-list>article{grid-template-columns:auto 1fr auto}.collection-list>article>div:nth-child(3),.collection-list>article>.status{grid-column:2}.collection-list>article>.row-actions{grid-column:3;grid-row:1/4}.register-head{display:none}.register-list>div:not(.register-head),.grade-register>div:not(.register-head){grid-template-columns:1fr 1fr}.register-list .student-identity{grid-column:1/-1}}@media(max-width:600px){.page{padding:26px 15px 55px}.page-header h1{font-size:30px}.page-header{align-items:stretch}.student-search-panel{align-items:stretch;flex-direction:column}.student-search-panel>div{justify-content:flex-end}.student-profile-header{grid-template-columns:1fr;text-align:center}.profile-avatar{margin:auto}.profile-actions{flex-direction:column}.student-kpis,.diary-overview,.course-structure-summary,.assessment-blueprint-grid{grid-template-columns:1fr}.student-tabs{width:100%}.profile-data{grid-template-columns:1fr}.report-period{width:100%;flex-wrap:wrap}.report-period .input{flex:1}.modal-backdrop{padding:8px}.modal{width:100%;max-height:calc(100vh - 16px);border-radius:13px}.register-list{padding:0 14px}.register-list>div:not(.register-head),.grade-register>div:not(.register-head){grid-template-columns:1fr}.register-list .student-identity{grid-column:1}.collection-list>article{grid-template-columns:auto 1fr}.collection-list>article>.row-actions{grid-column:1/-1;grid-row:auto}.academic-report-list>a{grid-template-columns:1fr}.academic-report-list>a>div:last-child{justify-content:space-between}.diary-legend small{width:100%;margin-left:0}}.diary-matrix tbody tr{height:64px}.diary-matrix tbody .student-column{display:table-cell;height:64px;padding:10px 14px;vertical-align:middle}.diary-matrix tbody .student-column>.avatar{display:inline-grid;margin-right:10px;vertical-align:middle}.diary-matrix tbody .student-column>span{display:inline-block;max-width:190px;vertical-align:middle}.demo-mode-banner{display:flex;align-items:center;gap:13px;margin:-8px 0 20px;padding:14px 17px;border:1px solid #ead693;border-radius:13px;background:#fff8db;color:#725e18}.demo-mode-banner>svg{width:21px}.demo-mode-banner b,.demo-mode-banner span{display:block}.demo-mode-banner b{font-size:12px}.demo-mode-banner span{margin-top:3px;font-size:10px;line-height:1.45}@media(max-width:600px){.demo-mode-banner{align-items:flex-start;margin-top:0}}
