.hybrid-icon{display:inline-block;width:40px;height:40px;flex:none;background-image:url('assets/brand/hybrid-icons-v1.png');background-size:300% 300%;background-repeat:no-repeat;vertical-align:middle}.hi-book{background-position:0 20%}.hi-calendar{background-position:50% 20%}.hi-score{background-position:100% 20%}.hi-checklist{background-position:0 75%}.hi-target{background-position:50% 75%}.hi-cards{background-position:100% 75%}.td-icon:has(.hybrid-icon){background:none;overflow:visible;min-width:40px;min-height:40px}.v2-today{gap:14px}.v2-today .td-hero{min-height:120px;padding:18px 20px}.v2-today .td-hero p{font-size:13px;color:#556e8d}.v2-today .td-card{padding:16px}.v2-today .td-card-head{margin-bottom:12px}.v2-today .td-agenda{min-height:66px;padding:10px;gap:8px}.v2-today .td-agenda .td-button{font-size:12px;padding:8px 10px;white-space:nowrap;min-height:44px}.v2-today .sr-row-copy small{font-size:11px;color:#617690;display:block;margin-top:3px}.v2-free{display:flex;justify-content:flex-start;border-top:1px solid #edf2f8;padding-top:12px;margin-top:8px}.v2-free .td-button{min-height:44px;color:#076bcf}.v2-today .sr-backlog>summary{min-height:42px;font-size:12px}.v2-today .td-empty{min-height:0;padding:4px 0;margin:6px 0;font-size:13px;color:#63758c}.v2-today .td-habit small{display:block;font-size:11px;color:#63758c;margin-top:3px}.v2-today .td-habit{min-height:48px}.v2-today .td-moods .v2-emoji{font-family:'Segoe UI Emoji','Apple Color Emoji',sans-serif;font-size:28px;line-height:1.3;margin-bottom:6px}.v2-today .td-moods button{min-height:76px}.v2-today .td-moods button>span:last-child{font-size:11px}.v2-today .td-moods .selected{border:1px solid #1bb88a;background:#eefbf6}.v2-today .td-progress span{color:#62758b;font-size:12px}.v2-week{padding:18px}.v2-week-list{display:grid;gap:12px}.v2-day{border:1px solid #e3ebf4;border-radius:16px;overflow:hidden;background:#fff}.v2-day h3{display:flex;justify-content:space-between;align-items:center;margin:0;padding:10px 14px;font-size:14px;background:#f7f9fc}.v2-day h3 small{font-size:11px;font-weight:500;color:#0874e8}.v2-day-today{border-color:#8ec8ff;box-shadow:0 0 0 1px #e2f2ff}.v2-day-today h3{background:#eaf4ff}.v2-period{display:grid;grid-template-columns:minmax(0,1fr) 60px 110px;align-items:center;gap:8px;min-height:44px;padding:9px 14px;border-top:1px solid #f0f3f8}.v2-period:nth-child(odd){background:#fafbfd}.v2-period strong{font-size:13px;font-weight:550;overflow-wrap:anywhere}.v2-period span{font-size:11px;color:#4981b7}.v2-period time{font-size:12px;text-align:left;color:#536c87;font-variant-numeric:tabular-nums}.v2-day>p{margin:0;padding:9px 14px;font-size:12px;color:#708298}.student-v2 .modal-card .form-group{margin-bottom:16px}.student-v2 .modal-head{margin-bottom:16px}.student-v2 .modal-head .eyebrow:empty{display:none}.student-v2 .shared-guide p{font-size:14px;line-height:1.9}.student-v2 .modal-body>.shared-guide{margin-top:0}.student-v2 .student-kpi-icon:has(.hybrid-icon){background:transparent}.student-v2 .topbar .top-action{min-height:44px}.student-v2 .topbar .page-heading p{color:#657992}
@media(min-width:821px){.v2-week-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.v2-today{max-width:1000px;margin-inline:auto}.student-v2 .v2-today .td-hero{min-height:150px}.student-v2 .v2-today .td-hero img{height:140px}.student-v2 .v2-today .td-card h2{font-size:18px}}
@media(max-width:820px){body[data-role=student].student-v2 .topbar{display:grid;grid-template-columns:minmax(0,1fr) 52px auto;gap:4px;min-height:72px;padding-block:8px}body[data-role=student].student-v2 .topbar-right{grid-column:1;grid-row:1;gap:3px}body[data-role=student].student-v2 .topbar-actions{grid-column:3;grid-row:1;gap:0}body[data-role=student].student-v2 #todayBrand{grid-column:2;grid-row:1;width:52px;height:52px;justify-self:center}body[data-role=student].student-v2 .topbar .page-heading h1{font-size:13px;line-height:1.5}body[data-role=student].student-v2 .mobile-menu{padding:0;width:44px;min-width:44px}body[data-role=student].student-v2 .topbar .top-action{width:44px;min-width:44px;padding:0}body[data-role=student].student-v2 .topbar .avatar-link{min-width:44px}body[data-role=student].student-v2 .topbar .shared-avatar{width:30px;height:30px}.v2-today .td-hero h2{font-size:17px}.v2-today .td-hero p{font-size:12px}.v2-today .td-card h2{font-size:16px}.v2-today .td-card-head .td-button{font-size:11px;padding-inline:9px}.v2-today .td-hero{padding:14px;min-height:112px}.v2-today .td-hero img{height:105px}.v2-today .td-card{padding:13px}.v2-period{grid-template-columns:minmax(0,1fr) 48px 102px;padding:8px 10px;gap:5px}.v2-period time{font-size:11px}.v2-week{padding:13px}.v2-today .td-moods{gap:5px}.v2-today .td-moods button{padding:9px 2px}.hybrid-icon{width:36px;height:36px}.td-icon:has(.hybrid-icon){min-width:36px;min-height:36px}}
/* Slightly inset each sprite cell so neighboring artwork never appears. */
.hybrid-icon{background-size:330% 330%}.hi-book{background-position:3% 22%}.hi-calendar{background-position:53% 22%}.hi-score{background-position:100% 22%}.hi-checklist{background-position:3% 74%}.hi-target{background-position:53% 74%}.hi-cards{background-position:97% 74%}.v2-day:has(>p){display:flex;align-items:center;justify-content:space-between;min-height:46px}.v2-day:has(>p)>h3{background:transparent}.v2-day:has(>p)>p{padding-block:8px}
/* Visual correction: framed artwork, distinct sections and proportional footer. */
body.student-v2 .td-icon:has(.hybrid-icon){width:46px;height:46px;min-width:46px;min-height:46px;border:1px solid #c9def8;background:linear-gradient(145deg,#fff,#e9f3ff);box-shadow:0 3px 8px #1d67a810;border-radius:14px;overflow:hidden}body.student-v2 .td-icon .hybrid-icon{width:34px;height:34px}body.student-v2 .td-green:has(.hybrid-icon){border-color:#b7e4d3;background:linear-gradient(140deg,#fff,#e0f8ed)}body.student-v2 .td-orange:has(.hybrid-icon){border-color:#f4d4a8;background:linear-gradient(140deg,#fff,#fff0da)}body.student-v2 .td-purple:has(.hybrid-icon){border-color:#d8c7f4;background:linear-gradient(140deg,#fff,#f0e7ff)}
.v2-today>.td-card{border-color:#d7e4f3;box-shadow:0 4px 14px #244e7908}.v2-today>.td-program{border-top:3px solid #338cf0;background:linear-gradient(180deg,#eff7ff 0,#fff 105px)}.v2-today>.v2-grades{border-top:3px solid #9d75df;background:linear-gradient(180deg,#f6f1ff 0,#fff 90px)}.v2-today>.td-card:has(.hi-checklist){border-top:3px solid #2ab99a;background:linear-gradient(180deg,#eefaf5 0,#fff 100px)}.v2-today>.td-mood{border-top:3px solid #efbc53;background:linear-gradient(180deg,#fff9ed,#fff 100px)}.v2-today>.v2-grades .td-icon{border-color:#d8c7f4!important;background:linear-gradient(140deg,#fff,#f0e7ff)!important}.v2-today>.td-card:has(.hi-checklist) .td-card-head .td-icon{border-color:#b7e4d3!important;background:linear-gradient(140deg,#fff,#e0f8ed)!important}
.v2-today .td-card-head{margin-bottom:8px}.v3-review-group h3{display:flex;gap:8px;align-items:center;font-size:12px;color:#27639c;margin:4px 0 8px}.v3-review-group h3 small{border-radius:10px;background:#e4f0ff;padding:1px 7px;color:#195f9e}.v3-overdue h3{color:#96641c}.v3-overdue h3 small{background:#fff0d5;color:#885612}.v3-review-group .td-agenda{margin-bottom:7px}.v3-review-row{border-color:#d9e6f5;background:#fff}.v3-review-row .td-icon{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;border-radius:12px!important}.v3-review-row .td-icon .hybrid-icon{width:29px;height:29px}.v2-today .sr-row-copy small{line-height:1.8;font-size:11px;color:#4f6781}.v3-stage{display:inline-block;border-radius:6px;padding:1px 6px;background:#eaf3ff;color:#2167ad;font-size:10px;font-weight:600}.v3-repeat{color:#11745c;background:#e3f6ef}.v2-today .v3-review-row .td-button{background:#edf5ff;color:#125fae;border-color:#bcd8f6;box-shadow:none}.v2-today .td-button{font-size:13px;color:#244d77}.v2-today .td-primary{color:white}.v2-today .td-empty{color:#526c87;font-size:13px}.v2-today .sr-backlog>summary{min-height:44px;padding:4px 0}.v2-today .td-agenda-list{gap:6px}.v2-today .v2-free{margin-top:3px;padding-top:9px}.v2-today .v2-free .td-button{border-color:#a9ccef;background:#eaf4ff;color:#075fae;font-weight:750}.v2-today .td-moods button>span:last-child{color:#52667e}.v2-today .td-hero{background:linear-gradient(110deg,#d2effa,#e1ecff 65%,#eef4ff);border-color:#c9dff6}
body.student-v2 .sidebar-footer .maker-mini{display:flex;align-items:center;gap:10px}body.student-v2 .sidebar-footer img.rahsaman-mark{width:58px;height:56px;max-width:58px;max-height:56px;object-fit:contain;object-position:center;flex:none;transform:none}body.student-v2 .sidebar-footer .maker-mini span{min-width:0}
@media(max-width:820px){body[data-role=student].student-v2 .mobile-nav{width:100%;height:auto;min-height:72px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:6px 5px calc(6px + env(safe-area-inset-bottom));border:1px solid #ccdaed;background:#fffffffa;border-radius:18px 18px 0 0;box-shadow:0 -4px 16px #153e7012}body[data-role=student].student-v2 .mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;height:58px;min-height:58px;min-width:0;padding:4px 1px;color:#536c8c;border-radius:12px}body[data-role=student].student-v2 .mobile-nav button svg{width:24px!important;height:24px!important;min-width:24px;min-height:24px;max-width:24px;max-height:24px;aspect-ratio:1/1;flex:none;display:block;overflow:visible;object-fit:contain}body[data-role=student].student-v2 .mobile-nav button span{font-size:10px;line-height:1.6;white-space:nowrap}body[data-role=student].student-v2 .mobile-nav button.active{background:#eaf3ff;color:#0872e5}body[data-role=student].student-v2 .mobile-nav button.active:before{width:26px;top:-6px;height:3px;left:calc(50% - 13px);border-radius:0 0 4px 4px}.v2-today .td-card h2{font-size:16px}.v2-today .td-card-head .td-button{font-size:12px}.v2-today .td-agenda{padding:8px;min-height:66px}.v2-today .td-agenda .td-button{font-size:11px;padding-inline:8px}.v2-today .td-card{padding:12px}.v2-today .sr-row-copy strong{font-size:14px}.v2-today .td-hero h2{font-size:17px}.v2-today .td-hero p{color:#476384}body.student-v2 .main{padding-bottom:105px!important}}
