@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap');:root {--primary:#4f46e5;--primary-hover:#4338ca;--primary-light:#eff6ff;--secondary:#0f172a;--orange:#f97316;--orange-light:#fff7ed;--bg:#f8fafc;--card-bg:#ffffff;--muted:#64748b;--line:#e2e8f0;--green:#10b981;--green-light:#ecfdf5;--red:#ef4444;--red-light:#fef2f2;--shadow-sm:0 2px 4px rgba(0, 0, 0, 0.02);--shadow-md:0 4px 20px -2px rgba(0, 0, 0, 0.05);--shadow-lg:0 10px 30px -3px rgba(79, 70, 229, 0.08);--radius-sm:8px;--radius-md:16px;--radius-lg:24px;}* {box-sizing:border-box;margin:0;padding:0;}body {background:var(--bg);font-family:'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;color:var(--secondary);line-height:1.5;-webkit-font-smoothing:antialiased;}.wrap {max-width:430px;margin:0 auto;background:var(--card-bg);min-height:100vh;box-shadow:var(--shadow-lg);padding-bottom:80px; position:relative;border-left:1px solid var(--line);border-right:1px solid var(--line);}.topbar {height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line);background:rgba(255, 255, 255, 0.9);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10;}.brand {font-size:20px;font-weight:800;color:var(--primary);background:linear-gradient(135deg, var(--primary), var(--primary-hover));-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-0.5px;}.topbar .muted {font-size:11px;font-weight:500;color:var(--muted);margin-top:-2px;}.btn {display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-md);padding:12px 20px;background:var(--primary);color:#fff;font-weight:600;font-size:14px;text-decoration:none;cursor:pointer;transition:all 0.2s ease-in-out;outline:none;}.btn:hover {background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgba(79, 70, 229, 0.2);}.btn:active {transform:translateY(0);}.btn.orange {background:var(--orange);color:#fff;}.btn.orange:hover {background:#ea580c;box-shadow:0 4px 12px rgba(249, 115, 22, 0.2);}.btn.light {background:var(--primary-light);color:var(--primary);border:1px solid rgba(79, 70, 229, 0.1);}.btn.light:hover {background:rgba(79, 70, 229, 0.15);box-shadow:none;}.btn.red {background:var(--red-light);color:var(--red);border:1px solid rgba(239, 68, 68, 0.1);}.btn.red:hover {background:rgba(239, 68, 68, 0.15);box-shadow:none;}.btn.green {background:var(--green-light);color:var(--green);border:1px solid rgba(16, 185, 129, 0.1);}.btn.green:hover {background:rgba(16, 185, 129, 0.15);box-shadow:none;}.btn:disabled {background:#f1f5f9;color:#94a3b8;cursor:not-allowed;border-color:#e2e8f0;transform:none;box-shadow:none;}.card {background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-md);transition:all 0.25s cubic-bezier(0.4, 0, 0.2, 1);}.card:hover {border-color:rgba(79, 70, 229, 0.2);box-shadow:var(--shadow-lg);}.pad {padding:20px;}.grid {display:grid;gap:16px;}.course-card-ui {background:#ffffff;border:1px solid #f1f5f9;border-left:4px solid #f97316;border-radius:20px;overflow:hidden;box-shadow:0 4px 20px rgba(0, 0, 0, 0.03);display:flex;flex-direction:column;transition:all 0.25s ease;position:relative;}.course-card-ui:hover {transform:translateY(-4px);box-shadow:0 12px 24px rgba(0, 0, 0, 0.08);}.course-card-body {padding:14px 20px 12px;display:flex;flex-direction:column;flex:1;}.course-card-meta-top {display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}.course-card-category-wrap {display:flex;align-items:center;gap:10px;}.course-card-category-icon {width:34px;height:34px;background:#ffedd5;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#ea580c;}.course-card-category {color:#ea580c;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:0.5px;}.course-card-lang {background:#fff7ed;border:1px solid #ffedd5;color:#0f172a;font-size:11px;font-weight:800;padding:4px 12px;border-radius:999px;text-transform:uppercase;letter-spacing:0.5px;}.course-card-title {color:#0f172a;font-size:24px;font-weight:900;line-height:1.2;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-0.5px;}.course-card-meta-row {display:flex;align-items:center;gap:10px;color:#475569;font-size:15px;font-weight:500;margin-bottom:0;}.course-card-meta-icon {width:28px;height:28px;background:#eef2ff;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#4f46e5;}.course-card-meta-icon svg {width:16px;height:16px;stroke-width:1.5;}.course-card-bottom {margin-top:10px;padding-top:10px;border-top:1px solid #f1f5f9;display:flex;align-items:center;justify-content:space-between;}.red-dot {width:10px;height:10px;background:#ef4444;border-radius:50%;display:inline-block;}.course-card-bottom-left {display:flex;align-items:center;gap:8px;color:#475569;font-size:14px;font-weight:500;}.btn-arrow {width:30px;height:30px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#0f172a;text-decoration:none;transition:all 0.2s;font-weight:bold;}.btn-arrow:hover {background:#f1f5f9;border-color:#cbd5e1;}.price {color:var(--secondary);font-weight:800;font-size:16px;}.price del {font-weight:400;font-size:13px;margin-left:4px;}.nav {position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:430px;background:rgba(255, 255, 255, 0.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:10px 16px 14px 16px;box-shadow:0 -10px 25px -5px rgba(0, 0, 0, 0.05);z-index:999;border-radius:var(--radius-md) var(--radius-md) 0 0;transition:all 0.3s ease;}.nav a {text-decoration:none;color:#94a3b8;font-size:11px;font-weight:600;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;flex:1;padding:4px 0;transition:all 0.2s ease-in-out;}.nav-icon {width:22px;height:22px;stroke-width:2.2;stroke:#94a3b8;transition:all 0.2s ease-in-out;}.nav a:hover {color:var(--primary);}.nav a:hover .nav-icon {stroke:var(--primary);}.nav a.active {color:var(--primary);font-weight:700;}.nav a.active .nav-icon {stroke:var(--primary);transform:scale(1.05);}.nav a.active::after {content:'';position:absolute;bottom:-4px;width:4px;height:4px;background:var(--primary);border-radius:50%;}input, select, textarea {width:100%;border:1px solid var(--line);border-radius:var(--radius-md);padding:12px 16px;font-family:inherit;font-size:14px;background:#fff;color:var(--secondary);transition:all 0.2s ease-in-out;outline:none;}input:focus, select:focus, textarea:focus {border-color:var(--primary);box-shadow:0 0 0 3px rgba(79, 70, 229, 0.15);}label {display:block;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin:12px 0 6px;}.hero {background:linear-gradient(135deg, #4f46e5, #312e81);color:#fff;border-radius:var(--radius-md);padding:24px;position:relative;overflow:hidden;}.hero h1 {font-size:24px;font-weight:800;margin-bottom:8px;letter-spacing:-0.5px;}.hero p {font-size:14px;color:#e0e7ff;margin-bottom:16px;opacity:0.9;}.row {display:flex;align-items:center;justify-content:space-between;gap:12px;}.tabs {display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;}.tabs::-webkit-scrollbar {display:none;}.tabs a {white-space:nowrap;border-radius:999px;padding:8px 16px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--muted);font-size:12px;font-weight:600;transition:all 0.2s ease-in-out;}.tabs a:hover {border-color:var(--primary);color:var(--primary);}.tabs a.active {background:var(--primary);color:#fff;border-color:var(--primary);}.video-box {aspect-ratio:16/9;background:#020617;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md);}.video-box iframe {width:100%;height:100%;border:0;}.pill {font-size:10px;font-weight:700;border-radius:var(--radius-sm);padding:4px 8px;text-transform:uppercase;letter-spacing:0.5px;}.pill.new {background:#eff6ff;color:#3b82f6;}.pill.locked {background:#f1f5f9;color:#64748b;}.pill.watched {background:var(--green-light);color:var(--green);}.alert {padding:14px;border-radius:var(--radius-md);background:var(--green-light);color:var(--green);border:1px solid rgba(16, 185, 129, 0.2);font-weight:600;font-size:13px;}.alert.danger {background:var(--red-light);color:var(--red);border:1px solid rgba(239, 68, 68, 0.2);}.table {width:100%;border-collapse:collapse;}.table td, .table th {border-bottom:1px solid var(--line);padding:12px;text-align:left;font-size:13px;}.profile-head {text-align:center;background:linear-gradient(135deg, #1e1b4b, #312e81);color:#fff;padding:32px 20px;border-radius:0 0 var(--radius-lg) var(--radius-lg);}.avatar {width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid rgba(255, 255, 255, 0.2);box-shadow:var(--shadow-md);margin-bottom:12px;}.profile-head h2 {font-size:20px;font-weight:800;letter-spacing:-0.5px;}.profile-head p {font-size:13px;color:#c7d2fe;}.search {position:relative;}.search input {padding-left:44px;background:#f1f5f9;border:1px solid transparent;}.search input:focus {background:#fff;border-color:var(--primary);}.search::before {content:"";position:absolute;left:16px;top:50%;transform:translateY(-50%);width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b' stroke-width='2.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.637 10.637z'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;opacity:0.7;}.desktop-header {display:none;}@media(min-width:600px) {.wrap {max-width:520px;}.nav {max-width:520px;}}@media (min-width:768px) {.wrap {width:100%;max-width:100%;margin:0;border-radius:0;box-shadow:none;border:none;min-height:100vh;padding-bottom:40px;background:var(--bg);}.desktop-header {display:block;background:#fff;border-bottom:1px solid var(--line);padding:16px 0;border-radius:0;position:sticky;top:0;z-index:100;}.desktop-header-container {display:flex;justify-content:space-between;align-items:center;max-width:100%;margin:0 auto;padding:0 32px;}.desktop-header .brand {font-size:22px;font-weight:800;}.desktop-nav {display:flex;gap:16px;align-items:center;}.desktop-nav a {text-decoration:none;color:var(--muted);font-weight:600;font-size:14px;padding:8px 16px;border-radius:var(--radius-md);transition:all 0.2s ease-in-out;}.desktop-nav a:hover {color:var(--primary);background:var(--primary-light);}.desktop-nav a.active {color:#fff;background:var(--primary);}.nav {display:none !important;}.page-home .topbar {display:none !important;}.topbar {background:transparent;border-bottom:none;padding:24px 32px;height:auto;position:relative;top:0;max-width:100%;margin:0 auto;}.grid, .pad, main.pad {max-width:100%;margin:0 auto;padding:32px;}.grid {grid-template-columns:repeat(auto-fill, minmax(320px, 1fr));gap:24px;padding:32px;}.grid > h2,.grid > h3,.grid > .hero,.grid > .tabs,.grid > .row,.grid > form,.grid > .profile-head {grid-column:1 / -1;}.tabs {overflow:visible;flex-wrap:wrap;gap:12px;}.tabs a {padding:10px 20px;font-size:13px;}.page-profile .grid > a.card {display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:var(--secondary);font-weight:600;border:1px solid var(--line);}.page-profile .grid > a.card::after {content:"";width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b' stroke-width='2.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M8.25 4.5l7.5 7.5-7.5 7.5'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;transition:transform 0.2s ease-in-out;}.page-profile .grid > a.card:hover::after {transform:translateX(4px);}.page-login main, .page-register main {display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 120px);padding:40px;}.page-login .card, .page-register .card {width:100%;max-width:460px;padding:36px;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);}.page-course main.grid {grid-template-columns:2fr 1fr;gap:28px;align-items:start;}.page-course main.grid > img {grid-column:2;grid-row:1;height:280px !important;position:sticky;top:90px;border-radius:var(--radius-md);}.page-course main.grid > section.card {grid-column:1;grid-row:1;}.page-course main.grid > section:nth-of-type(2) {grid-column:1;grid-row:2;}.page-course main.grid > section:nth-of-type(3) {grid-column:1;grid-row:3;}.page-video_player main.grid {grid-template-columns:1fr;}.page-video_player .pad.grid {display:grid;grid-template-columns:2.2fr 1fr;gap:28px;align-items:start;padding:24px 0;}.page-video_player .pad.grid > div:nth-child(1),.page-video_player .pad.grid > div:nth-child(2),.page-video_player .pad.grid > section.card {grid-column:1;}.page-video_player .pad.grid > h3,.page-video_player .pad.grid > .card.row {grid-column:2;}.page-checkout form.grid {grid-template-columns:1.8fr 1.2fr;gap:28px;align-items:start;}.page-checkout form.grid > section:nth-of-type(1) {grid-column:1;grid-row:1;}.page-checkout form.grid > section:nth-of-type(2) {grid-column:1;grid-row:2;}.page-checkout form.grid > section:nth-of-type(4) {grid-column:1;grid-row:3;}.page-checkout form.grid > section:nth-of-type(3) {grid-column:2;grid-row:1 / span 2;position:sticky;top:90px;}.page-checkout form.grid > button.btn {grid-column:2;grid-row:3;position:sticky;top:340px;width:100%;}}@media (min-width:1024px) {.wrap {max-width:100%;}}