.student-dashboard-card[hidden]{display:none!important}.student-dashboard-card--standard{overflow:hidden}.student-dashboard-card--standard .student-dashboard-card__visual{position:relative}.student-dashboard-card--standard .student-dashboard-card__visual:after{z-index:1;background:linear-gradient(0deg,rgba(2,8,14,.58),rgba(2,8,14,.08) 66%,transparent)}.student-dashboard-card--standard .student-dashboard-card__visual>img{position:relative;z-index:0;display:block;width:100%;height:100%;object-fit:cover}.student-dashboard-card--standard .student-dashboard-card__visual>strong{display:none}.student-dashboard-card__ribbon{position:absolute;z-index:4;top:18px;right:-44px;display:flex;align-items:center;justify-content:center;width:170px;min-height:28px;padding:.42rem .7rem;background:var(--training-accent,var(--trip-accent,var(--odin-accent-1,var(--odin-info))));color:#06111c;font-size:.69rem;font-weight:950;letter-spacing:.075em;line-height:1;text-align:center;text-transform:uppercase;transform:rotate(45deg);transform-origin:center;box-shadow:0 2px 8px rgba(0,0,0,.22);white-space:nowrap}.student-dashboard-card--standard .student-dashboard-card__body{display:flex;flex-direction:column;gap:.58rem}.student-dashboard-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem}.student-dashboard-card__heading h3{min-width:0;margin:0;color:var(--odin-text,#f4f8fb);font-size:1.05rem;font-weight:900;line-height:1.18}.student-dashboard-card__status{display:none!important}.student-dashboard-card__status-badge{flex:0 0 auto;max-width:46%;padding:.28rem .48rem;border:1px solid color-mix(in srgb,var(--training-accent,var(--trip-accent,var(--odin-accent-1,var(--odin-info)))) 45%,var(--odin-line));border-radius:999px;background:color-mix(in srgb,var(--training-accent,var(--trip-accent,var(--odin-accent-1,var(--odin-info)))) 12%,transparent);color:var(--odin-text,#f4f8fb);font-size:.64rem;font-weight:850;line-height:1.15;text-align:center}.student-dashboard-card__location{display:none!important}.student-dashboard-card__location-line{display:flex;align-items:center;gap:.45rem;color:var(--sd-muted);font-size:.74rem;line-height:1.35}.student-dashboard-card__location-flag{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:.18rem .32rem;border:1px solid var(--odin-line);border-radius:.35rem;background:rgba(255,255,255,.035);font-size:.9rem;font-weight:400}.student-dashboard-card__description{margin:0;color:var(--sd-muted);font-size:.78rem;line-height:1.48}.student-dashboard-card__progress-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-top:.08rem;font-size:.74rem;font-weight:800}.student-progress-tooltip__trigger{padding:0;border:0;background:transparent;color:var(--odin-accent-1,var(--odin-info));font:inherit;font-weight:400;text-align:left;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.student-dashboard-card__progress-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem}.student-dashboard-card--standard .student-dashboard-card__progress-row .progress{height:5px;margin:0;overflow:hidden;background:rgba(255,255,255,.08)}.student-dashboard-card--standard .student-dashboard-card__progress-row b{font-size:.74rem}.student-cost-breakdown{margin-top:.12rem;border-top:1px solid var(--odin-line)}.student-cost-breakdown summary{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.62rem 0 .18rem;color:var(--odin-accent-1,var(--odin-info));font-size:.76rem;font-weight:850;cursor:pointer;list-style:none}.student-cost-breakdown summary::-webkit-details-marker{display:none}.student-cost-breakdown__content{padding-top:.55rem}.student-cost-breakdown .table{--bs-table-bg:transparent;--bs-table-color:inherit;--bs-table-border-color:var(--odin-line);font-size:.74rem}.student-cost-breakdown .table td{padding:.42rem .25rem}.student-cost-breakdown .table td small{display:block;margin-top:.2rem;font-size:.7rem;line-height:1.4;color:var(--sd-muted)}.student-cost-breakdown .table td:last-child{min-width:90px}.student-estimated-total{display:grid;grid-template-columns:1fr auto;align-items:end;gap:.15rem .75rem;margin-top:.7rem;padding:.78rem .82rem;border:1px solid color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 48%,var(--odin-line));border-radius:.62rem;background:linear-gradient(135deg,color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 13%,var(--sd-surface-2)),rgba(255,255,255,.02))}.student-estimated-total>span{color:var(--sd-muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.student-estimated-total strong{grid-row:1/3;grid-column:2;color:var(--odin-text);font-size:1.22rem;font-weight:950}.student-estimated-total em{color:var(--sd-muted);font-size:.66rem;font-style:normal}[data-bs-theme="light"] .student-estimated-total strong{color:#0f172a}.student-organizer-info{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.65rem;align-items:center;padding:.72rem .78rem;border:1px solid var(--odin-line);border-radius:.58rem}.student-organizer-info>i{color:var(--odin-accent-1,var(--odin-info));font-size:.9rem}.student-organizer-info strong{display:block;margin-bottom:.12rem;font-size:.72rem}.student-organizer-info span{display:block;color:var(--sd-muted);font-size:.7rem}.student-organizer-info__cta{white-space:nowrap;font-size:.7rem;font-weight:850}.student-card-actionbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.62rem;border-top:1px solid var(--odin-line)}.student-card-actionbar__status{display:inline-flex;align-items:center;gap:.45rem;font-size:.73rem;font-weight:850}.student-card-actionbar__status>i{width:9px;height:9px;border-radius:50%;background:#42c98b}.student-card-actionbar .btn-group{flex:0 0 auto}.student-card-actionbar .btn{min-width:86px;font-size:.7rem;font-weight:800}.student-card-short-info{display:flex;align-items:stretch;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-top:1px solid var(--odin-line);border-bottom:1px solid var(--odin-line)}.student-card-short-info::-webkit-scrollbar{display:none}.student-card-short-info__item{position:relative;display:flex;align-items:center;gap:.5rem;flex:0 0 auto;min-width:155px;padding:.58rem .75rem;scroll-snap-align:start}.student-card-short-info__item+.student-card-short-info__item:before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:1px;background:var(--odin-line)}.student-card-short-info__item small,.student-card-short-info__item strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-card-short-info__item small{color:var(--sd-muted);font-size:.6rem;text-transform:uppercase}.student-card-short-info__item strong{font-size:.69rem}.student-dashboard-card__visual-meta{position:absolute;z-index:3;left:.85rem;right:.85rem;bottom:.8rem;display:flex!important;flex-direction:column!important;gap:.3rem;padding:.58rem .65rem;border-radius:.42rem;background:rgba(2,8,14,.32);color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.8);backdrop-filter:blur(3px);pointer-events:none}.student-dashboard-card__visual-meta>strong{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;display:block!important;order:1!important;margin:0;font-size:1rem;font-weight:850;line-height:1.25;text-transform:uppercase}.student-dashboard-card__visual-location{display:flex!important;order:2!important;align-items:flex-start;gap:.4rem;margin:0;font-size:.73rem;line-height:1.35}.student-dashboard-card__visual-flag{display:none;flex:0 0 auto;font-size:.92rem;font-weight:400;line-height:1.25}.student-dashboard-card__visual-meta>small{display:block!important;order:3!important;margin:0;padding-top:.05rem;color:rgba(255,255,255,.78);font-size:.67rem;font-weight:650;line-height:1.3}.student-card-popover{position:fixed;width:min(360px,calc(100vw - 16px));max-height:calc(100dvh - 16px);overflow:auto;padding:.85rem;border:1px solid var(--odin-line);border-radius:.55rem;background:var(--sd-surface-2,#07131f);color:var(--odin-text,#eaf3f8);box-shadow:0 14px 34px rgba(0,0,0,.35);font-size:.78rem}.student-card-popover h4,.student-cost-breakdown__content h4{margin:0 0 .6rem;font-size:.85rem;font-weight:500}.student-card-popover ul{margin:0;padding-left:1.15rem}.student-card-collection.is-list .student-dashboard-card--standard{grid-template-columns:220px minmax(0,1fr)}.student-card-collection.is-list .student-dashboard-card--standard .student-dashboard-card__visual{aspect-ratio:auto;min-height:100%}.student-card-collection.is-list .student-dashboard-card--standard .student-dashboard-card__visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.student-card-collection.is-list .student-dashboard-card--standard .student-dashboard-card__body{padding:.85rem 1rem}@media(max-width:767.98px){.student-dashboard-card[hidden]{display:none!important}.student-dashboard-card__heading{align-items:center}.student-dashboard-card__status-badge{max-width:50%;font-size:.6rem}.student-dashboard-card__location-flag{min-width:0;padding:0;border:0;background:transparent}.student-dashboard-card__visual-meta{left:.65rem;right:.65rem;bottom:.6rem;gap:.24rem;padding:.5rem .55rem}.student-dashboard-card__visual-meta>strong{font-size:.92rem}.student-dashboard-card__visual-location{font-size:.68rem}.student-dashboard-card__visual-flag{display:inline-flex}.student-dashboard-card__visual-meta>small{font-size:.63rem}.student-dashboard-card__progress-head{align-items:flex-start;flex-direction:column}.student-estimated-total{grid-template-columns:1fr}.student-estimated-total strong{grid-row:auto;grid-column:auto}.student-organizer-info{grid-template-columns:auto minmax(0,1fr)}.student-organizer-info__cta{grid-column:1/-1;width:100%}.student-card-actionbar{align-items:stretch;flex-direction:column}.student-card-actionbar .btn-group{width:100%}.student-card-actionbar .btn{flex:1}.student-card-short-info__item{min-width:145px}.student-card-collection.is-list .student-dashboard-card--standard{display:block}.student-card-collection.is-list .student-dashboard-card--standard[hidden]{display:none!important}.student-card-collection.is-list .student-dashboard-card--standard .student-dashboard-card__visual{aspect-ratio:16/9;min-height:0}.student-card-collection.is-list .student-dashboard-card--standard .student-dashboard-card__visual img{position:static;width:100%;height:100%;object-fit:cover}}
/* Compact grid cards keep organizer copy readable without covering the footer accent. */
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info{grid-template-columns:auto minmax(0,1fr)}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta{grid-column:1/-1;justify-self:end;width:max-content;max-width:100%;min-width:0}
.student-dashboard-card--standard .student-card-short-info{position:relative;z-index:1}

/* Stitched card footer and equal action rows. */
.student-dashboard-card--standard .student-dashboard-card__body{--student-card-footer-inline:.7rem;padding-bottom:0!important}
.student-card-collection.is-list .student-dashboard-card--standard .student-dashboard-card__body{--student-card-footer-inline:1rem;padding-bottom:0!important}
.student-dashboard-card--standard .student-card-actionbar{box-sizing:border-box;min-height:3.25rem}
.student-dashboard-card--standard .student-card-actionbar .btn-group{align-self:center}
.student-dashboard-card--standard .student-card-actionbar .btn{min-height:2rem;border-color:var(--odin-accent-1,var(--odin-info));font-weight:850}
.student-dashboard-card--standard .student-card-actionbar .btn-outline-secondary{background:transparent;color:var(--odin-accent-1,var(--odin-info))}
.student-dashboard-card--standard .student-card-actionbar .btn-outline-secondary:hover,.student-dashboard-card--standard .student-card-actionbar .btn-outline-secondary:focus-visible{background:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 14%,transparent);color:var(--odin-text,#f4f8fb)}
.student-dashboard-card--standard .student-card-actionbar .btn-info{background:var(--odin-accent-1,var(--odin-info));border-color:var(--odin-accent-1,var(--odin-info));color:#06111c}
.student-dashboard-card--standard .student-card-actionbar .btn-info:hover,.student-dashboard-card--standard .student-card-actionbar .btn-info:focus-visible{background:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 84%,#fff);border-color:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 84%,#fff);color:#06111c}
.student-dashboard-card--standard .student-card-short-info{margin-top:auto!important;margin-right:calc(-1 * var(--student-card-footer-inline));margin-bottom:0;margin-left:calc(-1 * var(--student-card-footer-inline));border-bottom:0;background:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 5%,var(--sd-surface-2));border-radius:0 0 .6rem .6rem}
@media(max-width:767.98px){.student-dashboard-card--standard .student-card-actionbar{min-height:5.4rem}.student-dashboard-card--standard .student-card-actionbar .btn-group{align-self:stretch}}

.student-card-collection:not(.is-list) .student-dashboard-card--standard{display:flex;flex-direction:column}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-dashboard-card__body{flex:1}

.student-dashboard-card--standard .student-organizer-info__cta{justify-self:end;width:max-content;max-width:100%}

/* Keep status and compact action buttons in one row at every viewport. */
@media(max-width:767.98px){
.student-dashboard-card--standard .student-card-actionbar{min-height:3.25rem;height:auto;align-items:center;flex-direction:row;gap:.5rem}
.student-dashboard-card--standard .student-card-actionbar .btn-group{width:auto;max-width:100%;margin-left:auto;align-self:center;flex:0 0 auto}
.student-dashboard-card--standard .student-card-actionbar .btn{min-width:0;flex:0 0 auto;padding-right:.55rem;padding-left:.55rem;white-space:nowrap}
.student-dashboard-card--standard .student-card-actionbar__status{min-width:0;flex:1 1 auto}
}

/* Organizer CTA becomes the stitched footer in compact grid cards. */
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info{
overflow:hidden;
padding-bottom:0
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta{
grid-column:1/-1;
justify-self:stretch;
width:auto;
max-width:none;
min-height:2.5rem;
margin:.08rem -.78rem 0;
border-width:1px 0 0;
border-radius:0
}
@media(max-width:767.98px){
.student-dashboard-card--standard .student-organizer-info{
overflow:hidden;
padding-bottom:0
}
.student-dashboard-card--standard .student-organizer-info__cta{
grid-column:1/-1;
justify-self:stretch;
width:auto;
max-width:none;
min-height:2.5rem;
margin:.08rem -.78rem 0;
border-width:1px 0 0;
border-radius:0
}
}

/* Align the stitched CTA icon and copy with the notice columns above. */
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta{
display:grid;
grid-template-columns:auto minmax(0,1fr);
align-items:center;
gap:.65rem;
padding-right:.78rem;
padding-left:.78rem;
text-align:left
}
@media(max-width:767.98px){
.student-dashboard-card--standard .student-organizer-info__cta{
display:grid;
grid-template-columns:auto minmax(0,1fr);
align-items:center;
gap:.65rem;
padding-right:.78rem;
padding-left:.78rem;
text-align:left
}
}

/* Shared icon rail: identical margins, divider and vertical axis in notice and CTA. */
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info{
grid-template-columns:auto minmax(0,1fr);
gap:0;
padding:0
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info>i{
align-self:stretch;
display:grid;
place-items:center;
padding-right:.78rem;
padding-left:.78rem;
border-right:1px solid var(--odin-line)
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info>div{
padding:.72rem .78rem
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta{
grid-template-columns:auto minmax(0,1fr);
gap:0;
margin:0;
padding:0
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta>i{
align-self:stretch;
display:grid;
place-items:center;
padding-right:.78rem;
padding-left:.78rem;
border-right:1px solid color-mix(in srgb,#06111c 30%,transparent)
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta>span{
padding:.45rem .78rem;
text-align:left
}
@media(max-width:767.98px){
.student-dashboard-card--standard .student-organizer-info{
grid-template-columns:auto minmax(0,1fr);
gap:0;
padding:0
}
.student-dashboard-card--standard .student-organizer-info>i{
align-self:stretch;
display:grid;
place-items:center;
padding-right:.78rem;
padding-left:.78rem;
border-right:1px solid var(--odin-line)
}
.student-dashboard-card--standard .student-organizer-info>div{
padding:.72rem .78rem
}
.student-dashboard-card--standard .student-organizer-info__cta{
grid-template-columns:auto minmax(0,1fr);
gap:0;
margin:0;
padding:0
}
.student-dashboard-card--standard .student-organizer-info__cta>i{
align-self:stretch;
display:grid;
place-items:center;
padding-right:.78rem;
padding-left:.78rem;
border-right:1px solid color-mix(in srgb,#06111c 30%,transparent)
}
.student-dashboard-card--standard .student-organizer-info__cta>span{
padding:.45rem .78rem;
text-align:left
}
}

/* Preserve vertical rhythm; adjust only the shared horizontal icon rail. */
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info{
padding:.72rem 0 0
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info>div{
padding:0 .78rem
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta{
margin:.08rem 0 0;
padding:var(--bs-btn-padding-y,.25rem) 0
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta>span{
padding:0 .78rem
}
@media(max-width:767.98px){
.student-dashboard-card--standard .student-organizer-info{
padding:.72rem 0 0
}
.student-dashboard-card--standard .student-organizer-info>div{
padding:0 .78rem
}
.student-dashboard-card--standard .student-organizer-info__cta{
margin:.08rem 0 0;
padding:var(--bs-btn-padding-y,.25rem) 0
}
.student-dashboard-card--standard .student-organizer-info__cta>span{
padding:0 .78rem
}
}

/* Fixed icon column prevents different Font Awesome glyph widths from shifting alignment. */
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info{
--organizer-icon-rail:2.46rem;
grid-template-columns:var(--organizer-icon-rail) minmax(0,1fr)
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info>i{
box-sizing:border-box;
width:var(--organizer-icon-rail);
padding-right:0;
padding-left:0
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info>div{
padding-right:.78rem;
padding-bottom:.72rem;
padding-left:.65rem
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta{
grid-template-columns:var(--organizer-icon-rail) minmax(0,1fr);
padding-right:0;
padding-left:0
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta>i{
box-sizing:border-box;
width:var(--organizer-icon-rail);
padding-right:0;
padding-left:0
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta>span{
padding-right:.78rem;
padding-left:.65rem
}
@media(max-width:767.98px){
.student-dashboard-card--standard .student-organizer-info{
--organizer-icon-rail:2.46rem;
grid-template-columns:var(--organizer-icon-rail) minmax(0,1fr)
}
.student-dashboard-card--standard .student-organizer-info>i{
box-sizing:border-box;
width:var(--organizer-icon-rail);
padding-right:0;
padding-left:0
}
.student-dashboard-card--standard .student-organizer-info>div{
padding-right:.78rem;
padding-bottom:.72rem;
padding-left:.65rem
}
.student-dashboard-card--standard .student-organizer-info__cta{
grid-template-columns:var(--organizer-icon-rail) minmax(0,1fr);
padding-right:0;
padding-left:0
}
.student-dashboard-card--standard .student-organizer-info__cta>i{
box-sizing:border-box;
width:var(--organizer-icon-rail);
padding-right:0;
padding-left:0
}
.student-dashboard-card--standard .student-organizer-info__cta>span{
padding-right:.78rem;
padding-left:.65rem
}
}

/* Compensate for the button's own horizontal padding in the shared icon rail. */
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info{
--organizer-button-pad-x:var(--bs-btn-padding-x,.5rem);
--organizer-icon-cell:2.46rem;
grid-template-columns:calc(var(--organizer-button-pad-x) + var(--organizer-icon-cell)) minmax(0,1fr)
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info>i{
width:calc(var(--organizer-button-pad-x) + var(--organizer-icon-cell));
padding-right:0;
padding-left:var(--organizer-button-pad-x)
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta{
grid-template-columns:var(--organizer-icon-cell) minmax(0,1fr);
padding-right:var(--organizer-button-pad-x);
padding-left:var(--organizer-button-pad-x)
}
.student-card-collection:not(.is-list) .student-dashboard-card--standard .student-organizer-info__cta>i{
width:var(--organizer-icon-cell)
}
@media(max-width:767.98px){
.student-dashboard-card--standard .student-organizer-info{
--organizer-button-pad-x:var(--bs-btn-padding-x,.5rem);
--organizer-icon-cell:2.46rem;
grid-template-columns:calc(var(--organizer-button-pad-x) + var(--organizer-icon-cell)) minmax(0,1fr)
}
.student-dashboard-card--standard .student-organizer-info>i{
width:calc(var(--organizer-button-pad-x) + var(--organizer-icon-cell));
padding-right:0;
padding-left:var(--organizer-button-pad-x)
}
.student-dashboard-card--standard .student-organizer-info__cta{
grid-template-columns:var(--organizer-icon-cell) minmax(0,1fr);
padding-right:var(--organizer-button-pad-x);
padding-left:var(--organizer-button-pad-x)
}
.student-dashboard-card--standard .student-organizer-info__cta>i{
width:var(--organizer-icon-cell)
}
}

/* Project accent colors for the organizer CTA only. */
.student-dashboard-card--standard .student-organizer-info__cta.btn-info{
--bs-btn-bg:var(--odin-accent-1,var(--odin-info));
--bs-btn-border-color:var(--odin-accent-1,var(--odin-info));
--bs-btn-color:#06111c;
--bs-btn-hover-bg:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 84%,#fff);
--bs-btn-hover-border-color:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 84%,#fff);
--bs-btn-hover-color:#06111c;
--bs-btn-active-bg:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 76%,#000);
--bs-btn-active-border-color:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 76%,#000);
--bs-btn-active-color:#06111c;
background-color:var(--odin-accent-1,var(--odin-info));
border-color:var(--odin-accent-1,var(--odin-info));
color:#06111c
}
.student-dashboard-card--standard .student-organizer-info__cta.btn-info :is(i,span,strong,small){
color:inherit
}
.student-dashboard-card--standard .student-organizer-info__cta.btn-info:hover,
.student-dashboard-card--standard .student-organizer-info__cta.btn-info:focus-visible{
background-color:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 84%,#fff);
border-color:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 84%,#fff);
color:#06111c
}
.student-dashboard-card--standard .student-organizer-info__cta.btn-info:active{
background-color:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 76%,#000);
border-color:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 76%,#000);
color:#06111c
}


/* Keep the icon/text separator visible on the accent organizer CTA. */
.student-dashboard-card--standard .student-organizer-info__cta.btn-info>i{
box-sizing:border-box;
align-self:stretch;
display:grid;
place-items:center;
border-right:1px solid rgba(6,17,28,.36)
}


/* User-specific occurrence status: semantic diode with an icon and optional action. */
.student-dashboard-card--training-standard .student-card-actionbar__status{
  --student-status-color:#42c98b;
  display:inline-grid;
  grid-template-columns:1.45rem minmax(0,1fr);
  align-items:center;
  gap:.5rem;
  min-width:0;
  color:var(--odin-text,#f4f8fb);
  text-decoration:none
}
.student-dashboard-card--training-standard .student-card-actionbar__status>i{
  display:grid;
  place-items:center;
  width:1.45rem;
  height:1.45rem;
  border:1px solid color-mix(in srgb,var(--student-status-color) 78%,#fff);
  border-radius:50%;
  background:color-mix(in srgb,var(--student-status-color) 22%,transparent);
  color:var(--student-status-color);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--student-status-color) 10%,transparent);
  font-size:.62rem
}
.student-dashboard-card--training-standard .student-card-actionbar__status>span{
  min-width:0
}
.student-dashboard-card--training-standard .student-card-actionbar__status strong,
.student-dashboard-card--training-standard .student-card-actionbar__status small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.student-dashboard-card--training-standard .student-card-actionbar__status strong{
  font-size:.73rem;
  line-height:1.15
}
.student-dashboard-card--training-standard .student-card-actionbar__status small{
  margin-top:.12rem;
  color:var(--sd-muted);
  font-size:.62rem;
  font-weight:650;
  line-height:1.15
}
.student-dashboard-card--training-standard .student-card-actionbar__status.is-action_required{--student-status-color:#ff5b67}
.student-dashboard-card--training-standard .student-card-actionbar__status.is-needs_completion{--student-status-color:#ff9f43}
.student-dashboard-card--training-standard .student-card-actionbar__status.is-pending_review{--student-status-color:#43a5ff}
.student-dashboard-card--training-standard .student-card-actionbar__status.is-ready{--student-status-color:#25c7c7}
.student-dashboard-card--training-standard .student-card-actionbar__status.is-in_progress{--student-status-color:#42c98b}
.student-dashboard-card--training-standard .student-card-actionbar__status.is-paused{--student-status-color:#f0c94d}
.student-dashboard-card--training-standard .student-card-actionbar__status.is-completed{--student-status-color:#94a3b8}
.student-dashboard-card--training-standard .student-card-actionbar__status.is-cancelled{--student-status-color:#b42332}
.student-dashboard-card--training-standard a.student-card-actionbar__status:hover strong,
.student-dashboard-card--training-standard a.student-card-actionbar__status:focus-visible strong{
  color:var(--student-status-color);
  text-decoration:underline;
  text-underline-offset:2px
}
.student-dashboard-card--training-standard .student-card-actionbar__status.is-action_required>i{
  animation:student-status-pulse 1.8s ease-out infinite
}
@keyframes student-status-pulse{
  0%,45%{box-shadow:0 0 0 3px color-mix(in srgb,var(--student-status-color) 12%,transparent)}
  75%,100%{box-shadow:0 0 0 8px transparent}
}
@media(prefers-reduced-motion:reduce){
  .student-dashboard-card--training-standard .student-card-actionbar__status.is-action_required>i{animation:none}
}


/* Cost summary outside the expandable breakdown; supports separate currency totals. */
.student-dashboard-card--standard .student-cost-breakdown + .student-estimated-total{margin-top:.55rem}
.student-dashboard-card--standard .student-estimated-total__values{
  grid-column:2;
  grid-row:1/3;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:.2rem
}
.student-dashboard-card--standard .student-estimated-total__values strong{
  grid-row:auto;
  grid-column:auto;
  line-height:1.05;
  white-space:nowrap
}
.student-dashboard-card--standard .student-cost-breakdown__empty{
  margin:0;
  padding:.7rem .8rem;
  color:var(--sd-muted);
  font-size:.75rem
}
@media(max-width:575.98px){
  .student-dashboard-card--standard .student-estimated-total__values{
    grid-column:1;
    grid-row:auto;
    align-items:flex-start
  }
  .student-dashboard-card--standard .student-estimated-total em{grid-column:1}
}


/* Settlement-style cost presentation. */
.student-dashboard-card--standard .student-cost-breakdown{
  margin-top:.2rem;
  border-top:1px solid color-mix(in srgb,var(--odin-line) 72%,transparent)
}
.student-dashboard-card--standard .student-cost-breakdown summary{
  padding:.65rem .1rem .38rem;
  color:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 78%,var(--odin-text));
  font-size:.73rem;
  font-weight:750
}
.student-dashboard-card--standard .student-cost-breakdown summary i{
  color:var(--sd-muted);
  font-size:.66rem;
  transition:transform .2s ease
}
.student-dashboard-card--standard .student-cost-breakdown[open] summary i{transform:rotate(180deg)}
.student-dashboard-card--standard .student-cost-breakdown__content{
  margin-top:.25rem;
  padding:.78rem .82rem;
  border:1px solid color-mix(in srgb,var(--odin-line) 78%,transparent);
  border-radius:.58rem;
  background:color-mix(in srgb,var(--sd-surface-2) 94%,var(--odin-accent-1,var(--odin-info)) 6%)
}
.student-dashboard-card--standard .student-cost-breakdown__content h4{
  margin:0 0 .42rem;
  color:var(--sd-muted);
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.045em;
  text-transform:uppercase
}
.student-dashboard-card--standard .student-cost-settlement{display:grid}
.student-dashboard-card--standard .student-cost-settlement__item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:.6rem;
  padding:.62rem 0
}
.student-dashboard-card--standard .student-cost-settlement__item + .student-cost-settlement__item{
  border-top:1px solid color-mix(in srgb,var(--odin-line) 62%,transparent)
}
.student-dashboard-card--standard .student-cost-settlement__copy{min-width:0}
.student-dashboard-card--standard .student-cost-settlement__copy>strong{
  display:block;
  font-size:.75rem;
  font-weight:750;
  line-height:1.3
}
.student-dashboard-card--standard .student-cost-settlement__copy>small{
  display:block;
  margin-top:.12rem;
  color:var(--sd-muted);
  font-size:.67rem;
  line-height:1.35
}
.student-dashboard-card--standard .student-cost-settlement__item>b{
  align-self:start;
  color:var(--odin-text);
  font-size:.78rem;
  font-weight:800;
  white-space:nowrap
}
.student-dashboard-card--standard .student-cost-settlement__status{
  display:inline-flex;
  align-items:center;
  gap:.28rem;
  margin-top:.3rem;
  color:var(--sd-muted);
  font-size:.61rem;
  font-weight:700
}
.student-dashboard-card--standard .student-cost-settlement__status:before{
  width:.38rem;
  height:.38rem;
  border-radius:50%;
  background:currentColor;
  content:""
}
.student-dashboard-card--standard .student-cost-settlement__status.is-included{
  color:color-mix(in srgb,#42c98b 78%,var(--odin-text))
}
.student-dashboard-card--standard .student-estimated-total{
  align-items:center;
  margin-top:.48rem;
  padding:.66rem .74rem;
  border:1px solid color-mix(in srgb,var(--odin-line) 78%,transparent);
  border-left:3px solid color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 64%,var(--odin-line));
  border-radius:.46rem;
  background:color-mix(in srgb,var(--sd-surface-2) 96%,var(--odin-accent-1,var(--odin-info)) 4%);
  box-shadow:none
}
.student-dashboard-card--standard .student-estimated-total>span{
  color:var(--odin-text);
  font-size:.66rem;
  font-weight:750;
  letter-spacing:.02em;
  text-transform:none
}
.student-dashboard-card--standard .student-estimated-total__values{gap:.12rem}
.student-dashboard-card--standard .student-estimated-total__values strong{
  font-size:1rem;
  font-weight:850
}
.student-dashboard-card--standard .student-estimated-total em{
  max-width:32rem;
  font-size:.61rem;
  line-height:1.3
}
@media(max-width:575.98px){
  .student-dashboard-card--standard .student-cost-settlement__item{align-items:start}
  .student-dashboard-card--standard .student-estimated-total{gap:.3rem}
}


/* Open cost settlement without nested boxes. */
.student-dashboard-card--standard .student-cost-breakdown__content{
  margin-top:.18rem;
  padding:.55rem .1rem .12rem;
  border:0;
  border-radius:0;
  background:transparent
}
.student-dashboard-card--standard .student-cost-breakdown__content h4{
  margin-bottom:.28rem;
  padding-bottom:.42rem;
  border-bottom:1px solid color-mix(in srgb,var(--odin-line) 62%,transparent)
}
.student-dashboard-card--standard .student-cost-settlement__item{
  padding:.58rem .1rem
}
.student-dashboard-card--standard .student-estimated-total{
  margin-top:.32rem;
  padding:.64rem .1rem .24rem;
  border:0;
  border-top:1px solid color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 42%,var(--odin-line));
  border-left:0;
  border-radius:0;
  background:transparent
}


/* Refined spacing and hierarchy for the open cost settlement. */
.student-dashboard-card--standard .student-cost-breakdown{
  margin-top:.12rem
}
.student-dashboard-card--standard .student-cost-breakdown summary{
  padding:.56rem .5rem .22rem
}
.student-dashboard-card--standard .student-cost-breakdown__content{
  margin-top:.08rem;
  padding:.46rem .5rem .08rem
}
.student-dashboard-card--standard .student-cost-breakdown__content h4{
  margin-bottom:.18rem;
  padding-bottom:.38rem
}
.student-dashboard-card--standard .student-cost-settlement__item{
  padding:.54rem 0
}
.student-dashboard-card--standard .student-cost-breakdown + .student-estimated-total{
  margin-top:.08rem
}
.student-dashboard-card--standard .student-estimated-total{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:.12rem .8rem;
  margin-top:.08rem;
  padding:.58rem .5rem .5rem
}
.student-dashboard-card--standard .student-estimated-total>span{
  grid-column:1;
  grid-row:1;
  line-height:1.25
}
.student-dashboard-card--standard .student-estimated-total__values{
  grid-column:2;
  grid-row:1/3;
  align-items:flex-end
}
.student-dashboard-card--standard .student-estimated-total em{
  grid-column:1;
  grid-row:2;
  margin-top:.04rem
}
@media(max-width:575.98px){
  .student-dashboard-card--standard .student-cost-breakdown summary{
    padding-right:.42rem;
    padding-left:.42rem
  }
  .student-dashboard-card--standard .student-cost-breakdown__content{
    padding-right:.42rem;
    padding-left:.42rem
  }
  .student-dashboard-card--standard .student-estimated-total{
    grid-template-columns:minmax(0,1fr) auto;
    gap:.14rem .55rem;
    padding-right:.42rem;
    padding-left:.42rem
  }
  .student-dashboard-card--standard .student-estimated-total__values{
    grid-column:2;
    grid-row:1/3;
    align-items:flex-end
  }
  .student-dashboard-card--standard .student-estimated-total em{
    grid-column:1;
    grid-row:2
  }
}


/* Organizer notices slider with dot pagination. */
.student-dashboard-card--standard .student-organizer-slider{
  min-width:0
}
.student-dashboard-card--standard .student-organizer-slider__track{
  display:grid;
  min-width:0
}
.student-dashboard-card--standard .student-organizer-slider__slide{
  grid-area:1/1;
  min-width:0
}
.student-dashboard-card--standard .student-organizer-slider__slide[hidden]{
  display:none!important
}
.student-dashboard-card--standard .student-organizer-slider__pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.42rem;
  min-height:1.35rem;
  padding:.35rem .4rem .1rem
}
.student-dashboard-card--standard .student-organizer-slider__dot{
  width:.42rem;
  height:.42rem;
  padding:0;
  border:0;
  border-radius:50%;
  background:color-mix(in srgb,var(--sd-muted) 48%,transparent);
  box-shadow:none;
  transition:width .18s ease,background-color .18s ease,opacity .18s ease;
  cursor:pointer
}
.student-dashboard-card--standard .student-organizer-slider__dot:hover,
.student-dashboard-card--standard .student-organizer-slider__dot:focus-visible{
  background:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 72%,var(--sd-muted))
}
.student-dashboard-card--standard .student-organizer-slider__dot.is-active{
  width:1.05rem;
  border-radius:999px;
  background:var(--odin-accent-1,var(--odin-info))
}
.student-dashboard-card--standard .student-organizer-slider__dot.is-resolved{
  opacity:.24;
  cursor:default
}
.student-dashboard-card--standard .student-organizer-slider__dot:focus-visible{
  outline:2px solid color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 62%,transparent);
  outline-offset:3px
}


/* Four plain-language settlement statuses. */
.student-dashboard-card--standard .student-cost-settlement__status.is-in-price{
  color:color-mix(in srgb,#42c98b 78%,var(--odin-text))
}
.student-dashboard-card--standard .student-cost-settlement__status.is-due{
  color:color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 82%,var(--odin-text))
}
.student-dashboard-card--standard .student-cost-settlement__status.is-separate{
  color:var(--sd-muted)
}
.student-dashboard-card--standard .student-cost-settlement__status.is-optional{
  color:color-mix(in srgb,#f0c94d 76%,var(--odin-text))
}


/* Settlement ledger: obligations, payments and remaining balance. */
.student-dashboard-card--standard .student-cost-settlement__header,
.student-dashboard-card--standard .student-cost-settlement__item{
  display:grid;
  grid-template-columns:minmax(150px,1fr) repeat(3,minmax(76px,auto));
  gap:.7rem;
  align-items:center
}
.student-dashboard-card--standard .student-cost-settlement__header{
  padding:.34rem 0;
  border-bottom:1px solid color-mix(in srgb,var(--odin-line) 70%,transparent);
  color:var(--sd-muted);
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.035em;
  text-transform:uppercase
}
.student-dashboard-card--standard .student-cost-settlement__header span:not(:first-child){text-align:right}
.student-dashboard-card--standard .student-cost-settlement__item>b{
  align-self:center;
  text-align:right
}
.student-dashboard-card--standard .student-cost-settlement__item>b.is-paid{
  color:color-mix(in srgb,#42c98b 82%,var(--odin-text))
}
.student-dashboard-card--standard .student-cost-settlement__item>b.is-remaining{
  color:color-mix(in srgb,#f0c94d 76%,var(--odin-text))
}
.student-dashboard-card--standard .student-settlement-summary{
  margin-top:.08rem;
  padding:.56rem .5rem .45rem;
  border-top:1px solid color-mix(in srgb,var(--odin-accent-1,var(--odin-info)) 42%,var(--odin-line))
}
.student-dashboard-card--standard .student-settlement-summary__title{
  display:block;
  margin-bottom:.42rem;
  color:var(--odin-text);
  font-size:.67rem;
  font-weight:800
}
.student-dashboard-card--standard .student-settlement-summary__currency{
  display:grid;
  grid-template-columns:auto repeat(3,minmax(0,1fr));
  gap:.55rem;
  align-items:end
}
.student-dashboard-card--standard .student-settlement-summary__currency + .student-settlement-summary__currency{
  margin-top:.45rem;
  padding-top:.45rem;
  border-top:1px solid color-mix(in srgb,var(--odin-line) 48%,transparent)
}
.student-dashboard-card--standard .student-settlement-summary__currency>span{
  align-self:center;
  color:var(--sd-muted);
  font-size:.61rem;
  font-weight:850
}
.student-dashboard-card--standard .student-settlement-summary__currency div{text-align:right}
.student-dashboard-card--standard .student-settlement-summary__currency small,
.student-dashboard-card--standard .student-settlement-summary__currency strong{display:block}
.student-dashboard-card--standard .student-settlement-summary__currency small{
  color:var(--sd-muted);
  font-size:.58rem
}
.student-dashboard-card--standard .student-settlement-summary__currency strong{
  margin-top:.08rem;
  font-size:.79rem;
  white-space:nowrap
}
.student-dashboard-card--standard .student-settlement-summary__currency div:nth-of-type(2) strong{
  color:color-mix(in srgb,#42c98b 82%,var(--odin-text))
}
.student-dashboard-card--standard .student-settlement-summary__currency div:nth-of-type(3) strong{
  color:color-mix(in srgb,#f0c94d 76%,var(--odin-text))
}
.student-dashboard-card--standard .student-settlement-summary__empty{
  margin:0;
  color:var(--sd-muted);
  font-size:.68rem
}
@media(max-width:575.98px){
  .student-dashboard-card--standard .student-cost-settlement__header{display:none}
  .student-dashboard-card--standard .student-cost-settlement__item{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.45rem .35rem
  }
  .student-dashboard-card--standard .student-cost-settlement__copy{grid-column:1/-1}
  .student-dashboard-card--standard .student-cost-settlement__item>b{
    min-width:0;
    text-align:left;
    white-space:normal
  }
  .student-dashboard-card--standard .student-cost-settlement__item>b:before{
    display:block;
    margin-bottom:.1rem;
    color:var(--sd-muted);
    font-size:.55rem;
    font-weight:700;
    content:attr(data-label)
  }
  .student-dashboard-card--standard .student-settlement-summary__currency{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .student-dashboard-card--standard .student-settlement-summary__currency>span{
    grid-column:1/-1
  }
  .student-dashboard-card--standard .student-settlement-summary__currency div{text-align:left}
}


/* Offer estimate stays compact; payment columns belong to real settlements only. */
.student-dashboard-card--standard .student-cost-settlement.is-estimate .student-cost-settlement__item{
  grid-template-columns:minmax(0,1fr) auto
}
.student-dashboard-card--standard .student-cost-settlement.is-estimate .student-cost-settlement__item>b{
  align-self:center;
  text-align:right;
  white-space:nowrap
}
.student-dashboard-card--standard .student-settlement-summary.is-estimate{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:.45rem .75rem
}
.student-dashboard-card--standard .student-settlement-summary.is-estimate .student-settlement-summary__title{
  margin:0
}
.student-dashboard-card--standard .student-estimate-summary__currency{
  display:flex;
  align-items:baseline;
  justify-content:flex-end;
  gap:.35rem
}
.student-dashboard-card--standard .student-estimate-summary__currency + .student-estimate-summary__currency{
  grid-column:2;
  margin-top:.08rem
}
.student-dashboard-card--standard .student-estimate-summary__currency span{
  color:var(--sd-muted);
  font-size:.6rem;
  font-weight:800
}
.student-dashboard-card--standard .student-estimate-summary__currency strong{
  font-size:.86rem;
  white-space:nowrap
}
@media(max-width:575.98px){
  .student-dashboard-card--standard .student-cost-settlement.is-estimate .student-cost-settlement__item{
    grid-template-columns:minmax(0,1fr) auto
  }
  .student-dashboard-card--standard .student-cost-settlement.is-estimate .student-cost-settlement__copy{
    grid-column:auto
  }
  .student-dashboard-card--standard .student-cost-settlement.is-estimate .student-cost-settlement__item>b{
    text-align:right;
    white-space:nowrap
  }
  .student-dashboard-card--standard .student-cost-settlement.is-estimate .student-cost-settlement__item>b:before{
    display:none
  }
}


/* Shared detailed settlement view. Compact dashboard settlement remains unchanged. */
.student-settlement-detailed-module{display:grid;gap:1rem}
.student-settlement-detailed-module__heading h2{margin:.15rem 0 .2rem}
.student-settlement-detailed-module__heading p{margin:0;color:var(--sd-muted)}
.student-settlement-detailed__loading{display:flex;align-items:center;gap:.5rem;color:var(--sd-muted)}
.student-settlement-detailed{display:grid;gap:1rem}
.student-settlement-detailed__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
.student-settlement-detailed__summary article{display:grid;gap:.18rem;padding:1rem;border:1px solid var(--odin-line);border-radius:.65rem;background:var(--sd-surface-2)}
.student-settlement-detailed__summary span{color:var(--sd-muted);font-size:.7rem;font-weight:750}
.student-settlement-detailed__summary strong{font-size:1.32rem}
.student-settlement-detailed__summary small{color:var(--sd-muted);font-size:.68rem}
.student-settlement-detailed__summary .is-paid{border-color:color-mix(in srgb,var(--odin-success,#35bd83) 40%,var(--odin-line))}
.student-settlement-detailed__summary .is-paid strong{color:var(--odin-success,#35bd83)}
.student-settlement-detailed__summary .is-remaining{border-color:color-mix(in srgb,#e7a43b 40%,var(--odin-line))}
.student-settlement-detailed__summary .is-remaining strong{color:#e7a43b}
.student-settlement-detailed__progress{display:grid;gap:.4rem}
.student-settlement-detailed__progress>div{display:flex;justify-content:space-between;color:var(--sd-muted);font-size:.7rem}
.student-settlement-detailed__progress>div strong{color:var(--odin-success,#35bd83)}
.student-settlement-detailed__progress>span{height:7px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--sd-muted) 16%,transparent)}
.student-settlement-detailed__progress>span>i{display:block;height:100%;border-radius:inherit;background:var(--odin-success,#35bd83)}
.student-settlement-detailed__panel{overflow:hidden;border:1px solid var(--odin-line);border-radius:.65rem;background:var(--sd-surface-2)}
.student-settlement-detailed__panel>header{display:flex;align-items:center;gap:.65rem;padding:.8rem 1rem;border-bottom:1px solid var(--odin-line)}
.student-settlement-detailed__panel>header>i{color:var(--odin-accent-1,var(--odin-info))}
.student-settlement-detailed__panel>header span{color:var(--odin-accent-1,var(--odin-info));font-size:.61rem;font-weight:800;letter-spacing:.08em}
.student-settlement-detailed__panel>header h3{margin:.08rem 0 0;font-size:.88rem}
.student-settlement-detailed__panel>header em{margin-left:auto;color:var(--sd-muted);font-size:.68rem;font-style:normal}
.student-settlement-detailed__cost{display:grid;grid-template-columns:minmax(190px,1fr) repeat(3,minmax(85px,.35fr));gap:.75rem;align-items:center;padding:.72rem 1rem;border-bottom:1px solid var(--odin-line)}
.student-settlement-detailed__cost:last-child{border-bottom:0}
.student-settlement-detailed__cost>span{display:grid}
.student-settlement-detailed__cost strong,.student-settlement-detailed__cost b{font-size:.74rem}
.student-settlement-detailed__cost small{color:var(--sd-muted);font-size:.65rem}
.student-settlement-detailed__cost b{text-align:right;white-space:nowrap}
.student-settlement-detailed__cost .is-paid{color:var(--odin-success,#35bd83)}
.student-settlement-detailed__cost .is-remaining{color:#e7a43b}
.student-settlement-detailed__cost.is-heading{color:var(--sd-muted);background:color-mix(in srgb,var(--sd-muted) 6%,transparent);font-size:.6rem;text-transform:uppercase}
.student-settlement-history__row{display:grid;grid-template-columns:90px minmax(160px,1.25fr) 90px 120px minmax(120px,1fr) 90px;gap:.7rem;align-items:center;padding:.72rem 1rem;border-bottom:1px solid var(--odin-line);font-size:.68rem}
.student-settlement-history__row:last-child{border-bottom:0}
.student-settlement-history__row>span{min-width:0}
.student-settlement-history__row>span:nth-child(1),.student-settlement-history__row>span:nth-child(2){display:grid}
.student-settlement-history__row small{color:var(--sd-muted);font-size:.61rem}
.student-settlement-history__row>b{color:var(--odin-success,#35bd83);text-align:right;white-space:nowrap}
.student-settlement-history__row.is-heading{color:var(--sd-muted);background:color-mix(in srgb,var(--sd-muted) 6%,transparent);font-size:.59rem;text-transform:uppercase}
.student-settlement-history__empty{margin:0;padding:1rem;color:var(--sd-muted)}
@media(max-width:767.98px){
 .student-settlement-detailed__summary{grid-template-columns:1fr}
 .student-settlement-detailed__cost{grid-template-columns:1fr 1fr 1fr}
 .student-settlement-detailed__cost>span{grid-column:1/-1}
 .student-settlement-detailed__cost b{text-align:left}
 .student-settlement-detailed__cost b:before,.student-settlement-history__row>*:before{content:attr(data-label);display:block;margin-bottom:.12rem;color:var(--sd-muted);font-size:.56rem;text-transform:uppercase}
 .student-settlement-detailed__cost.is-heading,.student-settlement-history__row.is-heading{display:none}
 .student-settlement-history__row{grid-template-columns:1fr 1fr;padding:.85rem}
 .student-settlement-history__row>b{text-align:left}
}


/* Optional WhatsApp group action shared by enrolled course and trip cards. */
.student-card-actionbar__whatsapp{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.42rem;
  padding:.38rem .72rem;
  white-space:nowrap;
}
.student-card-actionbar__whatsapp>i{
  flex:0 0 auto;
  margin:0;
  font-size:.82rem;
  line-height:1;
}
.student-card-actionbar__whatsapp>span{
  line-height:1.2;
}


/* Mobile action bar: status on the first row, centered actions on the second. */
@media(max-width:767.98px){
  .student-dashboard-card--standard .student-card-actionbar{
    display:flex;
    min-height:0;
    height:auto;
    align-items:stretch;
    flex-direction:column;
    gap:.62rem;
  }
  .student-dashboard-card--standard .student-card-actionbar__status{
    width:100%;
    min-width:0;
    flex:0 0 auto;
  }
  .student-dashboard-card--standard .student-card-actionbar .btn-group{
    width:max-content;
    max-width:100%;
    margin:0 auto;
    align-self:center;
    justify-content:center;
    flex:0 1 auto;
  }
  .student-dashboard-card--standard .student-card-actionbar .btn{
    min-width:0;
    flex:0 0 auto;
    padding-right:.68rem;
    padding-left:.68rem;
    white-space:nowrap;
  }
}


/* Mobile grouped actions fill the complete footer width. */
@media(max-width:767.98px){
  .student-dashboard-card--standard .student-card-actionbar .btn-group{
    width:100%;
    max-width:none;
    margin:0;
    align-self:stretch;
  }
  .student-dashboard-card--standard .student-card-actionbar .btn-group>.btn{
    min-width:0;
    flex:1 1 0;
  }
}
