.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:11px 16px;background:linear-gradient(135deg,var(--accent-2),var(--accent));color:#15120b;font-weight:850;cursor:pointer}.btn.secondary{background:var(--surface-2);border:1px solid var(--line);color:var(--text)}.btn.danger{background:rgba(255,92,84,.12);border:1px solid rgba(255,92,84,.25);color:#ffaaa5}.btn.small{padding:8px 11px;font-size:.85rem}.form-card{max-width:580px;margin:20px auto;padding:28px}.form-group{display:grid;gap:7px;margin-bottom:16px}.form-group label{font-weight:700}.input,.select,.textarea{width:100%;border:1px solid var(--line);background:rgba(0,0,0,.22);color:var(--text);border-radius:12px;padding:12px 13px;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:rgba(245,184,46,.65);box-shadow:0 0 0 3px rgba(245,184,46,.08)}.textarea{min-height:130px;resize:vertical}.course-hero{padding:48px 0 28px}.course-hero h1{font-size:clamp(2.3rem,5vw,4.8rem);line-height:1.02;letter-spacing:-.055em;margin:12px 0}.course-meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted)}.lesson-list{border-top:1px solid var(--line)}.lesson-row{display:grid;grid-template-columns:34px 1fr auto;gap:14px;align-items:center;padding:17px 20px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.02)}.lesson-row:hover{background:rgba(255,255,255,.04)}.lesson-icon{color:#83e8dc}.lesson-title{font-size:1.03rem}.lesson-duration{color:#8d918c;font-size:.9rem}.lesson-actions{display:flex;gap:8px}.pill-btn{padding:8px 12px;border-radius:9px;background:rgba(91,194,180,.22);border:1px solid rgba(91,194,180,.35);color:#a4ded5;font-weight:800;font-size:.78rem}.pill-btn.preview{background:rgba(89,195,184,.28);color:#d5fffa}.course-section{margin-bottom:18px;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:16px;overflow:hidden}.course-section>header{padding:18px 20px;background:rgba(255,255,255,.04);border-bottom:1px solid var(--line)}.course-section h2{margin:0;font-size:1.1rem}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:18px 0}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{text-align:left;padding:13px;border-bottom:1px solid var(--line);white-space:nowrap}.data-table th{color:#bdbeb9;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.video-player{aspect-ratio:16/9;background:#050606;border:1px solid var(--line);border-radius:16px;overflow:hidden}.video-player video{width:100%;height:100%;display:block}.stat{padding:22px}.stat-value{font-size:2.2rem;font-weight:850}.stat-label{color:var(--muted)}.empty{padding:50px 20px;text-align:center;color:var(--muted)}.role-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(245,184,46,.12);color:var(--accent);font-size:.75rem;font-weight:800}.progress{height:8px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2))}

/* =========================================================
   V1.1.x UI COMPONENTS — BUTTONS
   ========================================================= */

.btn,
button.btn,
a.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 42px;
    padding: .7rem 1rem;
    border: 1px solid var(--line, rgba(255,255,255,.12));
    border-radius: 12px;
    background: var(--accent, #f5d90a);
    color: #111 !important;
    font: inherit;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none !important;
    cursor: pointer;
    box-sizing: border-box;
    transition: transform .18s ease, box-shadow .18s ease,
                background-color .18s ease, color .18s ease,
                border-color .18s ease;
    visibility: visible;
}

.btn:hover,
button.btn:hover,
a.btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 24px rgba(0,0,0,.16);
}

.btn:active,
button.btn:active,
a.btn:active {
    transform: translateY(0);
}

.btn:focus-visible,
button.btn:focus-visible,
a.btn:focus-visible {
    outline: 3px solid rgba(245,217,10,.35);
    outline-offset: 2px;
}

.btn-secondary {
    background: transparent;
    color: var(--text, #fff) !important;
}

.btn-danger {
    background: #d9534f;
    color: #fff !important;
}

.btn-small {
    min-height: 36px;
    padding: .55rem .8rem;
    border-radius: 10px;
    font-size: .9rem;
}

.btn-block {
    width: 100%;
}

.btn-group {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .65rem;
}

/* Explicitly prevent generic card/layout rules from hiding actions. */
.card .btn,
.management-panel .btn,
.section-head .btn,
.dashboard-head .btn,
.course-card .btn,
.table-wrap .btn {
    display: inline-flex;
    visibility: visible;
}

