@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{color:#22243a;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f6fb;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#f5f6fb;min-width:320px;margin:0}.app-shell{max-width:1040px;margin:0 auto;padding:28px 22px 34px}.hero{color:#fff;background:radial-gradient(circle at 92% 0,#7968d8 0,#0000 36%),linear-gradient(130deg,#292354,#423a88 58%,#5b4bb2);border-radius:26px;padding:28px 32px 30px;box-shadow:0 18px 45px #31266d20}.hero-top{justify-content:space-between;align-items:center;display:flex}.brand-icon{background:#ffffff18;border:1px solid #ffffff42;border-radius:15px;place-items:center;width:46px;height:46px;display:grid}.demo-tag{letter-spacing:.14em;background:#ffffff1c;border:1px solid #ffffff45;border-radius:99px;padding:7px 10px;font-size:10px;font-weight:800}.eyebrow{letter-spacing:.16em;opacity:.75;margin:25px 0 8px;font-size:11px;font-weight:800}.hero h1{letter-spacing:-.045em;margin:0;font-family:Manrope,sans-serif;font-size:clamp(30px,5vw,43px);line-height:1.1}.hero-copy{color:#efedff;max-width:550px;margin:12px 0 20px;font-size:15px;line-height:1.6}.hero-meta{color:#e3dfff;flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;display:flex}.hero-meta span:first-child{align-items:center;gap:6px;display:flex}.notice{color:#775b24;background:#fff8e8;border:1px solid #f0dfb6;border-radius:15px;gap:12px;margin:18px 0;padding:15px 17px;font-size:13px;line-height:1.5;display:flex}.notice svg{flex-shrink:0;margin-top:2px}.notice p{color:#806b46;margin:4px 0 0}.toast{color:#24613d;background:#eef8f1;border:1px solid #cde9d5;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:14px 0;padding:11px 14px;font-size:13px;display:flex}.toast button,.icon-button{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 26px;display:grid}.stat-card{background:#fff;border:1px solid #e8e9f2;border-radius:17px;grid-template-columns:40px 1fr;align-items:center;column-gap:11px;padding:16px;display:grid;box-shadow:0 5px 18px #1f285208}.stat-icon{color:#6253bd;background:#f0efff;border-radius:13px;grid-row:span 2;place-items:center;width:40px;height:40px;display:grid}.stat-card span{color:#74758a;font-size:12px}.stat-card strong{letter-spacing:-.04em;margin-top:1px;font:800 23px Manrope,sans-serif}.workspace{background:#fff;border:1px solid #e6e8f2;border-radius:23px;padding:24px;box-shadow:0 8px 30px #22243a08}.section-heading h2{letter-spacing:-.035em;margin:0;font:800 24px Manrope,sans-serif}.eyebrow.dark{color:#7774a0;opacity:1;margin:0 0 7px}.toolbar{justify-content:space-between;align-items:end;gap:16px;margin:22px 0 18px;display:flex}.group-select{flex:1;gap:7px;max-width:380px;display:grid}.group-select>span,label{color:#565871;font-size:12px;font-weight:700}select,input{font:inherit;color:#27283e;background:#fff;border:1px solid #dfe1ec;border-radius:11px;outline:none;min-width:0;padding:12px 13px}select:focus,input:focus{border-color:#8c80e1;box-shadow:0 0 0 3px #8171df1c}.toolbar-actions{flex-wrap:wrap;gap:9px;display:flex}.button{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:11px 14px;font:700 12px DM Sans,sans-serif;transition:transform .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.45;cursor:not-allowed}.button.primary{color:#fff;background:#5749b3;box-shadow:0 5px 12px #5749b322}.button.secondary{color:#4e438f;background:#f6f4ff;border-color:#e2defb}.button.full{width:100%;margin-top:18px}.form-card{background:#fbfaff;border:1px solid #e2dff8;border-radius:16px;margin:16px 0;padding:18px}.form-title{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.form-title h3{margin:0;font:800 16px Manrope,sans-serif}.form-card>label,.form-grid label{gap:7px;display:grid}.form-card>label input{width:100%}.form-grid{grid-template-columns:1fr 1fr 1.3fr;gap:12px;margin-top:13px;display:grid}.helper-row{color:#696982;flex-wrap:wrap;align-items:center;gap:7px;margin-top:14px;font-size:12px;display:flex}.helper-row svg{color:#6758bd}.helper-row strong{color:#292747}.empty-state{text-align:center;background:linear-gradient(#fcfbff,#fff);border:1px dashed #d8d7eb;border-radius:17px;flex-direction:column;align-items:center;padding:38px 18px 32px;display:flex}.empty-icon{color:#6455bd;background:#f0eeff;border-radius:18px;place-items:center;width:56px;height:56px;display:grid}.empty-state h3{margin:15px 0 7px;font:800 18px Manrope,sans-serif}.empty-state p{color:#77778d;max-width:450px;margin:0 0 18px;font-size:13px;line-height:1.6}.student-area{margin-top:18px}.list-heading{border-top:1px solid #f0f0f6;justify-content:space-between;align-items:center;gap:12px;padding:16px 0 13px;display:flex}.list-heading h3{margin:0;font:800 17px Manrope,sans-serif}.list-heading p{color:#77778c;margin:5px 0 0;font-size:12px}.count-pill{color:#594ca6;white-space:nowrap;background:#f1efff;border-radius:99px;padding:7px 10px;font-size:11px;font-weight:800}.search-box{color:#8b8ba0;border:1px solid #e1e2ed;border-radius:11px;align-items:center;gap:9px;margin:7px 0 12px;padding:0 12px;display:flex}.search-box input{background:0 0;border:0;flex:1;padding:11px 0;box-shadow:none!important}.student-list{display:grid}.student-row{border-bottom:1px solid #f0f0f5;align-items:center;gap:12px;padding:13px 3px;display:flex}.avatar{color:#5b4db0;background:#f0efff;border-radius:13px;flex-shrink:0;place-items:center;width:39px;height:39px;font-size:12px;font-weight:800;display:grid}.student-info{flex:1;gap:4px;min-width:0;display:grid}.student-info strong{overflow-wrap:anywhere;font-size:13px}.student-info span,.student-balance span{color:#85859a;font-size:11px}.student-balance{text-align:right;gap:2px;min-width:52px;display:grid}.student-balance strong{font:800 15px Manrope,sans-serif}.row-index{color:#b0b0c0;text-align:right;width:20px;font-size:10px}.empty-list{color:#85859a;text-align:center;flex-direction:column;align-items:center;gap:8px;padding:30px 12px;display:flex}.empty-list strong{color:#4e4f68;font-size:13px}.empty-list span{font-size:12px}.empty-list .button{margin-top:8px}footer{color:#9292a5;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:20px 4px 0;font-size:11px;display:flex}@media (width<=650px){.app-shell{padding:14px 12px 24px}.hero{border-radius:21px;padding:22px 21px 24px}.hero-copy{font-size:14px}.stats{gap:8px}.stat-card{grid-template-columns:1fr;gap:4px;padding:12px}.stat-icon{grid-row:auto;width:34px;height:34px;margin-bottom:5px}.stat-card span{font-size:10px}.stat-card strong{font-size:21px}.workspace{border-radius:19px;padding:17px 14px}.section-heading h2{font-size:21px}.toolbar{flex-direction:column;align-items:stretch}.group-select{max-width:none}.toolbar-actions{grid-template-columns:1fr 1fr;display:grid}.button{white-space:normal;padding:11px 9px}.form-grid{grid-template-columns:1fr 1fr}.student-row{gap:9px}.student-info strong{font-size:12px}.student-info span{font-size:10px}.row-index{display:none}footer{flex-direction:column}}.login-card{max-width:440px;margin:24px auto}.login-card .form-title h2{margin:0;font:800 20px Manrope,sans-serif}.login-card .form-title svg{color:#6253bd}.small-note{color:#77778d;margin:13px 0 0;font-size:11px;line-height:1.55}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.logout-button{color:#fff;cursor:pointer;background:#ffffff12;border:1px solid #fff5;border-radius:9px;align-items:center;gap:6px;margin-left:auto;padding:6px 9px;font:700 11px DM Sans,sans-serif;display:inline-flex}.logout-button:disabled{opacity:.5}@media (width<=480px){.section-heading{flex-direction:column;align-items:flex-start}.section-heading>.button{align-self:flex-end}.login-card{margin:18px 0}}.student-actions{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.student-actions .button{padding:8px 9px;font-size:11px}.device-workspace{margin-bottom:18px}.modal-backdrop{z-index:50;background:#17152f88;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.history-modal{background:#fff;width:min(620px,100%);max-height:85vh;margin:0;overflow:auto}.history-modal .form-title h2{margin:0;font:800 20px Manrope,sans-serif}.history-modal .form-title p{color:#77778d;margin:5px 0 0;font-size:12px}.history-list{display:grid}.history-item{border-bottom:1px solid #f0f0f5;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;display:flex}.history-item>div{gap:5px;min-width:0;display:grid}.history-item span{color:#85859a;font-size:11px}.history-item strong{font-size:13px}.history-item .positive{color:#21845a}.history-item .negative{color:#b54c56}@media (width<=650px){.student-actions{width:100%;padding-left:48px}.student-actions .button{flex:1}.history-modal{padding:15px}}.history-item-end{flex-shrink:0;align-items:center;gap:8px;display:flex}.history-item-end .button{padding:7px 9px;font-size:11px}
