/* Student Portal Styles — replaces Plugin 15's assets/wig-sp.css */
/* Supports both legacy wig-sp-* classes and new wig-lms-sp-* classes */

.wig-lms-student-portal,.wig-sp-portal{font-family:var(--wig-font,inherit)}
.wig-lms-sp-header,.wig-sp-header{display:flex;align-items:center;gap:16px;padding:24px 0;border-bottom:1px solid var(--wig-border,#E5E7EB);margin-bottom:16px}
.wig-lms-sp-avatar,.wig-sp-avatar{flex-shrink:0}
.wig-lms-sp-avatar img,.wig-sp-avatar img{border-radius:50%;width:64px;height:64px}
.wig-lms-sp-header h2,.wig-sp-header h2{margin:0 0 4px;font-size:1.4rem;color:var(--wig-navy,#0C1A2E)}
.wig-lms-sp-header p,.wig-sp-header p{margin:0;color:var(--wig-muted,#6B7280);font-size:.85rem}

/* Tabs */
.wig-lms-sp-tabs,.wig-sp-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:20px;border-bottom:2px solid var(--wig-border,#E5E7EB);padding-bottom:0}
.wig-lms-sp-tab,.wig-sp-tab{display:inline-block;padding:8px 14px;font-size:.82rem;font-weight:600;color:var(--wig-muted,#6B7280);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;white-space:nowrap}
.wig-lms-sp-tab:hover,.wig-sp-tab:hover{color:var(--wig-navy,#0C1A2E)}
.wig-lms-sp-tab--active,.wig-sp-tab--active{color:var(--wig-gold,#C9A84C);border-bottom-color:var(--wig-gold,#C9A84C)}

/* Content area */
.wig-lms-sp-content,.wig-sp-content{padding:8px 0}

/* Badge for new items */
.wig-sp-badge{background:var(--wig-gold,#C9A84C);color:#fff;font-size:.7em;padding:2px 6px;border-radius:10px;margin-left:4px}

/* Cards — mirrors wig-lms-card but with wig-sp prefix */
.wig-sp-course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:780px){.wig-sp-course-grid{grid-template-columns:1fr}}
.wig-sp-card{background:#fff;border:1px solid var(--wig-border,#E5E7EB);border-radius:10px;overflow:hidden;transition:box-shadow .15s}
.wig-sp-card:hover{box-shadow:0 6px 20px rgba(0,0,0,.08)}
.wig-sp-card__thumb{width:100%;height:180px;object-fit:cover}
.wig-sp-card__thumb-placeholder{height:180px;background:var(--wig-navy,#0C1A2E);display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff}
.wig-sp-card__body{padding:18px}
.wig-sp-card__title{font-size:1rem;font-weight:700;margin:0 0 8px}
.wig-sp-card__title a{color:var(--wig-navy,#0C1A2E);text-decoration:none}

/* Progress bar */
.wig-sp-progress{height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden;margin:12px 0 4px}
.wig-sp-progress__fill{height:100%;background:var(--wig-gold,#C9A84C);transition:width .4s;border-radius:6px}
.wig-sp-progress__label{font-size:.82rem;color:var(--wig-muted,#6B7280)}

/* Buttons */
.wig-sp-btn{display:inline-block;padding:10px 24px;border-radius:6px;background:var(--wig-gold,#C9A84C);color:var(--wig-navy,#0C1A2E);font-weight:700;font-size:.88rem;border:none;cursor:pointer;text-decoration:none;transition:opacity .15s;margin-top:8px}
.wig-sp-btn:hover{opacity:.85}
.wig-sp-btn--outline{background:transparent;border:2px solid var(--wig-navy,#0C1A2E);color:var(--wig-navy,#0C1A2E);padding:8px 22px}

/* Tables */
.wig-sp-table{width:100%;border-collapse:collapse}
.wig-sp-table th,.wig-sp-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--wig-border,#E5E7EB);font-size:.88rem}
.wig-sp-table th{font-weight:700;color:var(--wig-navy,#0C1A2E)}

/* Empty state */
.wig-sp-empty,.wig-lms-sp-empty{text-align:center;padding:40px;background:var(--wig-cream,#F7F3EC);border-radius:8px;color:var(--wig-muted,#6B7280)}
.wig-sp-empty a{color:var(--wig-blue,#1A4A8C)}

/* Login prompt */
.wig-sp-login{text-align:center;padding:40px;background:var(--wig-cream,#F7F3EC);border-radius:8px;color:var(--wig-muted,#6B7280)}

/* Input fields for messages */
.wig-sp-input{padding:8px;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:.9rem}
