:root{--ink:#17233c;--muted:#788398;--line:#e8eaf0;--violet:#6849df;--bg:#f7f8fb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,sans-serif}.shell{min-height:100vh;display:flex}.side{position:fixed;inset:0 auto 0 0;width:244px;background:#fff;border-right:1px solid var(--line);padding:26px 18px 18px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;padding:0 10px}.brand b{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;color:white;background:linear-gradient(145deg,#8269f2,#5c3ddd);box-shadow:0 6px 14px #6c4ee33d}.school{font-size:9px;letter-spacing:1.4px;color:#98a1b2;font-weight:700;margin:29px 12px 10px}.side nav{display:grid;gap:5px}.side nav button{border:0;background:none;text-align:left;padding:11px 12px;border-radius:10px;color:#6e788c;font-weight:600;display:flex;align-items:center;gap:12px;cursor:pointer;font-size:14px}.side nav button:hover{background:#f7f6fc}.side nav button.active{background:#f0edff;color:#5b3fd1}.side nav i{font-style:normal;font-size:19px;width:20px;text-align:center}.sidefoot{margin-top:auto}.classpick{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:10px;border-radius:12px;margin-bottom:16px}.classpick>b{display:grid;place-items:center;width:33px;height:33px;border-radius:9px;background:#dff7ec;color:#07845c;font-size:11px}.classpick span,.profile span{display:grid;flex:1}.classpick strong,.profile strong{font-size:12px}.classpick small,.profile small{font-size:10px;color:var(--muted);margin-top:2px}.profile{display:flex;align-items:center;gap:10px;padding:10px}.profile em,.me em,.studentrow em,.person em,.request em{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#6c4ee3;font-size:11px;font-weight:800;font-style:normal}.content{margin-left:244px;min-width:0;flex:1}.content>header{height:68px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;padding:0 34px;position:sticky;top:0;z-index:4}.date{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:9px;padding:7px 12px;font-size:12px}.date span{color:var(--muted)}.date span:first-child,.date span:last-child{font-size:20px}.me{position:absolute;right:32px;display:flex;align-items:center;gap:18px}.mobile-brand{display:none}.page{max-width:1280px;margin:auto;padding:42px 38px 64px}.welcome,.workhead{display:flex;justify-content:space-between;align-items:flex-end}.eyebrow{font-size:10px!important;letter-spacing:1.5px;font-weight:800;color:#8b94a7!important;margin:0 0 9px!important}.welcome h1,.workhead h1{font-size:28px;margin:0 0 6px;letter-spacing:-.5px}.welcome p,.workhead p{color:var(--muted);font-size:13px;margin:0}.primary{border:0;background:var(--violet);color:#fff;border-radius:9px;padding:11px 17px;font-size:12px;font-weight:700;box-shadow:0 5px 13px #6c4ee32b;cursor:pointer}.primary:hover{background:#5b3bd3}.primary.saved{background:#129268}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0 20px}.stat{background:#fff;border:1px solid var(--line);border-radius:14px;min-height:132px;padding:20px;display:flex;align-items:center;gap:15px;box-shadow:0 3px 12px #21304d08;position:relative;overflow:hidden}.stat:before{content:"";position:absolute;left:0;inset-block:0;width:4px}.stat.purple:before{background:#7255df}.stat.gold:before{background:#e6ae38}.stat.green:before{background:#31a37b}.stat>i{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#f2efff;color:#6142dc;font-size:20px;font-style:normal}.stat.gold>i{background:#fff5dc;color:#bd8014}.stat.green>i{background:#e6f8f0;color:#168463}.stat>div:nth-child(2){display:grid;gap:4px}.stat span{font-size:11px;color:var(--muted)}.stat strong{font-size:25px}.stat small{font-size:10px;color:#9aa2b2}.stat small.up{color:#1aa878;font-weight:700}.stat small u{color:#9aa2b2;text-decoration:none;font-weight:400}.bars{margin-left:auto;display:flex;height:42px;align-items:flex-end;gap:4px}.bars b{width:4px;border-radius:3px;background:#d8d0fa}.bars b:nth-child(1){height:12px}.bars b:nth-child(2){height:18px}.bars b:nth-child(3){height:15px}.bars b:nth-child(4){height:29px}.bars b:nth-child(5){height:24px}.bars b:nth-child(6){height:38px;background:#7255df}.ring{margin-left:auto;width:59px;height:59px;border-radius:50%;background:conic-gradient(#e7ae34 93%,#f1f2f6 0);display:grid;place-items:center;position:relative}.ring:after{content:"";position:absolute;inset:6px;background:#fff;border-radius:50%}.ring b{z-index:1;font-size:11px;color:#76540f}.stat.click{cursor:pointer}.stat>button{margin-left:auto;border:0;background:#e9f8f2;width:32px;height:32px;border-radius:50%;color:#168463}.dash{display:grid;grid-template-columns:1.35fr 1fr;gap:20px}.panel,.workspace{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 3px 12px #21304d08}.panel{padding:21px}.panelhead{display:flex;justify-content:space-between}.panel h2,.rewardlayout h2,.approvals h2{font-size:15px;margin:0 0 5px}.panelhead p,.approvals p{font-size:10px;color:var(--muted);margin:0}.panelhead button{border:0;background:none;color:#6547da;font-size:10px;font-weight:700}.list{margin-top:15px}.studentrow{width:100%;display:flex;align-items:center;gap:11px;border:0;border-top:1px solid #f0f1f5;background:#fff;padding:11px 2px;text-align:left;cursor:pointer}.studentrow>span{display:grid;width:135px}.studentrow span strong{font-size:11px}.studentrow span small{font-size:9px;color:var(--muted);margin-top:3px}.studentrow>u,.categories u{height:5px;background:#eef0f4;border-radius:9px;overflow:hidden;flex:1;text-decoration:none}.studentrow>u i,.categories u i{display:block;height:100%;border-radius:9px}.studentrow>b{font-size:11px;width:32px}.studentrow mark{font-size:9px;color:#12a277;background:#e7f8f1;border-radius:8px;padding:3px 5px}.quick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:19px}.quick button{min-height:107px;border:1px solid var(--line);background:#fff;border-radius:11px;display:flex;flex-direction:column;align-items:flex-start;padding:14px;cursor:pointer}.quick i{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;margin-bottom:10px;font-style:normal;font-weight:800}.q-purple{background:#efeaff;color:#6547da}.q-gold{background:#fff3d9;color:#b6790d}.q-blue{background:#e5f3ff;color:#2479b9}.q-green{background:#e1f7ee;color:#168463}.quick b{font-size:11px}.quick small{font-size:9px;color:var(--muted);margin-top:4px}.workspace{padding:28px}.workhead{align-items:center;margin-bottom:27px}.key{display:flex;gap:21px;background:#f8f9fb;border-radius:10px;padding:11px 14px;margin-bottom:13px}.key span{font-size:10px;color:#687286}.key span:nth-child(1){color:#6849df}.key span:nth-child(2){color:#158f68}.key span:nth-child(3){color:#bc7e12}.key span:nth-child(4){color:#bd3c48}.table{overflow:auto}.row{display:grid;grid-template-columns:minmax(170px,1.6fr) repeat(4,minmax(125px,1fr)) 70px;align-items:center;min-width:800px;border-bottom:1px solid #eff0f4;padding:10px 5px;gap:9px}.tablehead{color:#8490a5;font-size:9px;font-weight:800;text-transform:uppercase}.tablehead span:not(:first-child){text-align:center}.person{display:flex;align-items:center;gap:10px;font-size:11px}.row select{width:100%;border:1px solid #e5e7ed;border-radius:8px;background:#fff;padding:8px;color:#536076;font-size:10px}.row select.good{background:#eaf9f3;color:#087a57}.row select.excellent{background:#f0edff;color:#5e3dce}.row select.average{background:#fff7e6;color:#9d6a0d}.row select.needs-work,.row select.needs-improvement{background:#fff0f1;color:#bd3c48}.today{text-align:center;font-size:11px;color:#168463}.picker{border:1px solid var(--line);border-radius:8px;padding:10px;background:white}.studenthero{background:linear-gradient(115deg,#f0edff,#f9f8ff);border-radius:14px;padding:23px;display:flex;align-items:center;gap:18px}.studenthero .huge{width:65px;height:65px;border-radius:50%;display:grid;place-items:center;color:#fff;font-style:normal;font-weight:800}.studenthero h2{margin:0 0 5px;font-size:20px}.studenthero p{margin:0;color:var(--muted);font-size:11px}.balance{margin-left:auto;border:0;background:#fff;border-radius:12px;padding:14px 19px;min-width:165px;text-align:left;display:grid;gap:4px;box-shadow:0 4px 14px #39276a12;cursor:pointer}.balance span,.balance small{font-size:9px;color:var(--muted)}.balance b{font-size:18px;color:var(--violet)}.categories{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:18px}.categories article{border:1px solid var(--line);border-radius:12px;padding:17px;display:grid;gap:9px}.categories span{font-size:10px;color:var(--muted)}.categories b{font-size:21px}.categories u{height:7px}.categories small{font-size:9px;color:#97a0b2}.rewardlayout{display:grid;grid-template-columns:1fr 350px;gap:26px}.rewardgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:14px}.rewardgrid article{border:1px solid var(--line);border-radius:12px;padding:14px}.rewardgrid .rewardicon{height:75px;border-radius:9px;display:grid;place-items:center;font-size:34px}.rewardgrid h3{font-size:12px;margin:12px 0 5px}.rewardgrid p{font-size:10px;color:#7c8495;margin:0 0 10px}.rewardgrid button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:7px 9px;font-size:9px}.approvals{border-left:1px solid var(--line);padding-left:24px}.approvalhead{display:flex;justify-content:space-between}.approvalhead>span{display:block}.approvalhead>b{background:#fff0e8;color:#ce672c;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;font-size:10px}.request{display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);padding:14px 0;margin-top:8px}.request span{display:grid;flex:1}.request strong{font-size:10px}.request small{font-size:8px;color:var(--muted);margin-top:4px}.request button{width:29px;height:29px;border-radius:8px}.deny{border:1px solid #f3cfd2;background:#fff5f5;color:#c83f4d}.approve{border:0;background:#ddf6eb;color:#14845f}.settings{max-width:780px}.settings article{border-top:1px solid var(--line);padding:20px 0;display:grid;gap:13px}.settings h2{font-size:14px;margin:0}.settings label{font-size:11px;display:flex;align-items:center;justify-content:space-between;color:#556075}.settings input[type=number]{width:70px;padding:8px;border:1px solid var(--line);border-radius:7px}.toast{position:fixed;right:26px;bottom:26px;background:#17233c;color:#fff;border-radius:10px;padding:13px 17px;font-size:11px;box-shadow:0 12px 28px #17233c44;z-index:20}
@media(max-width:950px){.side{width:78px;padding:22px 10px}.brand span,.school,.side nav button:not(.active) span{display:none}.brand{justify-content:center}.side nav button{justify-content:center}.sidefoot{display:none}.content{margin-left:78px}.dash{grid-template-columns:1fr}.rewardlayout{grid-template-columns:1fr}.approvals{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.categories{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.side{display:none}.content{margin-left:0}.content>header{justify-content:space-between;padding:0 16px}.mobile-brand{display:block;border:0;background:none;color:#5e43d4;font-weight:800}.me{position:static}.date span:nth-child(3){display:none}.page{padding:25px 15px 80px}.welcome,.workhead{align-items:flex-start;gap:16px}.welcome h1,.workhead h1{font-size:23px}.stats{grid-template-columns:1fr}.dash{display:block}.panel+.panel{margin-top:15px}.workspace{padding:18px}.categories{grid-template-columns:1fr 1fr}.studenthero{align-items:flex-start;flex-wrap:wrap}.balance{margin-left:0;width:100%}.rewardgrid{grid-template-columns:1fr 1fr}.key{overflow:auto}}

.loadscreen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:10px;background:var(--bg);text-align:center}.loadscreen>b{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:var(--violet);color:#fff;font-size:25px}.loadscreen h1{font-size:22px;margin:8px 0}.loadscreen p{max-width:430px;color:var(--muted)}.errorbox>b{background:#d84e5c}.side nav button mark{margin-left:auto;display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:#e95f68;color:#fff;font-size:9px}.classpick{position:relative}.classpick select{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.me small{font-size:10px;color:var(--muted)}.primary:disabled{opacity:.55;cursor:not-allowed}.row select.poor{background:#fff0f1;color:#bd3c48}.empty{min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted)}.empty i{font-style:normal;font-size:32px;color:#a895ed}.empty b{font-size:13px;color:var(--ink);margin:10px 0 3px}.empty p{font-size:10px;max-width:280px;line-height:1.5}.empty.compact{min-height:180px}.adjustbar{display:flex;align-items:center;gap:9px;margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:12px}.adjustbar>div{display:grid;flex:1}.adjustbar b{font-size:11px}.adjustbar small{font-size:9px;color:var(--muted);margin-top:3px}.adjustbar button{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 10px;font-size:10px;cursor:pointer}.adjustbar button:hover{border-color:#b9a8ef;color:#5b3fd1}.rolepill{font-size:10px;font-weight:700;color:#087a57;background:#e7f8f1;border-radius:9px;padding:8px 11px}.adminstats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.adminstats article{border:1px solid var(--line);border-radius:11px;padding:16px;display:grid;gap:7px}.adminstats span{font-size:10px;color:var(--muted)}.adminstats b{font-size:23px}.admincolumns{display:grid;grid-template-columns:1.2fr .8fr;gap:26px}.admincolumns>section{border-top:1px solid var(--line);padding-top:18px}.admincolumns h2{font-size:14px;margin:0 0 14px}.teacherlist>div{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:11px 0}.teacherlist em{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eeeaff;color:#6042d3;font-size:10px;font-style:normal;font-weight:800}.teacherlist span{display:grid}.teacherlist span b{font-size:11px}.teacherlist span small{font-size:9px;color:var(--muted);margin-top:3px}.teacherlist mark{font-size:8px;text-transform:uppercase;background:#e8f7f1;color:#168463;padding:4px 7px;border-radius:8px}.teacherlist p{grid-column:2/4;margin:0;font-size:9px;color:#727d90}.adminform{display:grid;gap:11px}.adminform label{display:grid;gap:5px;font-size:9px;color:var(--muted)}.adminform input,.adminform select,.inlineform input{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff;color:var(--ink);font-size:11px}.adminform .primary{justify-self:start}.formnote{font-size:9px;line-height:1.5;color:#7d8799;background:#f8f8fb;border-radius:8px;padding:10px;margin:0}.secondhead{margin-top:24px!important}.inlineform{display:flex;gap:8px}.inlineform button{border:0;background:#eae6fb;color:#5b3fd1;border-radius:8px;padding:0 12px;font-size:10px;font-weight:700}.settings label b{font-size:11px}.settings input[type=checkbox]{accent-color:var(--violet)}
@media(max-width:800px){.admincolumns{grid-template-columns:1fr}.adjustbar{align-items:stretch;flex-wrap:wrap}.adjustbar>div{flex-basis:100%}.me small{display:none}}
.adminform textarea,.settings input{border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff;color:var(--ink);font:inherit}.adminform fieldset{border:1px solid var(--line);border-radius:9px;padding:10px;display:grid;gap:8px}.adminform legend{font-size:9px;color:var(--muted)}.check{justify-content:flex-start!important;display:flex!important;flex-direction:row!important;gap:7px!important}.commentlist{display:grid;gap:10px}.commentlist article,.purchasehistory article{border:1px solid var(--line);border-radius:11px;padding:14px}.commentlist p{margin:0 0 8px;font-size:12px;line-height:1.5}.commentlist small{color:var(--muted);font-size:9px}.rewardform{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}.linkbutton{text-decoration:none}.formerror{color:#b72e3b!important;background:#fff0f1;padding:9px;border-radius:8px;font-size:11px!important}.studentlogin{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#f6f3ff,#edf9f5)}.studentlogin>section{width:min(410px,calc(100% - 30px));background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:0 18px 60px #28335218}.studentlogin h1{font-size:30px;margin:24px 0 7px}.studentlogin>section>p{color:var(--muted);font-size:12px;line-height:1.5}.studentlogin form{margin:25px 0 18px}.studentlogin a{font-size:10px;color:var(--violet)}.studentportal{min-height:100vh}.studentportal>header{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 5vw;gap:30px}.studentportal>header nav{display:flex;gap:6px;margin:auto}.studentportal>header button{border:0;background:none;border-radius:8px;padding:9px 13px;color:var(--muted);cursor:pointer}.studentportal>header nav button.active{background:#f0edff;color:var(--violet);font-weight:700}.studentmain{max-width:980px;margin:auto;padding:42px 22px 70px}.studentwelcome{display:flex;align-items:center;gap:17px;margin-bottom:25px}.studentwelcome>em{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;color:white;font-style:normal;font-weight:800}.studentwelcome h1{margin:0;font-size:28px}.studentwelcome p{margin:3px 0;color:var(--muted);font-size:12px}.student-score{background:linear-gradient(120deg,#6849df,#8b73ec);color:#fff;border-radius:17px;padding:30px;display:flex;align-items:baseline;gap:15px}.student-score strong{font-size:48px}.student-score span{font-size:13px}.studentrewards{grid-template-columns:repeat(3,1fr);margin-bottom:30px}.studentrewards button:disabled{opacity:.45}.purchasehistory{display:grid;gap:8px}.purchasehistory article{display:flex;gap:12px;align-items:center;background:#fff}.purchasehistory span{margin-left:auto;color:var(--muted);font-size:11px}.purchasehistory mark{border-radius:10px;padding:5px 8px;font-size:9px;background:#eeeaff;color:#5b3fd1}
@media(max-width:680px){.studentportal>header{padding:0 12px;gap:8px}.studentportal>header .brand span{display:none}.studentportal>header nav{gap:0}.studentportal>header button{padding:8px}.studentrewards{grid-template-columns:1fr 1fr}}
.portalshortcut{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);border:1px solid #dfd8fb;background:#f7f5ff;border-radius:11px;padding:10px;margin-bottom:10px}.portalshortcut>b{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--violet);color:white}.portalshortcut span{display:grid;flex:1}.portalshortcut strong{font-size:11px}.portalshortcut small{font-size:8px;color:var(--muted);margin-top:2px}.portalshortcut i{font-style:normal;color:var(--violet)}.erroractions{display:flex;gap:10px}.studententry{background:#168463;text-decoration:none}.categorylayout{display:grid;grid-template-columns:1fr 310px;gap:26px}.categoryhead{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.categoryhead h2,.categoryeditor h2{font-size:15px;margin:0}.categoryhead small,.categoryeditor>p{font-size:9px;color:var(--muted)}.categorymanager{display:grid;gap:9px}.categorymanager article{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:11px;padding:12px}.categorymanager article.retired{opacity:.6;background:#f7f7f9}.categorymanager article>em{width:31px;height:31px;border-radius:9px;background:#eeeaff;color:var(--violet);display:grid;place-items:center;font-style:normal;font-weight:800;font-size:11px}.categorymanager article>div:nth-child(2){display:grid;flex:1}.categorymanager article b{font-size:11px}.categorymanager article small{font-size:9px;color:var(--muted);margin-top:3px}.catbuttons{display:flex;gap:5px}.catbuttons button,.formbuttons button:not(.primary){border:1px solid var(--line);background:#fff;border-radius:7px;padding:7px 9px;font-size:9px;cursor:pointer}.catbuttons button:disabled{opacity:.3}.catbuttons .retire{color:#b72e3b}.catbuttons .restore{color:#087a57}.categoryeditor{border-left:1px solid var(--line);padding-left:24px}.categoryeditor>p{line-height:1.5;margin:6px 0 18px}.categoryeditor label small{font-size:8px;color:var(--muted)}.formbuttons{display:flex;gap:8px;align-items:center}.dynamicrow{display:grid}.balance{text-decoration:none;color:var(--ink)}
@media(max-width:900px){.categorylayout{grid-template-columns:1fr}.categoryeditor{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.catbuttons{flex-wrap:wrap}}
.studentaccounts>div{grid-template-columns:36px 1fr auto}.studentaccounts button{border:1px solid #d8cff7;background:#f5f2ff;color:var(--violet);border-radius:7px;padding:6px 8px;font-size:9px;cursor:pointer}.loginsetup{background:#f7f5ff;border:1px solid #dfd8fb;border-radius:12px;padding:15px;margin-bottom:22px}.loginsetup>p{font-size:9px;color:var(--muted);line-height:1.5;margin:0 0 12px}
.today{display:grid;gap:2px}.today small{font-size:8px;color:var(--muted)}.studentbalance{margin-left:auto;min-width:260px;border:0;border-radius:17px;padding:19px 24px;background:linear-gradient(135deg,#6849df,#8c73f0);color:#fff;box-shadow:0 14px 32px #6849df42;display:grid;text-align:left;cursor:pointer}.studentbalance span{font-size:9px;letter-spacing:1.3px;opacity:.82}.studentbalance strong{font-size:44px;line-height:1;margin:7px 0 2px}.studentbalance b{font-size:11px}.studentbalance small{font-size:9px;margin-top:10px;opacity:.8}.studentbalance:hover{transform:translateY(-1px)}
@media(max-width:680px){.studentbalance{width:100%;margin-left:0}.studentwelcome{flex-wrap:wrap}}
.dailyhistory{margin-top:30px}.dailyhistory-title h2{font-size:20px;margin:0 0 4px}.dailyhistory-title p{font-size:12px;color:var(--muted);margin:0 0 13px}.historytable{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.historyrow{display:grid;grid-template-columns:1.2fr repeat(3,1fr) .8fr;align-items:center;gap:10px;padding:13px 16px;border-top:1px solid var(--line)}.historyhead{border-top:0;background:#f8f9fb;color:#7c879a;font-size:10px;font-weight:800;text-transform:uppercase}.historyrow>span:not(:first-child){text-align:center}.historyrow>strong{font-size:13px}.ratingpill{display:inline-block;border-radius:999px;padding:6px 9px;font-size:11px}.ratingpill.excellent{background:#f0edff;color:#5e3dce}.ratingpill.good{background:#eaf9f3;color:#087a57}.ratingpill.fair{background:#fff7e6;color:#9d6a0d}.ratingpill.needs-improvement{background:#fff0f1;color:#bd3c48}.historypoints{font-weight:800;color:var(--violet);font-size:13px}.historyrow.absent{grid-template-columns:1.2fr 3fr .8fr;background:#fff8f8}.absentlabel{color:#bd3c48;background:#fff0f1;border-radius:999px;padding:7px 11px;justify-self:start;font-size:11px}.nohistory{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;color:var(--muted);font-size:13px}
@media(max-width:680px){.historyhead{display:none}.historytable{border:0;background:transparent;display:grid;gap:10px;overflow:visible}.historyrow{grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px;gap:13px}.historyrow>strong{grid-column:1/-1;font-size:15px;padding-bottom:9px;border-bottom:1px solid var(--line)}.historyrow>span{display:grid!important;gap:5px;text-align:left!important}.historyrow>span:before{content:attr(data-label);font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:800}.historyrow.absent{grid-template-columns:1fr 1fr}.historyrow.absent .absentlabel{align-self:end}.historyrow.absent .historypoints{display:grid!important}.historypoints{justify-self:stretch}.ratingpill{justify-self:start}.dailyhistory{margin-top:24px}}
.reportpage{min-height:100vh;padding:32px;max-width:1200px;margin:auto}.reporttop{display:flex;align-items:center;gap:24px;margin-bottom:20px}.reporttop>a{color:var(--violet);font-size:11px;text-decoration:none}.reporttop h1{margin:0;font-size:26px}.reporttop p{margin:4px 0 0;color:var(--muted);font-size:11px}.reportcontrols{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-wrap:wrap;gap:12px;align-items:end}.reportcontrols label{display:grid;gap:5px;font-size:9px;color:var(--muted)}.reportcontrols input,.reportcontrols select{border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff;min-width:145px}.reportcheck{align-self:center}.rangechip{background:#f0edff;color:var(--violet);border-radius:9px;padding:9px 11px;font-size:9px}.exportbuttons{display:flex;justify-content:flex-end;gap:8px;margin:18px 0}.exportbuttons button{border:0;border-radius:8px;padding:10px 14px;background:var(--violet);color:white;font-weight:700;cursor:pointer}.printreport{background:#fff;border:1px solid var(--line);border-radius:14px;padding:35px}.printhead{display:flex;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:18px}.printhead p{font-size:9px;letter-spacing:1.4px;margin:0;color:var(--violet);font-weight:800}.printhead h1{margin:7px 0;font-size:24px}.printhead span,.printhead strong{display:block;font-size:10px;color:var(--muted);margin-top:3px}.printhead>b{font-size:30px;color:var(--violet)}.studentreport{padding:24px 0;border-bottom:1px solid var(--line);break-inside:avoid}.studentreport:last-child{border-bottom:0}.reportsummary{display:flex;align-items:center;gap:20px}.reportsummary h2{margin-right:auto}.reportsummary span{font-size:9px;color:var(--muted);display:grid}.reportsummary span b{font-size:18px;color:var(--ink)}.studentreport h3{font-size:12px;margin:20px 0 8px}.studentreport table{width:100%;border-collapse:collapse;font-size:9px}.studentreport th,.studentreport td{border:1px solid #ddd;padding:7px;text-align:left}.studentreport th{background:#f5f5f8}.studentreport li{font-size:10px;margin:5px 0}.studentreport li small{color:var(--muted)}
@media(max-width:700px){.reportpage{padding:18px}.reportcontrols>*{width:100%}.reportcontrols input,.reportcontrols select{width:100%}.reportsummary{align-items:flex-start;flex-wrap:wrap}.reportsummary h2{width:100%}.printreport{padding:18px}}
@media print{body{background:#fff}.no-print{display:none!important}.reportpage{padding:0;max-width:none}.printreport{border:0;border-radius:0;padding:0}.studentreport{page-break-inside:avoid}.studentreport table{font-size:8pt}}

.datepicker{display:flex!important;align-items:center;gap:8px!important;background:#f6f3ff;border:1px solid #ded6fb;border-radius:12px;padding:5px 8px!important}.datepicker>button{width:32px;height:32px;border:0;border-radius:8px;background:#fff;color:var(--violet);font-size:20px;cursor:pointer}.datepicker>button:hover{background:#eae5ff}.datepicker label{display:grid;grid-template-columns:auto auto;align-items:center;gap:1px 8px;cursor:pointer}.datepicker label b{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:var(--violet)}.datepicker label span{font-size:10px;color:var(--muted)}.datepicker input{grid-row:1/3;grid-column:2;border:1px solid #d9d1f5;border-radius:7px;background:#fff;color:var(--ink);padding:6px;font:inherit;cursor:pointer}.savegroup{display:grid;justify-items:end;gap:8px}.savedday{font-size:9px;font-weight:700;color:#087a57;background:#e7f8f1;border-radius:8px;padding:7px 10px}.pointmanager{margin-top:16px;border:1px solid var(--line);border-radius:14px;padding:18px;background:#fbfbfd}.pointmanagerhead{display:flex;align-items:center;gap:20px;margin-bottom:15px}.pointmanagerhead>div:first-child{flex:1}.pointmanager h2,.pointmanager h3{margin:0}.pointmanager h2{font-size:14px}.pointmanager h3{font-size:12px}.pointmanager p{font-size:9px;color:var(--muted);line-height:1.5;margin:5px 0 12px}.quickadd{display:flex;align-items:center;gap:6px}.quickadd span{font-size:9px;color:var(--muted)}.quickadd button{border:1px solid #d8cff7;background:#fff;color:var(--violet);border-radius:7px;padding:7px 10px;cursor:pointer}.pointmanagergrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pointmanagergrid>form,.resetbox{border:1px solid var(--line);border-radius:11px;background:#fff;padding:15px}.pointmanagergrid label{display:grid;gap:5px;font-size:9px;color:var(--muted);margin-top:9px}.pointmanagergrid input{border:1px solid var(--line);border-radius:8px;padding:9px;font:inherit}.pointmanagergrid form label:first-of-type{max-width:130px}.pointmanagergrid button{border-radius:8px;padding:9px 12px;font-size:10px;font-weight:700;cursor:pointer;margin-top:11px}.pointmanagergrid button:disabled{opacity:.45;cursor:not-allowed}.danger{border:0;background:#c63d4b;color:#fff}.danger-outline{border:1px solid #e1aeb4;background:#fff;color:#ad2e3b}.resetbox>div{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:800px){.pointmanagergrid{grid-template-columns:1fr}.pointmanagerhead{align-items:flex-start;flex-direction:column}.datepicker label span{display:none}.datepicker label{grid-template-columns:auto}.datepicker input{grid-row:auto;grid-column:auto}.savegroup{justify-items:start}.workhead{flex-wrap:wrap}}
.datepicker label span:last-child{font-size:10px}
.workcontrols{display:flex;align-items:flex-end;gap:12px}.pagepicker{display:grid;gap:5px;font-size:9px;color:var(--muted)}.pagepicker select{min-width:155px;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff;color:var(--ink)}.studentfilters{align-items:flex-end}.key span{white-space:nowrap}@media(max-width:800px){.workcontrols{width:100%;align-items:stretch;flex-direction:column}.pagepicker select{width:100%}}
/* Readability pass for comfortable 100% browser zoom */
body{font-size:16px;line-height:1.5}
.side nav button{font-size:15px;padding:12px}.school{font-size:11px}.classpick strong,.profile strong{font-size:13px}.classpick small,.profile small{font-size:11px}
.date{font-size:14px}.datepicker label b{font-size:11px}.datepicker label span:last-child,.me small{font-size:12px}
.page{padding-top:38px}.welcome h1,.workhead h1{font-size:30px}.welcome p,.workhead p{font-size:15px;line-height:1.55}.eyebrow{font-size:12px!important}.primary{font-size:14px;padding:12px 18px}
.stat span{font-size:13px}.stat strong{font-size:29px}.stat small{font-size:12px}.panel h2,.rewardlayout h2,.approvals h2{font-size:18px}.panelhead p,.approvals p{font-size:12px}.panelhead button{font-size:12px}
.studentrow span strong{font-size:14px}.studentrow span small{font-size:11px}.studentrow>b{font-size:13px}.quick b{font-size:13px}.quick small{font-size:11px;line-height:1.45}
.key{flex-wrap:wrap}.key span{font-size:12px}.tablehead{font-size:11px}.person{font-size:13px}.row select{font-size:13px;padding:10px}.today{font-size:13px}.today small{font-size:10px}
.pagepicker{font-size:12px}.pagepicker select,.picker{font-size:14px;line-height:1.3}.savedday{font-size:11px}.empty b{font-size:15px}.empty p{font-size:12px}
.studenthero h2{font-size:24px}.studenthero p{font-size:14px}.balance span,.balance small{font-size:11px}.balance b{font-size:22px}.categories span{font-size:12px}.categories b{font-size:23px}.categories small{font-size:11px}
.pointmanager h2{font-size:18px}.pointmanager h3{font-size:15px}.pointmanager p{font-size:12px}.pointmanagergrid label,.quickadd span{font-size:12px}.pointmanagergrid input{font-size:14px}.pointmanagergrid button,.quickadd button{font-size:12px}
.admincolumns h2,.settings h2,.categoryhead h2,.categoryeditor h2{font-size:17px}.adminform label,.settings label{font-size:13px}.adminform input,.adminform select,.adminform textarea,.inlineform input{font-size:14px;line-height:1.4}.formnote,.categoryhead small,.categoryeditor>p,.categoryeditor label small{font-size:11px}.teacherlist span b{font-size:13px}.teacherlist span small,.teacherlist p{font-size:11px}.teacherlist mark,.studentaccounts button{font-size:10px}
.rewardgrid h3{font-size:14px}.rewardgrid p{font-size:12px}.request strong{font-size:13px}.request small{font-size:11px}.commentlist p{font-size:14px}.commentlist small{font-size:11px}
.reporttop>a{font-size:13px}.reporttop h1{font-size:30px}.reporttop p{font-size:13px}.reportcontrols label{font-size:12px}.reportcontrols input,.reportcontrols select{font-size:14px}.rangechip{font-size:11px}.printhead p{font-size:11px}.printhead span,.printhead strong{font-size:12px}.reportsummary span{font-size:11px}.studentreport h3{font-size:14px}.studentreport table{font-size:11px}.studentreport th,.studentreport td{padding:9px}.studentreport li{font-size:12px}
.studentportal>header button{font-size:14px}.studentwelcome p{font-size:14px}.student-score span{font-size:15px}.purchasehistory article{font-size:14px}.purchasehistory span{font-size:12px}
@media(max-width:950px){.side nav button{font-size:14px}.page{padding-inline:24px}.workhead{gap:18px}.workcontrols{flex-wrap:wrap}.studentfilters{min-width:190px}}
@media(max-width:680px){body{font-size:15px}.content>header{height:auto;min-height:68px;gap:8px;flex-wrap:wrap;padding-block:8px}.page{padding:24px 14px 72px}.workspace{padding:18px}.welcome h1,.workhead h1{font-size:25px}.welcome p,.workhead p{font-size:14px}.workcontrols{width:100%}.key{gap:10px 16px}.row{min-width:720px}.categories,.rewardgrid,.studentrewards{grid-template-columns:1fr}.reportpage{padding:14px}.printreport{padding:14px;overflow-x:auto}.studentreport table{min-width:680px}.studentportal>header{height:auto;min-height:70px;flex-wrap:wrap;padding-block:10px}.studentportal>header nav{order:3;width:100%;overflow-x:auto}.studentportal>header button{white-space:nowrap}.studentmain{padding:28px 14px 60px}}
.manualsetup{margin-top:22px}.bulktools{display:grid;gap:24px}.bulksetup,.bulkdelete{border-top:1px solid var(--line);padding-top:22px}.bulkhead{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.bulkhead h2{font-size:21px;margin:0 0 5px}.bulkhead p:not(.eyebrow){font-size:13px;color:var(--muted);margin:0;line-height:1.5}.bulkhead>span{font-size:12px;font-weight:700;color:var(--violet);background:#f0edff;border-radius:9px;padding:8px 11px;white-space:nowrap}.permissionnote,.historynote{font-size:12px;line-height:1.5;border-radius:9px;padding:11px 13px}.permissionnote{background:#fff8e8;color:#76540f}.historynote{background:#edf8f4;color:#12664e;margin:14px 0 0}.importcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.importcards article{border:1px solid var(--line);border-radius:12px;padding:15px;display:grid;gap:12px;min-width:0}.importcards h3{font-size:15px;margin:0 0 4px}.importcards p{font-size:11px;line-height:1.5;color:var(--muted);margin:0}.templatebuttons{display:flex;gap:7px;flex-wrap:wrap}.templatebuttons button,.bulkbuttons>button:not(.primary),.deletecontrols>button{border:1px solid #d8cff7;background:#f7f5ff;color:var(--violet);border-radius:8px;padding:8px 10px;font-size:11px;font-weight:700;cursor:pointer}.filepick{position:relative;border:1px dashed #bcb1e5;background:#faf9ff;border-radius:9px;padding:11px;cursor:pointer;overflow:hidden}.filepick input{position:absolute;inset:0;opacity:0;cursor:pointer}.filepick span{font-size:12px;color:#5f4ac6;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bulkbuttons{display:flex;justify-content:flex-end;gap:9px;margin-top:15px}.bulkbuttons button{min-height:40px}.bulkbuttons button:disabled{opacity:.45;cursor:not-allowed}.importpreview{margin-top:18px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.previewstatus{padding:12px 14px;display:flex;justify-content:space-between;gap:12px;font-size:12px}.previewstatus.valid{background:#eaf8f2;color:#116a4f}.previewstatus.invalid{background:#fff0f1;color:#9e2c39}.previewtable{overflow:auto}.previewtable table{width:100%;min-width:780px;border-collapse:collapse;font-size:12px}.previewtable th,.previewtable td{padding:10px 12px;border-top:1px solid var(--line);text-align:left;vertical-align:top}.previewtable th{background:#fafafd;color:#6f798d;font-size:11px}.previewtable td:last-child span{display:block;color:#b12f3d;margin-bottom:4px}.previewtable td:last-child strong{color:#13825f}.previewtable tr.rowerror{background:#fffafb}.deletecontrols{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:14px}.deletecontrols label,.deletefooter label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.deletecontrols select,.deletefooter input{border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;color:var(--ink);font-size:14px}.deletecontrols span{font-size:12px;color:var(--muted);padding:9px}.bulkroster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bulkroster>label{border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;align-items:center;gap:9px;cursor:pointer;min-width:0}.bulkroster input{accent-color:var(--violet)}.bulkroster em{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#fff;font-style:normal;font-size:10px;font-weight:800;flex:none}.bulkroster label span{display:grid;min-width:0}.bulkroster label b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bulkroster label small{font-size:10px;color:var(--muted)}.bulkroster>p{font-size:12px;color:var(--muted)}.deletefooter{display:flex;align-items:end;gap:12px;margin-top:15px}.deletefooter label{flex:1}.deletefooter .danger{min-height:42px;border-radius:8px;padding:10px 14px;font-size:12px;font-weight:700}.deletefooter .danger:disabled{opacity:.45}.bulkdelete .eyebrow,.bulksetup .eyebrow{margin-bottom:7px!important}
@media(max-width:900px){.importcards{grid-template-columns:1fr}.bulkroster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.bulkhead,.previewstatus,.deletefooter{display:grid}.bulkhead>span{justify-self:start}.bulkbuttons{justify-content:stretch;display:grid}.bulkbuttons button{width:100%}.bulkroster{grid-template-columns:1fr}.deletefooter .danger{width:100%}}
.unsavedday{font-size:11px;font-weight:700;color:#875d0d;background:#fff6df;border-radius:8px;padding:7px 10px}.carrynotice{display:flex;align-items:center;gap:14px;background:#f5f2ff;border:1px solid #ddd5fb;color:#5943bb;border-radius:10px;padding:11px 14px;margin-bottom:13px}.carrynotice b{font-size:12px;white-space:nowrap}.carrynotice span{font-size:12px;line-height:1.45;color:#6f648f}.person>span{display:grid;min-width:0}.carrysource{font-size:10px;color:#7a6ca5;margin-top:2px;font-weight:600}.row:has(.carrysource){background:#fdfcff}@media(max-width:760px){.carrynotice{align-items:flex-start;display:grid;gap:3px}.carrynotice b{white-space:normal}}
.attendance{border:1px solid #b9dfd1;border-radius:999px;padding:8px 10px;font-size:11px;font-weight:800;cursor:pointer;background:#eaf8f2;color:#117455}.attendance.absent{border-color:#e4c7cb;background:#fff0f1;color:#a43743}.absentrow{background:#f6f7f9!important;color:#8992a2}.absentrow select:disabled{opacity:.48;cursor:not-allowed;background:#eceff3!important;color:#8992a2!important}.absentresult{color:#a43743}.today small{display:block;margin-top:3px;font-size:9px;font-weight:600;line-height:1.25}.classmanagement{margin-top:22px;border-top:1px solid var(--line);padding-top:20px}.classmanagement>p,.archivedclasses p{font-size:12px;color:var(--muted);line-height:1.5}.classcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.classcards article,.archivedclasses li{border:1px solid var(--line);border-radius:10px;padding:12px;display:flex;align-items:center;gap:12px}.classcards article span,.archivedclasses li span{display:grid;flex:1}.classcards article small,.archivedclasses li small{color:var(--muted);font-size:10px;margin-top:3px}.classcards article button{border:1px solid #e4c7cb;background:#fff6f6;color:#a43743;border-radius:8px;padding:8px 10px;font-size:11px;font-weight:700;cursor:pointer}.archivedclasses{margin-top:16px}.archivedclasses ul{list-style:none;padding:0;display:grid;gap:8px}.archivedclasses li{background:#f7f7f9}.archivedclasses li:before{content:"Archive";font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:#687286;background:#e9ebef;border-radius:6px;padding:4px 6px}@media(max-width:760px){.classcards{grid-template-columns:1fr}.attendance{width:100%}}
.archivedclasses>span{border:1px solid var(--line);border-radius:10px;padding:12px;display:flex;align-items:center;gap:12px;background:#f7f7f9;margin-top:8px}.archivedclasses>span>span{display:grid;flex:1}.archivedclasses>span small{color:var(--muted);font-size:10px;margin-top:3px}.archivedclasses>span button{border:1px solid #b9dfd1;background:#eaf8f2;color:#117455;border-radius:8px;padding:8px 10px;font-size:11px;font-weight:700;cursor:pointer}.archivedclasses>span button:disabled{opacity:.55;cursor:not-allowed}
.rewardactions{display:flex;gap:7px}.rewardactions button{flex:1;cursor:pointer;font-weight:700;font-size:11px}.rewardactions .rewarddelete{border-color:#f0cdd1;background:#fff6f6;color:#a43743}.rewardform .formbuttons{display:flex;gap:8px;align-items:center}.rewardform .formbuttons>button:not(.primary){border:1px solid var(--line);background:#fff;color:#5b6475;border-radius:9px;padding:11px 17px;font-size:12px;font-weight:700;cursor:pointer}
.quick .access-toggle{grid-column:1/-1}.quick .access-toggle.enabled{background:#e7f8f1;border-color:#91d5bd}.quick .access-toggle.enabled i{background:#168463;color:#fff}.quick .access-toggle.enabled b{color:#0d7152}.quick .access-toggle.blocked{background:#fff0f1;border-color:#e3aeb5}.quick .access-toggle.blocked i{background:#c33d4b;color:#fff}.quick .access-toggle.blocked b{color:#a52c39}.studentblocked{min-height:100vh;display:grid;place-items:center;background:#f7f7fa;padding:24px;text-align:center}.studentblocked section{max-width:620px}.studentblocked i{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;margin:0 auto 24px;background:#fff0f1;color:#c33d4b;font-size:38px;font-style:normal}.studentblocked h1{font-size:34px;line-height:1.15;margin:0 0 14px}.studentblocked p{font-size:17px;color:var(--muted);margin:0}


.hidden{display:none!important}
button,input,select,textarea{font:inherit}
.side nav mark{margin-left:auto;background:#fff0e8;color:#c85f27;border-radius:999px;padding:3px 7px;font-size:9px}
.portalshortcut{display:flex;align-items:center;gap:9px;border:1px solid #dcd5fb;background:#faf9ff;border-radius:11px;padding:9px 10px;margin-bottom:9px;text-decoration:none;color:#17233c}
.portalshortcut>b{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(145deg,#8269f2,#5c3ddd);color:white}
.portalshortcut>span{display:grid;flex:1}.portalshortcut strong{font-size:10px}.portalshortcut small{font-size:8px;color:#788398;margin-top:2px}.portalshortcut>i{font-style:normal;color:#6849df}
.classpick select{width:22px;min-width:22px;border:0;background:transparent;color:transparent;cursor:pointer}.classpick select option{color:#17233c}
.signout{width:100%;border:1px solid var(--line);background:white;border-radius:9px;padding:9px;color:#657086;font-weight:700;cursor:pointer}
.datepicker{padding:4px 8px;gap:5px;background:#f6f3ff;border-color:#e0dafa}.datepicker>button{border:0;background:white;width:31px;height:31px;border-radius:8px;color:#6849df;font-size:21px;cursor:pointer}.datepicker label{display:grid;grid-template-columns:auto 118px;grid-template-rows:auto auto;align-items:center;column-gap:9px;position:relative}.datepicker label>b{text-transform:uppercase;color:#6849df;font-size:10px;letter-spacing:.8px}.datepicker label>input{grid-row:1/3;grid-column:2;border:1px solid #d9d3ef;border-radius:7px;background:white;padding:6px 7px;color:#17233c;font-size:12px}.datepicker label>span{font-size:10px}
.bright-login{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f7f8fb}.bright-login>section{width:min(430px,92vw);background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 16px 40px #25304b18}.bright-login h1{font-size:28px;margin:18px 0 8px}.bright-login>section>p:not(.school){color:#788398}.loginerror{color:#a43743!important;font-weight:700;font-size:12px}
.workcontrols{display:flex;align-items:flex-end;gap:14px}.pagepicker{display:grid;gap:5px;color:#788398;font-size:10px}.pagepicker select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px;min-width:145px}.savegroup{display:grid;justify-items:end;gap:7px}.savedday{font-size:11px;font-weight:700;color:#117455;background:#eaf8f2;border-radius:8px;padding:7px 10px}
.row .attendance-wrap{text-align:center}.row .today{font-weight:800}
.row .today strong{font-size:11px}.row .today small{font-size:9px;color:#788398}
.admincolumns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admincolumns>section{border:1px solid var(--line);border-radius:12px;padding:18px}.admincolumns h2{font-size:15px;margin:0 0 14px}.adminform{display:grid;gap:12px}.adminform label{display:grid;gap:5px;color:#788398;font-size:11px}.adminform input,.adminform select,.adminform textarea,.inlineform input{border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff}.adminform fieldset{border:1px solid var(--line);border-radius:9px;padding:10px}.adminform .check{display:flex;align-items:center;gap:7px}.inlineform{display:flex;gap:8px}.inlineform input{flex:1}.inlineform button,.adminform button,.category-card button,.people-card button{border:1px solid #dcd5fb;background:#f7f5ff;color:#6849df;border-radius:8px;padding:9px 11px;font-weight:700;cursor:pointer}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.category-card{border:1px solid var(--line);border-radius:12px;padding:16px}.category-card h3{font-size:14px;margin:0 0 5px}.category-card p{font-size:11px;color:#788398}.category-card .catdot{width:34px;height:34px;border-radius:10px;background:#f0edff;color:#6849df;display:grid;place-items:center;margin-bottom:10px;font-weight:900}
.commentlist{display:grid;gap:10px}.commentlist article{border:1px solid var(--line);border-radius:10px;padding:13px}.commentlist p{margin:0 0 7px;font-size:12px}.commentlist small{color:#788398;font-size:10px}
.historytable{overflow:auto}.historytable table{width:100%;border-collapse:collapse;min-width:760px}.historytable th,.historytable td{border-bottom:1px solid var(--line);padding:10px;text-align:left;font-size:11px}.historytable th{font-size:9px;text-transform:uppercase;color:#8490a5}
.reportbuttons{display:flex;gap:8px}.reportbuttons button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 12px;color:#5b6475;font-weight:700;cursor:pointer}
.people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.people-card{border:1px solid var(--line);border-radius:11px;padding:14px}.people-card h3{font-size:13px;margin:0 0 5px}.people-card p{font-size:10px;color:#788398;margin:0 0 10px}
.settings article{border:1px solid var(--line);border-radius:12px;padding:18px;margin-bottom:13px}.settings article h2{font-size:15px;margin:0 0 12px}.settings article label{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f0f1f5;padding:10px 0;font-size:11px}.settings article label:first-of-type{border-top:0}.settings input{border:1px solid var(--line);border-radius:8px;padding:8px}
.rewardlayout .approvals .request button{border:0;border-radius:7px;padding:7px 9px;font-weight:800;cursor:pointer}.request .deny{background:#fff0f1;color:#a43743}.request .approve{background:#eaf8f2;color:#117455}
.rewardclass{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}.rewardclass h2{font-size:15px}.classchips{display:flex;gap:8px;flex-wrap:wrap}.classchips span{background:#f5f2ff;color:#5943bb;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:700}
.empty{padding:28px;text-align:center;color:#788398}.empty h3{color:#17233c;margin:0 0 6px;font-size:15px}.empty p{margin:0;font-size:11px}
.toast{position:fixed;right:22px;bottom:22px;background:#17233c;color:#fff;padding:11px 15px;border-radius:9px;opacity:0;transform:translateY(8px);transition:.2s;z-index:100}.toast.show{opacity:1;transform:none}.toast.error{background:#a43743}
@media(max-width:900px){.admincolumns,.people-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.category-grid{grid-template-columns:1fr}.workcontrols{width:100%;flex-wrap:wrap}.savegroup{justify-items:start}}

.storecontrol{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:20px}.storecontrol>div{display:grid;gap:4px}.storecontrol strong{font-size:13px}.storecontrol small{font-size:10px;color:var(--muted)}.storecontrol.closed{background:#fff7f0;border-color:#f1d4b8}.storecontrol.open{background:#eef9f4;border-color:#bfe4d5}@media(max-width:680px){.storecontrol{align-items:stretch;flex-direction:column}}
.activity-queue{border:1px solid #ddd7fa;background:#fbfaff;border-radius:13px;padding:16px;margin-bottom:20px}.activity-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.activity-head h2{font-size:15px;margin:0 0 4px}.activity-head p{font-size:10px;color:var(--muted);margin:0}.activity-head-actions{display:flex;align-items:center;gap:9px}.activity-head-actions>b{background:#6849df;color:#fff;min-width:28px;height:28px;border-radius:999px;display:grid;place-items:center;font-size:10px}.activity-request{display:flex;align-items:center;gap:9px;border-top:1px solid #ebe8fa;padding:12px 0}.activity-request>em{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:11px;font-weight:800;font-style:normal;flex:0 0 auto}.activity-request>span{display:grid;flex:1;min-width:0}.activity-request strong{font-size:11px}.activity-request small{font-size:9px;color:var(--muted);margin-top:3px;line-height:1.35}.activity-request .activity-amount{font-size:13px;color:#117455;white-space:nowrap}.activity-request .activity-amount.deduct{color:#a43743}.activity-request>button{border:0;border-radius:8px;width:31px;height:31px;font-weight:900;cursor:pointer}.activity-request .deny{background:#fff0f1;color:#a43743}.activity-request .approve{background:#eaf8f2;color:#117455}@media(max-width:680px){.activity-head{align-items:flex-start;flex-direction:column}.activity-request{flex-wrap:wrap}.activity-request>span{flex-basis:calc(100% - 50px)}.activity-request .activity-amount{margin-left:43px}}
.daily-award-input{width:46px;border:1px solid #d9ddea;border-radius:6px;padding:3px 4px;text-align:center;font-size:10px;font-weight:800;color:#17233c;background:#fff}

/* ===== All Student Points Dashboard — 2026-09-24 ===== */
.points-dashboard{padding:26px}
.points-title{align-items:flex-start;gap:18px}
.points-title>div:first-child{max-width:790px}
.points-title .reportbuttons{flex-wrap:wrap;justify-content:flex-end}
.points-alert{display:flex;align-items:center;gap:12px;margin:-7px 0 18px;padding:12px 14px;border:1px solid #f0cf9a;background:#fff8e8;border-radius:11px;color:#76510a;font-size:11px}
.points-alert b{font-size:12px}.points-alert span{color:#8a6a2c}
.points-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.points-summary.single{grid-template-columns:minmax(260px,420px)}
.points-summary article{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fff;display:grid;gap:5px;min-width:0}
.points-summary article:before{content:"";display:block;width:30px;height:4px;border-radius:10px;background:#6849df;margin-bottom:3px}
.points-summary article.earned:before{background:#168463}.points-summary article.spent:before{background:#b84250}.points-summary article.pending:before{background:#d89423}
.points-summary span{font-size:10px;text-transform:uppercase;letter-spacing:.55px;color:var(--muted);font-weight:800}
.points-summary strong{font-size:25px;line-height:1.05}.points-summary small{font-size:9px;color:#9099aa;line-height:1.35}
.points-summary .earned strong{color:#117455}.points-summary .spent strong{color:#a43743}.points-summary .pending strong{color:#9a650b}
.points-section{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}
.points-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}
.points-section-head h2{font-size:16px;margin:0 0 4px}.points-section-head p{font-size:10px;color:var(--muted);margin:0;line-height:1.45}
.points-all-students{border:1px solid #dcd5fb;background:#fff;color:#6044cb;border-radius:9px;padding:8px 11px;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap}
.points-all-students.active{background:#f0edff;border-color:#cfc5f8}
.points-student-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.points-student-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:13px;text-align:left;cursor:pointer;display:grid;gap:10px;min-width:0;transition:border-color .15s,background .15s,transform .15s}
.points-student-card:hover{border-color:#cec5f5;background:#fcfbff}.points-student-card.selected{border-color:#8d76ea;background:#f7f5ff;box-shadow:inset 0 0 0 1px #8d76ea}.points-student-card.has-gap{border-left:4px solid #d89423}
.points-student-top{display:flex;align-items:center;gap:9px;min-width:0}.points-student-top>em,.points-person>em{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:10px;font-weight:900;font-style:normal;flex:0 0 auto}.points-student-top>span{display:grid;min-width:0}.points-student-top b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.points-student-top small{font-size:8px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.points-student-card>strong{font-size:22px;color:#4931b6}.points-account-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.points-account-totals>span{display:grid;gap:3px;padding:8px 9px;border-radius:9px;background:#f6f7fa}.points-account-totals small{font-size:8px;text-transform:uppercase;letter-spacing:.35px;color:#7f899b;font-weight:800}.points-account-totals b{font-size:14px;color:#3f4859}.points-account-totals .current{background:#f0edff}.points-account-totals .current b{color:#4931b6}.points-mini{display:flex;gap:6px;flex-wrap:wrap}.points-mini i{font-style:normal;border-radius:999px;padding:4px 7px;background:#f0f1f5;color:#5e687b;font-size:8px;font-weight:800}.points-mini i:first-child{background:#eaf8f2;color:#117455}.points-mini i:nth-child(2){background:#fff0f1;color:#a43743}.points-mini i.ok{background:#edf7f3;color:#117455}.points-mini i.gap{background:#fff4dd;color:#96610a}
.points-result-count{font-size:11px;background:#f2efff;color:#6044cb;border-radius:999px;padding:6px 10px;white-space:nowrap}
.points-filters{display:grid;grid-template-columns:1.15fr .85fr 1fr 1fr minmax(190px,1.35fr);gap:9px;background:#f8f9fb;border:1px solid #eef0f4;border-radius:11px;padding:11px;margin-bottom:12px}
.points-filters label{display:grid;gap:4px;min-width:0}.points-filters label>span{font-size:8px;text-transform:uppercase;letter-spacing:.55px;font-weight:800;color:#8a94a7}.points-filters select,.points-filters input{width:100%;border:1px solid #dfe2e9;background:#fff;border-radius:8px;padding:9px 10px;font-size:10px;color:#24314a;min-width:0}.points-filters input:focus,.points-filters select:focus{outline:2px solid #d7cff8;outline-offset:1px}
.points-table{overflow:auto;border:1px solid var(--line);border-radius:11px;background:#fff}.points-table table{width:100%;border-collapse:collapse;min-width:980px}.points-table thead th{position:sticky;top:0;background:#f8f9fb;z-index:1;font-size:8px;text-transform:uppercase;letter-spacing:.5px;color:#7f8a9f;text-align:left;padding:10px;border-bottom:1px solid var(--line)}.points-table tbody td{font-size:10px;padding:10px;border-bottom:1px solid #eff0f4;vertical-align:middle}.points-table tbody tr:last-child td{border-bottom:0}.points-table tbody tr:hover{background:#fcfcfe}.points-table td:nth-child(4){min-width:270px}.points-table td:nth-child(4)>b{display:block;font-size:10px}.points-table td:nth-child(4)>small{display:block;font-size:8px;color:var(--muted);margin-top:4px;line-height:1.4}.points-date{white-space:nowrap;color:#657086}.points-person{display:flex;align-items:center;gap:8px;white-space:nowrap}.points-person b{font-size:10px}
.points-amount{white-space:nowrap;font-size:12px}.points-amount.positive{color:#117455}.points-amount.negative{color:#a43743}.points-amount.zero{color:#6f7889}.points-amount.not-posted{opacity:.55}
.source-pill,.status-pill{display:inline-block;border-radius:999px;padding:5px 7px;font-size:8px;font-weight:800;white-space:nowrap}.source-pill{background:#f0f1f5;color:#536076}.source-pill.daily{background:#f0edff;color:#5e3dce}.source-pill.posuk{background:#e7f4ff;color:#256c9f}.source-pill.chazara{background:#eaf8f2;color:#117455}.source-pill.teacher{background:#fff4dd;color:#96610a}.source-pill.store{background:#fff0f1;color:#a43743}.source-pill.gap{background:#fff4dd;color:#96610a}.status-pill{background:#eef0f4;color:#5c6678;text-transform:capitalize}.status-pill.posted{background:#eaf8f2;color:#117455}.status-pill.pending,.status-pill.processing{background:#fff4dd;color:#96610a}.status-pill.rejected{background:#fff0f1;color:#a43743}.status-pill.needs-review{background:#fff0dc;color:#8c5807}.gap-row{background:#fffaf1!important}.gap-row td{border-bottom-color:#f0ddb9!important}
@media(max-width:1100px){.points-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.points-student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.points-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.points-search{grid-column:1/-1}}
@media(max-width:680px){.points-dashboard{padding:18px}.points-title,.points-section-head{align-items:stretch;flex-direction:column}.points-title .reportbuttons{justify-content:flex-start}.points-alert{align-items:flex-start;flex-direction:column}.points-summary,.points-summary.single{grid-template-columns:1fr}.points-student-grid{grid-template-columns:1fr}.points-filters{grid-template-columns:1fr}.points-search{grid-column:auto}.points-summary strong{font-size:21px}.points-account-totals{grid-template-columns:1fr 1fr}.points-account-totals .current{grid-column:1/-1}}
.points-running{white-space:nowrap;color:#303b52;font-size:10px}

/* ===== Student reason overview — 2026-09-25 ===== */
.points-reason-overview{border-top:0;margin-top:16px;padding:0}
.points-reason-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border:1px solid #d9d3f5;border-radius:14px 14px 0 0;background:linear-gradient(135deg,#faf9ff,#f4f1ff)}
.points-reason-student{display:flex;align-items:center;gap:12px;min-width:0}
.points-reason-student>em{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#fff;font-style:normal;font-size:14px;font-weight:900;flex:0 0 auto}
.points-reason-student>span{min-width:0}
.points-reason-student small{display:block;font-size:8px;letter-spacing:.7px;font-weight:900;color:#7a68c9;margin-bottom:3px}
.points-reason-student h2{font-size:19px;margin:0 0 3px;color:#1d2740}
.points-reason-student p{font-size:10px;line-height:1.45;color:#68748a;margin:0}
.points-reason-balance{min-width:150px;text-align:right}
.points-reason-balance span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.55px;font-weight:900;color:#7b8496}
.points-reason-balance strong{display:block;font-size:28px;line-height:1.05;color:#4931b6;margin-top:4px}
.points-reason-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #e3e5ec;border-top:0;background:#fff}
.points-reason-card{appearance:none;border:0;border-right:1px solid #eceef3;border-bottom:1px solid #eceef3;background:#fff;display:grid;grid-template-columns:38px minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:14px 15px;text-align:left;cursor:pointer;min-width:0;transition:background .15s,box-shadow .15s}
.points-reason-card:nth-child(2n){border-right:0}
.points-reason-card:hover{background:#fafaff}
.points-reason-card.selected{background:#f3f0ff;box-shadow:inset 4px 0 0 #6849df}
.points-reason-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#f1effb;font-size:17px}
.points-reason-copy{display:grid;gap:2px;min-width:0}
.points-reason-copy b{font-size:11px;color:#27334b}
.points-reason-copy small{font-size:8px;color:#7e889a;line-height:1.35}
.points-reason-copy i{font-style:normal;font-size:8px;color:#9aa2b0;font-weight:700;margin-top:2px}
.points-reason-card>strong{font-size:18px;white-space:nowrap;color:#3f4859}
.points-reason-card.positive>strong{color:#117455}.points-reason-card.negative>strong{color:#a43743}
.points-reason-arrow{font-size:22px;color:#a9afbb}
.points-reason-empty{grid-column:1/-1;padding:22px;text-align:center;font-size:11px;color:#7d8798}
.points-reason-actions{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:10px 12px;border:1px solid #e3e5ec;border-top:0;border-radius:0 0 12px 12px;background:#fafbfc}
.points-all-activity{border:1px solid #d9d3f5;background:#fff;color:#5a41c2;border-radius:8px;padding:8px 10px;font-size:9px;font-weight:900;cursor:pointer}
.points-all-activity.active{background:#efeaff;border-color:#bfb2f3}
.points-reason-actions>span{font-size:9px;color:#6f798c}
@media(max-width:900px){.points-reason-grid{grid-template-columns:1fr}.points-reason-card,.points-reason-card:nth-child(2n){border-right:0}.points-reason-head{align-items:flex-start}.points-reason-balance{text-align:left}}
@media(max-width:680px){.points-reason-head{flex-direction:column}.points-reason-balance{min-width:0}.points-reason-actions{align-items:flex-start;flex-direction:column}}


/* ===== Personal + Class Rewards — 2026-09-25 ===== */
.reward-type-stack{display:grid;gap:22px}.teacher-reward-section{border:1px solid var(--line);background:#fff;border-radius:15px;padding:18px}.teacher-reward-section.class-rewards{border-color:#d9d2f6;background:#fdfcff}.teacher-reward-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}.teacher-reward-heading>span{width:42px;height:42px;border-radius:11px;background:#f0edff;display:grid;place-items:center;font-size:22px}.teacher-reward-heading>div{flex:1}.teacher-reward-heading h2{margin:0 0 4px;font-size:17px}.teacher-reward-heading p{margin:0;color:var(--muted);font-size:11px;line-height:1.4}.teacher-class-goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.teacher-class-goal{border:1px solid #ddd8ef;background:#fff;border-radius:13px;padding:15px}.teacher-class-goal.complete{border-color:#9fd8c4;background:#f4fcf9}.teacher-class-goal-top{display:flex;align-items:center;gap:10px}.teacher-class-goal-top>span{width:42px;height:42px;border-radius:10px;background:#f2efff;display:grid;place-items:center;font-size:22px}.teacher-class-goal-top>div{flex:1;min-width:0}.teacher-class-goal-top h3{font-size:13px;margin:0 0 4px}.teacher-class-goal-top p{font-size:10px;color:var(--muted);margin:0}.teacher-class-goal-top>strong{font-size:13px;color:#5a42c6;white-space:nowrap}.teacher-class-progress{height:9px;background:#ebe9f4;border-radius:999px;overflow:hidden;margin:13px 0 9px}.teacher-class-progress i{display:block;height:100%;background:#6849df;border-radius:999px}.teacher-class-goal.complete .teacher-class-progress i{background:#168463}.teacher-class-meta{display:flex;gap:8px 14px;flex-wrap:wrap;color:#5e687b;font-size:10px;margin-bottom:11px}.teacher-reward-section .rewardactions{display:flex;gap:7px;flex-wrap:wrap}.teacher-reward-section .rewardactions button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:7px 9px;font-size:10px;cursor:pointer}.teacher-reward-section .rewardactions .rewarddelete{color:#a43743;border-color:#efd0d4}.approvals-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.approvals-inline .request{margin-top:0}.queue-count{min-width:28px;height:28px;border-radius:999px;background:#fff0e8;color:#c75d24;display:grid;place-items:center;font-size:11px}.source-pill.class{background:#f0edff;color:#5a42c6}
@media(max-width:850px){.teacher-class-goal-grid,.approvals-inline{grid-template-columns:1fr}.teacher-reward-heading{align-items:flex-start;flex-wrap:wrap}.teacher-reward-heading>button{width:100%}}

/* ===== Per-reward open/closed controls — 2026-09-25 ===== */
.teacher-reward-section .rewardgrid>article,.teacher-class-goal{position:relative}
.reward-availability{position:absolute;top:10px;right:10px;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.55px;border:1px solid transparent}
.reward-availability.open{background:#e7f8f1;color:#0d7152;border-color:#bde9d8}
.reward-availability.closed{background:#fff0f1;color:#a43743;border-color:#f1c3c8}
.teacher-reward-section .reward-closed,.teacher-class-goal.reward-closed{background:#fafafa;border-color:#d9dde5}
.teacher-reward-section .reward-closed .rewardicon,.teacher-class-goal.reward-closed .teacher-class-goal-top>span{filter:grayscale(.45);opacity:.7}
.rewardactions .reward-toggle.open{background:#e7f8f1;color:#0d7152;border-color:#bde9d8}
.rewardactions .reward-toggle.close{background:#fff6df;color:#875d0d;border-color:#f1d493}


/* ===== Reward editor modal — 2026-09-30 ===== */
.reward-editor-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(17,24,39,.56);display:grid;place-items:center;padding:20px;overflow:auto}
.reward-editor-dialog{width:min(700px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border:1px solid #ded9ef;border-radius:18px;box-shadow:0 24px 70px rgba(23,18,53,.28);padding:22px}
.reward-editor-head{display:flex;align-items:flex-start;gap:18px;margin-bottom:18px}.reward-editor-head>div{flex:1}.reward-editor-head .eyebrow{margin:0 0 4px}.reward-editor-head h2{margin:0 0 5px;font-size:24px}.reward-editor-head p:not(.eyebrow){margin:0;color:var(--muted);font-size:12px}.reward-editor-x{border:0;background:#f1f2f6;color:#566176;width:36px;height:36px;border-radius:10px;font-size:24px;line-height:1;cursor:pointer}
.reward-editor-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.reward-editor-form label{display:grid;gap:7px;font-size:11px;color:#556176;font-weight:800}.reward-editor-form label.wide,.reward-editor-form .wide{grid-column:1/-1}.reward-editor-form input{width:100%;box-sizing:border-box;border:1px solid #d9dde7;border-radius:10px;padding:11px 12px;background:#fff;color:#17233c}.reward-editor-form input:focus{outline:3px solid rgba(104,73,223,.13);border-color:#8d78e6}.reward-editor-form input[type=color]{padding:4px;height:44px;cursor:pointer}.reward-editor-form label small{font-size:9px;color:#8a93a3;font-weight:600}
.reward-editor-check{display:flex!important;grid-auto-flow:column;justify-content:start;align-items:center;gap:9px!important;min-height:44px;padding:10px 12px;border:1px solid #e1e3e9;border-radius:10px;background:#fafbfc;color:#344054!important}.reward-editor-check input{width:17px!important;height:17px;margin:0;accent-color:#6849df}
.reward-editor-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}.reward-editor-actions button{border:1px solid var(--line);border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer}.reward-editor-actions .reward-editor-cancel{background:#fff;color:#596579}.reward-editor-actions button:disabled{opacity:.6;cursor:wait}.reward-editor-error{margin:0;color:#a43743;font-size:11px;font-weight:800;min-height:15px}
@media(max-width:620px){.reward-editor-backdrop{padding:10px;align-items:start}.reward-editor-dialog{margin-top:10px;max-height:calc(100vh - 20px);padding:17px}.reward-editor-form{grid-template-columns:1fr}.reward-editor-form label.wide,.reward-editor-form .wide{grid-column:auto}.reward-editor-actions{flex-direction:column-reverse}.reward-editor-actions button{width:100%}}

/* ===== Gimkit mode voting — 2026-09-30 ===== */
.gimkit-mode-race{margin:14px 0;padding:14px;border:1px solid #d8cffb;border-radius:14px;background:#faf9ff}
.gimkit-mode-race-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.gimkit-mode-race-head b{font-size:13px;color:#44349d}.gimkit-mode-race-head span{font-size:10px;font-weight:800;color:#7b6fc0}
.gimkit-mode-row{display:grid;grid-template-columns:minmax(125px,1fr) minmax(180px,2fr) auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid #ece8fa}
.gimkit-mode-row:first-of-type{border-top:0}.gimkit-mode-row>div:first-child strong,.gimkit-mode-row>div:first-child small{display:block}.gimkit-mode-row>div:first-child strong{font-size:12px}.gimkit-mode-row>div:first-child small{font-size:9px;color:#7b8493;margin-top:2px}
.gimkit-mode-bar{height:10px;background:#e7e3f7;border-radius:999px;overflow:hidden}.gimkit-mode-bar i{display:block;height:100%;background:linear-gradient(90deg,#6849df,#9c84f4);border-radius:999px}
.gimkit-mode-row>b{font-size:11px;color:#5139bd;white-space:nowrap}.gimkit-last-winner{margin:10px 0 0;font-size:11px;color:#42644f}
.gimkit-mode-editor{border:1px solid #d9d2f5;border-radius:14px;background:#faf9ff;padding:14px}
.gimkit-mode-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.gimkit-mode-editor-head b,.gimkit-mode-editor-head small{display:block}.gimkit-mode-editor-head small{margin-top:4px;color:#69758b;line-height:1.4}
.gimkit-mode-editor-head button{border:1px solid #bfb5ed;background:#fff;color:#533fc0;border-radius:9px;padding:8px 10px;font-weight:800;cursor:pointer}
#gimkitModeRows{display:grid;gap:8px}.gimkit-mode-edit-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}
.gimkit-mode-edit-row>input{width:100%;border:1px solid #cbc6df;border-radius:9px;padding:9px 10px;font:inherit}.gimkit-mode-edit-row label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:800;color:#57657a}
.gimkit-mode-edit-row button{width:34px;height:34px;border:0;border-radius:9px;background:#fff0f1;color:#a43743;font-size:18px;cursor:pointer}
@media(max-width:760px){.gimkit-mode-row{grid-template-columns:1fr auto}.gimkit-mode-row .gimkit-mode-bar{grid-column:1/-1;order:3}.gimkit-mode-editor-head{flex-direction:column}.gimkit-mode-edit-row{grid-template-columns:1fr auto}.gimkit-mode-edit-row button{grid-column:2}}
