.courses-page{background:var(--neo-bg);color:var(--neo-black);min-height:100vh}.courses-page .page-wrap{max-width:1400px;margin:0 auto;padding:32px}.courses-page .main-columns{display:grid;grid-template-columns:260px 1fr;gap:32px}.courses-page .sidebar{display:flex;flex-direction:column;gap:20px;position:sticky;top:96px;align-self:start}.courses-page .sidebar-section{padding:0}.courses-page .sidebar-head{font-family:var(--neo-font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--neo-black);margin-bottom:14px;opacity:.5}.courses-page .sidebar-body{display:flex;flex-direction:column;gap:6px;margin-bottom:24px}.courses-page .diff-pill,.courses-page .sidebar-pill{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;padding:9px 12px;background:#fff;border:var(--neo-border-thin);border-radius:6px;cursor:pointer;transition:all .15s;user-select:none}.courses-page .sidebar-pill{font-family:inherit}.courses-page .diff-pill{font-family:var(--neo-font-mono);font-size:13px;font-weight:500;color:var(--neo-black)}.courses-page .diff-pill:hover,.courses-page .sidebar-pill:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--neo-black)}.courses-page .diff-pill.active,.courses-page .sidebar-pill.active{background:var(--neo-black);border-color:var(--neo-black);color:#fff}.courses-page .spl{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--neo-black)}.courses-page .sidebar-pill.active .spl{color:#fff}.courses-page .spc{font-family:var(--neo-font-mono);font-size:11px;font-weight:600;background:var(--neo-yellow);color:var(--neo-black);padding:2px 7px;border-radius:4px}.courses-page .sidebar-pill.active .spc{background:rgba(255,255,255,.2);color:#fff}.courses-page .cat-dot{width:9px;height:9px;border-radius:50%;border:2px solid var(--neo-black);flex-shrink:0}.courses-page .dot-networking{background:var(--cat-networking)}.courses-page .dot-linux{background:var(--cat-linux)}.courses-page .dot-containers{background:var(--cat-containers)}.courses-page .dot-distributed{background:var(--cat-distributed)}.courses-page .dot-all{background:linear-gradient(135deg,var(--neo-blue) 25%,var(--neo-green) 25% 50%,var(--neo-orange) 50% 75%,var(--neo-purple) 75%)}.courses-page .diff-word{font-family:var(--neo-font-body);font-size:10px;font-weight:500;opacity:.5;letter-spacing:.03em;text-transform:uppercase}.courses-page .diff-pill.active .diff-word{opacity:.7;color:#fff}.courses-page .content-col{animation:courses-fade-up .4s ease .1s both}@keyframes courses-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.courses-page .toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.courses-page .search-wrap{position:relative;flex:1;max-width:380px}.courses-page .search-input{width:100%;padding:10px 14px 10px 38px;font-family:var(--neo-font-mono);font-size:12px;color:var(--neo-black);background:#fff;border:var(--neo-border-thick);border-radius:6px;outline:none;transition:all .15s;letter-spacing:.02em}.courses-page .search-input::placeholder{color:rgba(26,26,26,.35)}.courses-page .search-input:focus{border-color:var(--neo-yellow);box-shadow:3px 3px 0 var(--neo-black);transform:translate(-1px,-1px)}.courses-page .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:14px;opacity:.4;pointer-events:none}.courses-page .toolbar-right{display:flex;align-items:center;gap:12px}.courses-page .results-count{font-family:var(--neo-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.6}.courses-page .sort-wrap{position:relative;display:flex;align-items:center}.courses-page .sort-label{font-family:var(--neo-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;opacity:.5;margin-right:8px;white-space:nowrap}.courses-page .sort-select{font-family:var(--neo-font-mono);font-size:12px;font-weight:600;color:var(--neo-black);background:var(--neo-white);border:3px solid var(--neo-black);border-radius:10px;padding:8px 32px 8px 12px;outline:none;cursor:pointer;appearance:none;-webkit-appearance:none;box-shadow:3px 3px 0 var(--neo-black);transition:transform .15s,box-shadow .15s;letter-spacing:.02em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%231A1A1A' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.courses-page .sort-select:focus,.courses-page .sort-select:hover{box-shadow:6px 6px 0 var(--neo-black);transform:translate(-1px,-1px)}.courses-page .sort-select:focus-visible{outline:2px solid var(--neo-yellow);outline-offset:2px}.courses-page .card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;justify-items:stretch}.courses-page .card-grid>*{width:100%;min-width:0}.courses-page .course-card{display:flex;flex-direction:column;border:var(--neo-border-thick);border-radius:12px;overflow:hidden;background:#fff;text-decoration:none;color:inherit;transition:all .18s;cursor:pointer;box-shadow:var(--neo-shadow-md);position:relative;aspect-ratio:1/1;width:100%}.courses-page .course-card:hover{transform:translate(-3px,-3px);box-shadow:var(--neo-shadow-lg)}.courses-page .course-card:hover .card-title{text-decoration:underline;text-decoration-thickness:3px}.courses-page .course-card.strip-networking{border-left:6px solid var(--cat-networking)}.courses-page .course-card.strip-linux{border-left:6px solid var(--cat-linux)}.courses-page .course-card.strip-containers{border-left:6px solid var(--cat-containers)}.courses-page .course-card.strip-distributed{border-left:6px solid var(--cat-distributed)}.courses-page .card-body{padding:24px 24px 20px;display:flex;flex-direction:column;flex:1;min-height:0}.courses-page .card-eyebrow{display:flex;align-items:center;gap:8px;font-family:var(--neo-font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;opacity:.45;margin-bottom:12px}.courses-page .eyebrow-badge{padding:2px 8px;border-radius:4px;border:2px solid var(--neo-black);font-size:9px;font-weight:700;letter-spacing:.05em;color:#fff;text-transform:uppercase}.courses-page .badge-networking{background:var(--cat-networking)}.courses-page .badge-linux{background:var(--cat-linux);color:var(--neo-black)!important}.courses-page .badge-containers{background:var(--cat-containers)}.courses-page .badge-distributed{background:var(--cat-distributed)}.courses-page .card-title{font-family:var(--neo-font-display);font-size:20px;font-weight:800;letter-spacing:-.02em;line-height:1.1;color:#151d3d;margin-bottom:12px;text-transform:none;transition:color .15s;-webkit-line-clamp:2}.courses-page .card-desc,.courses-page .card-title{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.courses-page .card-desc{font-size:15px;color:var(--neo-black);opacity:.7;line-height:1.6;font-weight:400;flex:0 1 auto;margin-bottom:18px;min-height:0;text-overflow:ellipsis;-webkit-line-clamp:4;line-clamp:4}.courses-page .card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:2px solid rgba(26,26,26,.1);margin-top:auto;flex-shrink:0}.courses-page .card-tags{display:flex;gap:8px;flex-wrap:wrap}.courses-page .tag{font-family:var(--neo-font-mono);font-size:10px;padding:4px 10px;border-radius:5px;letter-spacing:.02em;font-weight:600;text-transform:uppercase;border:2px solid var(--neo-black);background:#fff;color:var(--neo-black)}.courses-page .tag-time{background:var(--neo-yellow);border-color:var(--neo-black);color:var(--neo-black)}.courses-page .card-meta{display:flex;align-items:center;gap:12px;flex-shrink:0}.courses-page .diff-label{font-family:var(--neo-font-mono);font-size:14px;color:var(--neo-black);letter-spacing:.04em}.courses-page .empty-state{grid-column:1/-1;border:3px dashed rgba(26,26,26,.25);border-radius:12px;padding:56px 32px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--neo-bg-alt)}.courses-page .empty-title{font-family:var(--neo-font-mono);font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.courses-page .empty-desc{font-size:14px;opacity:.6;margin-bottom:24px}.courses-page .btn-reset-filters{font-family:var(--neo-font-mono);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:10px 20px;background:var(--neo-black);color:#fff;border:var(--neo-border-thick);border-radius:6px;cursor:pointer;box-shadow:var(--neo-shadow-sm);transition:all .15s}.courses-page .btn-reset-filters:hover{transform:translate(-2px,-2px);box-shadow:var(--neo-shadow-md)}.courses-page .pagination{display:flex;align-items:center;justify-content:space-between;margin-top:28px;padding-top:24px;border-top:var(--neo-border-thin)}.courses-page .pagination-info{font-family:var(--neo-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.5}.courses-page .pagination-controls{display:flex;align-items:center;gap:6px}.courses-page .page-btn{font-family:var(--neo-font-mono);font-size:13px;font-weight:600;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:var(--neo-border-thin);border-radius:6px;cursor:pointer;background:#fff;color:var(--neo-black);transition:all .15s;user-select:none}.courses-page .page-btn:hover:not(:disabled),.courses-page .page-nav:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:var(--neo-shadow-sm)}.courses-page .page-btn:disabled,.courses-page .page-nav:disabled{opacity:1;cursor:not-allowed;border-color:#B0B0B0;background:#F5F5F5;color:#A0A0A0;transform:none;box-shadow:none}.courses-page .page-btn.active{background:var(--neo-black);color:var(--neo-yellow);border-color:var(--neo-black)}.courses-page .page-nav{font-family:var(--neo-font-mono);font-size:13px;font-weight:700;padding:0 14px;height:36px;display:flex;align-items:center;border:var(--neo-border-thick);border-radius:6px;cursor:pointer;background:#fff;color:var(--neo-black);transition:all .15s;user-select:none;white-space:nowrap}.courses-page .error-state,.courses-page .loading-state{display:flex;justify-content:center;align-items:center;min-height:360px}.courses-page .error-state{color:var(--neo-red);font-family:var(--neo-font-mono);font-size:14px}@media (max-width:1024px){.courses-page .page-wrap{padding:20px}.courses-page .main-columns{grid-template-columns:1fr}.courses-page .sidebar{position:static;flex-direction:row;flex-wrap:wrap}.courses-page .sidebar-section{flex:1;min-width:200px}.courses-page .page-header{flex-direction:column}.courses-page .card-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.courses-page .card-grid{grid-template-columns:1fr}.courses-page .course-card{aspect-ratio:auto;min-height:320px}.courses-page .sidebar{flex-direction:column}.courses-page .page-title{font-size:32px}.courses-page .toolbar{flex-direction:column;align-items:stretch}.courses-page .search-wrap{max-width:none}.courses-page .toolbar-right{justify-content:space-between}.courses-page .results-count{display:none}.courses-page .pagination{flex-direction:column;align-items:flex-start;gap:12px}.courses-page .card-footer{align-items:flex-start;gap:10px}}@media (max-width:480px){.courses-page .page-wrap{padding:16px}.courses-page .card-body{padding:20px 16px 16px}.courses-page .card-title{font-size:20px}.courses-page .course-card{min-height:0}.courses-page .card-desc{-webkit-line-clamp:3;line-clamp:3}.courses-page .card-footer{flex-direction:column;align-items:flex-start;gap:10px}.courses-page .card-meta{align-self:flex-start}}