:root{--ink:#203946;--muted:#82919a;--teal:#159985;--line:#e8edef;--paper:#fff;--canvas:#f4f7f8}
*{box-sizing:border-box}body.student-portal{margin:0;background:radial-gradient(ellipse at 92% 0,rgba(35,160,141,.10),transparent 33%),var(--canvas);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:14px}.student-shell{width:min(1120px,calc(100% - 36px));margin:0 auto;padding:24px 0 34px}.portal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.studio-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.studio-brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:linear-gradient(145deg,#173d4b,#138e7d);color:#fff;font-family:Manrope,sans-serif;font-size:21px;font-weight:800;box-shadow:0 7px 16px #153c4b2c}.studio-brand strong,.studio-brand small{display:block}.studio-brand strong{font-family:Manrope,sans-serif;font-size:16px;font-weight:800;letter-spacing:-.4px}.studio-brand small{margin-top:1px;color:#88969e;font-size:8px;font-weight:800;letter-spacing:2px}.portal-label{display:inline-flex;align-items:center;gap:7px;color:#60727b;font-size:9px;font-weight:800;letter-spacing:1.3px}.portal-live-dot{width:7px;height:7px;border-radius:50%;background:#18a58f;box-shadow:0 0 0 4px #18a58f1c}
.lookup-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:center;gap:32px;margin-bottom:16px;padding:30px 34px;border:1px solid rgba(255,255,255,.15);border-radius:20px;background:radial-gradient(ellipse at 84% 8%,rgba(39,182,158,.22),transparent 36%),linear-gradient(120deg,#153746,#1a4b57 60%,#17675d);color:#fff;box-shadow:0 16px 38px rgba(23,57,73,.14)}.section-eyebrow{display:block;color:#159985;font-size:9px;font-weight:800;letter-spacing:1.55px}.lookup-copy .section-eyebrow,.profile-eyebrow{color:#77dfcb}.lookup-copy h1{margin:8px 0 7px;color:#fff;font-family:Manrope,sans-serif;font-size:clamp(22px,3vw,31px);font-weight:800;letter-spacing:-.8px}.lookup-copy p{max-width:470px;margin:0;color:#d0e0e2;font-size:12px;line-height:1.65}.lookup-form{padding:18px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.08)}.lookup-form label{display:block;margin-bottom:7px;color:#e8f1f1;font-size:10px;font-weight:700}.lookup-input-row{display:flex;gap:7px}.lookup-input-row .form-control{min-width:0;height:43px;border:1px solid rgba(255,255,255,.26);border-radius:9px;background:#fff;font-size:13px}.btn-groove{flex:none;height:43px;padding:0 14px;border:0;border-radius:9px;background:#4bd0b3;color:#123b45;font-size:10px;font-weight:800}.btn-groove:hover{background:#6bdec5;color:#123b45}.btn-groove span{margin-left:7px;font-size:15px}.lookup-form small{display:block;margin-top:8px;color:#c0d4d5;font-size:9px}.portal-message{margin:12px 0;padding:12px 15px;border-radius:10px;font-size:12px}.error-message{border:1px solid #f1cccc;background:#fff4f3;color:#a23c37}.loading-message{border:1px solid #ccebe5;background:#f1fbf8;color:#247967}
.profile-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:16px 0;padding:24px 27px;border:1px solid #e5ecee;border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(27,49,62,.045)}.profile-identity{display:flex;align-items:center;gap:15px;min-width:0}.student-avatar{display:grid;place-items:center;flex:none;width:58px;height:58px;border-radius:18px;background:linear-gradient(140deg,#d9f4ed,#b5e8dc);color:#167968;font-family:Manrope,sans-serif;font-size:22px;font-weight:800}.profile-eyebrow{color:#159985;font-size:8px;font-weight:800;letter-spacing:1.5px}.profile-identity h2{overflow:hidden;margin:4px 0 3px;color:#233b48;font-family:Manrope,sans-serif;font-size:21px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.student-contact{color:#74848d;font-size:10px}.student-number{display:inline-block;margin-top:6px;padding:3px 7px;border-radius:5px;background:#f2f6f7;color:#778790;font-size:9px;font-weight:700}.profile-points{display:grid;justify-items:end;flex:none}.profile-points>span{color:#8a989f;font-size:8px;font-weight:800;letter-spacing:1px}.profile-points strong{margin:2px 0;color:#159985;font-family:Manrope,sans-serif;font-size:34px;line-height:1.1}.profile-points small{color:#8c989f;font-size:9px}
.subscription-card,.content-card{margin-bottom:15px;border:1px solid #e7edef;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(27,49,62,.04)}.subscription-card{padding:20px 23px}.subscription-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.subscription-heading h3,.content-heading h3{margin:4px 0 0;color:#263e4b;font-family:Manrope,sans-serif;font-size:16px;font-weight:800;letter-spacing:-.35px}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #ccebe2;border-radius:20px;background:#eef9f5;color:#16836f;font-size:9px;font-weight:800;white-space:nowrap}.status-pill::before{width:6px;height:6px;border-radius:50%;background:currentColor;content:''}.status-pill.is-expired,.status-pill.is-unpaid,.status-pill.is-inactive{border-color:#f1d5d3;background:#fff3f2;color:#b14b47}.status-pill.is-none{border-color:#e5e9eb;background:#f5f7f8;color:#7c8991}.subscription-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding-top:15px;border-top:1px solid #edf0f1}.subscription-details>div{display:grid;gap:5px}.subscription-details span{color:#8a969d;font-size:9px}.subscription-details strong{color:#405662;font-size:11px;font-weight:750}
.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:15px}.stat-card{position:relative;display:grid;grid-template-columns:36px 1fr;align-items:center;column-gap:10px;padding:15px 17px;border:1px solid #e8edef;border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(27,49,62,.035)}.stat-icon{grid-row:span 3;display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf5fb;color:#397ea4;font-size:17px;font-weight:800}.stat-card small{color:#8c989f;font-size:8px;font-weight:800;letter-spacing:1px}.stat-card strong{margin:1px 0;color:#273f4c;font-family:Manrope,sans-serif;font-size:23px;line-height:1.1}.stat-card>span:last-child{color:#87949b;font-size:9px}.stat-present .stat-icon{background:#eaf8f1;color:#26936b}.stat-absent .stat-icon{background:#fff0ef;color:#c56b63}
.content-card{padding:20px 21px}.content-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.content-heading p{margin:5px 0 0;color:#8b979e;font-size:10px}.compact-heading{margin-bottom:13px}.count-chip{display:grid;place-items:center;min-width:27px;height:25px;padding:0 8px;border-radius:8px;background:#f0f6f6;color:#52717a;font-size:10px;font-weight:800}.month-controls{display:flex;align-items:center;gap:8px}.month-controls button{display:grid;place-items:center;width:32px;height:32px;border:1px solid #e5ebed;border-radius:8px;background:#fff;color:#526772;font-size:19px}.month-controls button:hover{border-color:#a6d9d0;background:#eff9f6;color:#138975}.month-controls strong{min-width:112px;color:#344c58;font-size:11px;text-align:center;text-transform:capitalize}.calendar-scroll{overflow-x:auto;border:1px solid #e8edef;border-radius:11px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(92px,1fr));gap:0;min-width:650px}.calendar-day-name{padding:9px 5px;background:#f7f9fa;color:#839098;font-size:8px;font-weight:800;text-align:center;text-transform:uppercase;letter-spacing:.7px}.calendar-day{min-height:115px;padding:7px;border-top:1px solid #e9edef;border-right:1px solid #e9edef;background:#fff}.calendar-day:nth-child(7n){border-right:0}.calendar-day.muted-day{background:#fafbfb}.calendar-day.muted-day .calendar-date{color:#b4bec3}.calendar-date{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px;color:#62747e;font-size:10px;font-weight:800}.calendar-date.today-date::after{width:6px;height:6px;border-radius:50%;background:#159985;content:''}.course-slot{margin:4px 0;padding:6px 7px;border:1px solid #d9eeeb;border-left:3px solid #31a996;border-radius:7px;background:#f1faf8;color:#435a66;font-size:8px;line-height:1.35}.course-slot strong{font-size:8px}.course-slot.booked{border-color:#d6e7f4;border-left-color:#4385b3;background:#f0f7fc}.course-slot.attended{border-color:#d4ecdf;border-left-color:#299365;background:#f0faf4}.course-slot.absent{border-color:#f1d9d6;border-left-color:#c66b62;background:#fff6f4}.course-slot .course-state-label{display:inline-block;margin-top:4px;color:#71828a;font-size:7px;font-weight:800}.course-slot button{display:block;width:100%;margin-top:5px;padding:4px 5px;border:0;border-radius:5px;background:#173e4a;color:white;font-size:8px;font-weight:750}.course-slot button:hover{background:#138a78}.course-slot button:disabled{opacity:.55}.calendar-legend{display:flex;flex-wrap:wrap;gap:13px;margin-top:11px;color:#7d8b92;font-size:8px}.calendar-legend span{display:inline-flex;align-items:center;gap:5px}.legend-dot{width:7px;height:7px;border-radius:50%}.legend-dot.available{background:#31a996}.legend-dot.booked{background:#4385b3}.legend-dot.attended{background:#299365}.legend-dot.absent{background:#c66b62}
.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.activity-grid .content-card{min-width:0}.table-responsive{width:100%;overflow-x:auto}.activity-table{width:100%;border-collapse:collapse;white-space:nowrap}.activity-table th{padding:9px 8px;border-bottom:1px solid #e9edef;color:#8b979d;font-size:8px;font-weight:800;text-align:left;text-transform:uppercase;letter-spacing:.55px}.activity-table td{padding:10px 8px;border-bottom:1px solid #f0f2f3;color:#50636e;font-size:9px}.activity-table tbody tr:last-child td{border-bottom:0}.activity-table td:first-child{color:#7e8c93}.table-status{display:inline-flex;padding:4px 7px;border-radius:6px;font-size:8px;font-weight:800}.table-status.upcoming{background:#eef6fb;color:#397ea4}.table-status.present{background:#edf8f1;color:#268356}.table-status.absent{background:#fff0ef;color:#b75d57}.table-empty{padding:22px!important;color:#9ba6ac!important;text-align:center;font-size:9px!important}.payment-card{margin-top:15px}.payment-table td:last-child,.payment-table th:last-child{text-align:right}.portal-footer{padding:8px 0 0;color:#98a2a8;font-size:9px;text-align:center}.portal-footer span{padding:0 4px;color:#20a18d}
.reserve-dialog{width:min(440px,calc(100% - 28px));padding:0;border:1px solid #e2ebed;border-radius:19px;background:#fff;color:var(--ink);box-shadow:0 24px 80px rgba(13,36,47,.26)}.reserve-dialog::backdrop{background:rgba(11,33,43,.56);backdrop-filter:blur(3px)}.reserve-dialog-content{position:relative;padding:27px}.dialog-close{position:absolute;top:11px;right:13px;width:30px;height:30px;border:0;border-radius:8px;background:#f3f6f7;color:#72828a;font-size:21px;line-height:1}.dialog-close:hover{background:#e8eff1;color:#263f4b}.dialog-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:14px;border-radius:15px;background:#eaf8f4;color:#168b79;font-size:21px;font-weight:800}.dialog-icon.success{background:#eaf8f0;color:#23845c}.dialog-icon.failure{background:#fff0ef;color:#bb5d56}.reserve-dialog h3{margin:0 30px 7px 0;color:#263e4a;font-family:Manrope,sans-serif;font-size:19px;font-weight:800}.reserve-dialog p{margin:0;color:#798890;font-size:11px;line-height:1.6}.dialog-course-summary{display:grid;gap:6px;margin:16px 0;padding:13px;border:1px solid #e7edef;border-radius:11px;background:#f8fafb;color:#4d626d;font-size:10px}.dialog-course-summary strong{color:#2f4854;font-size:12px}.dialog-point-note{padding:10px 11px;border-radius:9px;background:#fff8e9;color:#8e6a27;font-size:10px;line-height:1.5}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:19px}.dialog-actions button{min-height:38px;padding:0 13px;border-radius:8px;font-size:10px;font-weight:800}.btn-dialog-secondary{border:1px solid #e3e9eb;background:#fff;color:#687982}.btn-dialog-primary{border:1px solid #173e4a;background:#173e4a;color:#fff}.btn-dialog-primary:hover{background:#128a77}.btn-dialog-primary:disabled{opacity:.55}
@media(max-width:850px){.lookup-card{grid-template-columns:1fr;gap:18px}.lookup-copy p{max-width:620px}.activity-grid{grid-template-columns:1fr}}
@media(max-width:600px){.student-shell{width:calc(100% - 24px);padding-top:15px}.portal-header{margin-bottom:14px}.studio-brand-mark{width:36px;height:36px;border-radius:11px}.studio-brand strong{font-size:14px}.portal-label{font-size:7px;letter-spacing:.8px}.lookup-card{gap:17px;padding:21px 18px;border-radius:16px}.lookup-copy h1{font-size:23px}.lookup-copy p{font-size:11px}.lookup-form{padding:13px}.lookup-input-row{flex-direction:column}.btn-groove{width:100%}.profile-hero{align-items:flex-start;flex-direction:column;gap:17px;padding:18px}.profile-identity{gap:11px}.student-avatar{width:48px;height:48px;border-radius:15px}.profile-identity h2{font-size:18px}.profile-points{grid-template-columns:auto auto;justify-items:start;align-items:center;column-gap:9px;width:100%;padding-top:12px;border-top:1px solid #edf0f1}.profile-points>span{grid-column:1;align-self:end}.profile-points strong{grid-column:1;grid-row:2;font-size:28px}.profile-points small{grid-column:2;grid-row:2;align-self:center}.subscription-card{padding:17px}.subscription-details{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:13px}.stats-grid{gap:7px}.stat-card{grid-template-columns:1fr;justify-items:start;gap:4px;padding:11px 10px}.stat-icon{grid-row:auto;width:28px;height:28px;border-radius:9px;font-size:14px}.stat-card small{font-size:7px}.stat-card strong{font-size:20px}.stat-card>span:last-child{font-size:8px}.content-card{padding:16px 13px}.content-heading h3{font-size:14px}.content-heading p{font-size:9px}.month-controls{gap:4px}.month-controls button{width:29px;height:29px}.month-controls strong{min-width:94px;font-size:10px}.calendar-day{min-height:100px;padding:5px}.course-slot{padding:5px}.calendar-legend{gap:9px}.activity-table th{font-size:7px}.activity-table td{padding:9px 7px;font-size:8px}.reserve-dialog-content{padding:23px 19px}.dialog-actions{flex-direction:column-reverse}.dialog-actions button{width:100%}}

/* Student booking schedule inspired by contemporary studio booking pages */
.student-date-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:12px 0 17px}.student-date-chip{display:grid;justify-items:center;gap:4px;min-width:0;padding:11px 5px;border:1px solid #e5ebed;border-radius:12px;background:#fff;color:#60737d;transition:.18s ease}.student-date-chip span,.student-date-chip small{font-size:9px;font-weight:700;text-transform:capitalize}.student-date-chip strong{font-family:Manrope,sans-serif;font-size:20px;color:#29424e}.student-date-chip em{font-style:normal;color:#91a0a6;font-size:8px}.student-date-chip:hover:not(:disabled),.student-date-chip.is-today{border-color:#159985;background:#eef9f6;color:#16816e}.student-date-chip.is-today strong{color:#16816e}.student-date-chip.is-selected{border-color:#159985;background:#173e4a;color:#fff;box-shadow:0 6px 15px #173e4a25}.student-date-chip.is-selected strong,.student-date-chip.is-selected em{color:#fff}.student-date-chip:disabled,.student-date-chip.is-past{opacity:.35;cursor:not-allowed}.student-selected-date{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px;color:#314a56;text-transform:capitalize}.student-selected-date strong{font-family:Manrope,sans-serif;font-size:13px}.student-selected-date span{color:#88969d;font-size:9px}.student-course-list{display:grid;gap:9px}.student-course-card{padding:13px;border:1px solid #e5edef;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(27,49,62,.035)}.student-course-teacher{display:flex;align-items:center;gap:11px}.student-course-teacher img{flex:none;width:48px;height:48px;border-radius:50%;object-fit:cover;background:#edf3f4}.student-course-teacher div{display:grid;gap:3px;min-width:0;flex:1}.student-course-teacher div strong{overflow:hidden;color:#304954;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.student-course-teacher div span{color:#637781;font-size:10px}.student-course-teacher div small{color:#99a4a9;font-size:9px}.student-course-teacher>b{align-self:flex-start;padding:5px 8px;border-radius:7px;background: #222630;color:#415c68;font-size:10px}.student-course-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #eff2f3}.student-course-foot button{padding:8px 12px;border:0;border-radius:8px;background:#173e4a;color:#fff;font-size:9px;font-weight:800}.student-course-foot button:hover{background:#138a77}.student-course-card.booked{border-color:#cce2ef;background:#f7fbfd}.student-course-card.attended{border-color:#cde8d8;background:#f5fbf7}.student-course-card.absent{border-color:#f1d9d6;background:#fff9f8}.student-course-card .course-state-label{padding:7px 10px;border-radius:7px;background:#eaf4f8;color:#39779a;font-size:9px;font-weight:800}.student-course-foot .course-value{color:#82929a;font-size:9px}.student-no-courses{padding:24px 12px;border:1px dashed #dce5e8;border-radius:11px;color:#96a2a8;font-size:10px;text-align:center}@media(max-width:600px){.student-date-strip{gap:4px}.student-date-chip{padding:8px 2px;border-radius:9px}.student-date-chip span,.student-date-chip small{font-size:8px}.student-date-chip strong{font-size:17px}.student-date-chip em{font-size:7px}.student-selected-date{align-items:flex-start;flex-direction:column;gap:3px}.student-course-teacher img{width:42px;height:42px}}

.calendar-scroll{overflow:visible;border:0;border-radius:0}.calendar-grid{display:block;min-width:0}
.student-room-filter{display:flex;align-items:center;gap:9px;margin-top:12px;color:#74857f;font-size:12px;font-weight:700}.student-room-filter select{max-width:220px;border:1px solid #dce7e4;border-radius:10px;padding:8px 12px;background:#fff;color:#24483f;font:inherit}
.student-instructor-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;vertical-align:middle;margin-right:7px}
.student-course-teacher .student-course-teacher-secondary{width:34px;height:34px;margin-left:-17px;border:2px solid #fff;z-index:1}
.subscription-action-card{padding:20px 23px}.subscription-action-card .content-heading p{margin:6px 0 0;color:#7b8b91;font-size:11px}.subscription-package-picker{display:grid;gap:8px;max-width:520px;margin:18px 0}.subscription-package-picker label{color:#536a74;font-size:11px;font-weight:800}.subscription-package-picker select{min-height:44px;border:1px solid #dce7e8;border-radius:10px;background:#fff;color:#29434d}.selected-package-summary{min-height:18px;color:#72858d;font-size:10px}.subscription-action-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.subscription-action-row .btn-groove{height:auto;min-height:44px;padding:11px 18px;white-space:normal}.subscription-action-row .btn-groove:disabled{cursor:not-allowed;opacity:.68}.subscription-action-note{color:#829199;font-size:10px;line-height:1.5}.subscription-action-card{border-color:#d9e9e7;box-shadow:0 9px 26px rgba(23,93,85,.07)}html[data-theme="dark"] .student-portal .subscription-action-card{border-color:var(--tg-border)!important;background:var(--tg-surface)!important;color:var(--tg-ink)!important}html[data-theme="dark"] .student-portal .subscription-action-card .content-heading h3,html[data-theme="dark"] .student-portal .subscription-action-card label{color:var(--tg-ink)!important}html[data-theme="dark"] .student-portal .subscription-action-card p,html[data-theme="dark"] .student-portal .subscription-action-note,html[data-theme="dark"] .student-portal .selected-package-summary{color:var(--tg-muted)!important}html[data-theme="dark"] .student-portal .subscription-action-card select{border-color:var(--tg-border);background:var(--tg-surface-2);color:var(--tg-ink)}@media(max-width:600px){.subscription-action-card{padding:16px}.subscription-action-row{align-items:stretch;flex-direction:column}.subscription-action-row .btn-groove{width:100%}}

/* High-visibility subscription state and renewal action */
.subscription-action-card{position:relative;overflow:hidden;margin:0 0 15px;border-width:1px;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.subscription-action-card .content-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.subscription-action-card.is-expired,.subscription-card.is-expired{border-color:#ff6684;box-shadow:0 0 0 1px rgba(255,75,113,.18),0 0 24px rgba(255,75,113,.16)}
.subscription-action-card.is-unpaid,.subscription-card.is-unpaid{border-color:#ffbd4a;box-shadow:0 0 0 1px rgba(255,174,42,.2),0 0 23px rgba(255,174,42,.16)}
.subscription-action-card.is-cancelled,.subscription-card.is-cancelled{border-color:#bd72ff;box-shadow:0 0 0 1px rgba(168,89,255,.18),0 0 23px rgba(168,89,255,.15)}
.subscription-action-card.is-inactive,.subscription-card.is-inactive{border-color:#ff995c;box-shadow:0 0 0 1px rgba(255,130,70,.17),0 0 22px rgba(255,130,70,.14)}
.subscription-action-card.is-none{border-color:#26cbb2;box-shadow:0 0 0 1px rgba(38,203,178,.17),0 0 22px rgba(38,203,178,.13)}
.status-pill{padding:7px 11px;font-size:10px;letter-spacing:.2px;animation:student-status-pulse 2.8s ease-in-out infinite}
.status-pill.is-expired{border-color:#ff6684;background:#fff0f3;color:#c5274a;box-shadow:0 0 14px rgba(255,75,113,.23)}
.status-pill.is-unpaid{border-color:#f0a51b;background:#fff7e5;color:#a56600;box-shadow:0 0 14px rgba(255,174,42,.24)}
.status-pill.is-cancelled{border-color:#ad5cf0;background:#f7edff;color:#8134bd;box-shadow:0 0 14px rgba(168,89,255,.22)}
.status-pill.is-inactive{border-color:#f18446;background:#fff2e9;color:#ad4c17;box-shadow:0 0 14px rgba(255,130,70,.2)}
.status-pill.is-active{border-color:#24c99b;background:#eafff8;color:#087c5c;box-shadow:0 0 14px rgba(25,201,151,.2)}
@keyframes student-status-pulse{0%,100%{filter:brightness(1);transform:translateZ(0)}50%{filter:brightness(1.08);transform:translateY(-1px)}}
html[data-theme="dark"] .student-portal .status-pill.is-expired{background:#401b29;color:#ff8ca4}
html[data-theme="dark"] .student-portal .status-pill.is-unpaid{background:#402f14;color:#ffd071}
html[data-theme="dark"] .student-portal .status-pill.is-cancelled{background:#351c4c;color:#d19bff}
html[data-theme="dark"] .student-portal .status-pill.is-inactive{background:#422514;color:#ffad78}
html[data-theme="dark"] .student-portal .status-pill.is-active{background:#123a30;color:#63e8be}
html[data-theme="dark"] .student-portal .subscription-action-card.is-expired,html[data-theme="dark"] .student-portal .subscription-card.is-expired{background:linear-gradient(110deg,var(--tg-surface),rgba(79,22,41,.48))!important}
html[data-theme="dark"] .student-portal .subscription-action-card.is-unpaid,html[data-theme="dark"] .student-portal .subscription-card.is-unpaid{background:linear-gradient(110deg,var(--tg-surface),rgba(73,49,12,.44))!important}
html[data-theme="dark"] .student-portal .subscription-action-card.is-cancelled,html[data-theme="dark"] .student-portal .subscription-card.is-cancelled{background:linear-gradient(110deg,var(--tg-surface),rgba(59,28,83,.44))!important}
@media(max-width:600px){.subscription-action-card .content-heading{align-items:flex-start;flex-direction:column}.subscription-action-card .content-heading>.status-pill{align-self:flex-start}}
@media(prefers-reduced-motion:reduce){.status-pill{animation:none}}
