.assignments-hub{max-width:1200px;margin:0 auto;padding:3rem 2rem}.assignments-hero{text-align:center;margin-bottom:3rem}.lectures-hero{position:relative}.home-link{position:absolute;top:0;left:0;color:var(--muted);text-decoration:none;font-size:.85rem;font-family:var(--mono);transition:color .2s}.home-link:hover{color:var(--cyan)}.assignments-hero h1{font-size:3rem;font-weight:800;line-height:1.1;margin-bottom:1.5rem}.assignments-hero h1 span{background:linear-gradient(135deg,var(--orange) 0%,var(--pink) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.assignments-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1.5rem;margin-bottom:3rem}.assignment-card{background:var(--s1);border:1px solid var(--border);border-radius:16px;padding:2rem;text-decoration:none;color:var(--text);transition:all .25s ease;position:relative;overflow:hidden}.assignment-card:hover{border-color:var(--orange);transform:translateY(-4px);box-shadow:0 12px 40px #fb923c26}.assignment-card.locked{opacity:.55;pointer-events:none}.assignment-badge{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.assignment-num{font-family:var(--mono);font-size:2.5rem;font-weight:900;background:linear-gradient(135deg,var(--orange),var(--pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.assignment-type{font-family:var(--mono);font-size:.7rem;color:var(--orange);background:#fb923c1a;padding:.25rem .75rem;border-radius:20px;border:1px solid rgba(251,146,60,.3);text-transform:uppercase;letter-spacing:1px}.assignment-type.type-verilog{color:var(--purple);background:#a78bfa1a;border-color:#a78bfa4d}.assignment-card h2{font-size:1.4rem;margin-bottom:.5rem}.assignment-card .desc{color:var(--muted);font-size:.92rem;line-height:1.6;margin-bottom:1rem}.assignment-topics{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.assignment-cta{font-family:var(--mono);font-size:.82rem;color:var(--orange);font-weight:600}.req-card{background:linear-gradient(135deg,#fb923c08,#f472b608);border:1px solid rgba(251,146,60,.2);border-left:4px solid var(--orange);border-radius:0 12px 12px 0;padding:1.2rem 1.4rem;margin:1rem 0}.req-card h4{color:var(--orange);font-size:.9rem;margin-bottom:.5rem;font-family:var(--mono)}.req-card p,.req-card li{font-size:.9rem;color:var(--text);line-height:1.7}.pdf-ref{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--mono);font-size:.65rem;color:var(--pink);background:#f472b614;padding:.2rem .6rem;border-radius:4px;margin-bottom:.5rem}.answer-card{background:linear-gradient(135deg,#4ade800a,#22d3ee0a);border:1px solid rgba(74,222,128,.2);border-left:4px solid var(--green);border-radius:0 12px 12px 0;padding:1.2rem 1.4rem;margin:1rem 0}.answer-card h4{color:var(--green);font-size:.85rem;margin-bottom:.5rem;font-family:var(--mono)}.step-card{background:var(--s1);border:1px solid var(--border);border-radius:12px;margin-bottom:1rem;position:relative;padding:1.5rem 1.5rem 1.5rem 4rem}.step-num{position:absolute;left:1rem;top:1.5rem;width:2.2rem;height:2.2rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--orange),var(--pink));border-radius:50%;font-family:var(--mono);font-size:.85rem;font-weight:700;color:#000}.isa-table-wrap{overflow-x:auto;margin:1rem 0;border-radius:10px;border:1px solid var(--border)}.isa-table{width:100%;border-collapse:collapse;font-size:.85rem}.isa-table th{background:var(--s2);color:var(--cyan);font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:1px;padding:.75rem 1rem;text-align:left;border-bottom:2px solid var(--border);white-space:nowrap}.isa-table td{padding:.6rem 1rem;border-bottom:1px solid var(--border);color:var(--text)}.isa-table tr:hover td{background:#22d3ee0a}.isa-table .opcode{font-family:var(--mono);color:var(--cyan);font-size:.8rem}.isa-table .funct{font-family:var(--mono);color:var(--purple);font-size:.8rem}.isa-table .type-r{color:var(--green)}.isa-table .type-i{color:var(--orange)}.isa-table .type-j{color:var(--pink)}.bit-field{display:flex;border:2px solid var(--border);border-radius:8px;overflow:hidden;margin:1rem 0;font-family:var(--mono);font-size:.75rem}.bit-field .bf{display:flex;flex-direction:column;align-items:center;border-right:1px solid var(--border);padding:.5rem 0;min-width:48px;flex:1}.bit-field .bf:last-child{border-right:none}.bit-field .bf-label{color:var(--muted);font-size:.6rem;margin-bottom:.3rem;text-transform:uppercase}.bit-field .bf-value{font-weight:700;font-size:.8rem}.bit-field .bf-bits{color:var(--muted);font-size:.55rem;margin-top:.2rem}.bf-cyan .bf-value{color:var(--cyan)}.bf-green .bf-value{color:var(--green)}.bf-orange .bf-value{color:var(--orange)}.bf-purple .bf-value{color:var(--purple)}.bf-pink .bf-value{color:var(--pink)}.bf-yellow .bf-value{color:var(--yellow)}.hint-toggle{background:#fbbf240f;border:1px solid rgba(251,191,36,.2);border-radius:8px;margin:.8rem 0;overflow:hidden}.hint-toggle summary{padding:.7rem 1rem;cursor:pointer;font-family:var(--mono);font-size:.8rem;color:var(--yellow);list-style:none;display:flex;align-items:center;gap:.5rem}.hint-toggle summary:before{content:"💡"}.hint-toggle summary::-webkit-details-marker{display:none}.hint-toggle .hint-content{padding:0 1rem 1rem;font-size:.88rem;color:var(--text);line-height:1.7}.learn-path{display:flex;flex-direction:column;gap:0;margin:1.5rem 0}.learn-path .lp-step{display:flex;gap:1rem;align-items:flex-start}.learn-path .lp-line{display:flex;flex-direction:column;align-items:center;min-width:32px}.learn-path .lp-dot{width:14px;height:14px;border-radius:50%;background:var(--orange);flex-shrink:0}.learn-path .lp-connector{width:2px;flex:1;min-height:30px;background:var(--border)}.learn-path .lp-content{padding-bottom:1.5rem}.learn-path .lp-content h4{font-size:.95rem;margin-bottom:.3rem}.learn-path .lp-content p{font-size:.85rem;color:var(--muted);line-height:1.6}.reg-visual{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;margin:1rem 0}.reg-box{background:var(--s2);border:1px solid var(--border);border-radius:8px;padding:.6rem;text-align:center;font-family:var(--mono);font-size:.8rem;transition:all .2s}.reg-box:hover{border-color:var(--cyan);background:var(--s3)}.reg-name{color:var(--cyan);font-weight:700;font-size:.85rem}.reg-alias{color:var(--muted);font-size:.65rem;display:block;margin-top:.2rem}.reg-val{color:var(--green);font-size:.72rem;margin-top:.3rem}.checklist{list-style:none;padding:0;margin:1rem 0}.checklist li{display:flex;align-items:flex-start;gap:0;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.04);font-size:.9rem;transition:background .15s ease}.checklist li:last-child{border-bottom:none}.checklist li:hover{background:#ffffff05;margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem;border-radius:8px}.checklist-item-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;flex:1;-webkit-user-select:none;user-select:none}.checklist-item-label input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;box-sizing:border-box;width:1.25rem;height:1.25rem;min-width:1.25rem;aspect-ratio:1;border:2px solid var(--border);border-radius:8px;background:var(--s2);cursor:pointer;position:relative;margin-top:.15rem;transition:all .2s ease;flex-shrink:0}.checklist-item-label input[type=checkbox]:hover{border-color:var(--cyan);background:#22d3ee14}.checklist-item-label input[type=checkbox]:checked{border-color:var(--green);background:var(--green)}.checklist-item-label input[type=checkbox]:checked:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:.35rem;height:.6rem;border:solid var(--bg);border-width:0 2px 2px 0;transform:rotate(45deg)}.checklist-item-text{flex:1;line-height:1.5;color:var(--text)}.checklist li.done .checklist-item-text{color:var(--muted);text-decoration:line-through}.checklist-toolbar{display:flex;align-items:center;gap:.75rem;margin:.5rem 0 1rem}.checklist-count{font-family:var(--mono);font-size:.8rem;font-weight:600;color:var(--muted)}.checklist-reset-btn{display:inline-flex;align-items:center;gap:.4rem;margin:0;padding:.45rem 1rem;font-size:.78rem;font-family:var(--mono);font-weight:500;color:var(--muted);background:var(--s2);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s ease}.checklist-reset-btn:hover{color:var(--red);border-color:#f8717180;background:#f8717114}.assignment-progress{display:flex;gap:.3rem;margin:1rem 0}.progress-dot{width:12px;height:12px;border-radius:50%;background:var(--s3);border:1px solid var(--border)}.progress-dot.active{background:var(--orange);border-color:var(--orange)}.progress-dot.completed{background:var(--green);border-color:var(--green)}.asm-line{display:flex;gap:.5rem}.asm-addr{color:var(--muted);min-width:3rem;text-align:right}.asm-inst{color:var(--pink);min-width:4rem}.asm-args{color:var(--cyan)}.asm-comment{color:var(--dim);font-style:italic}.card-highlight{border-left:4px solid var(--red)}.card-blue{border-left:4px solid var(--cyan)}.card-green{border-left:4px solid var(--green)}.card-gold{border-left:4px solid var(--yellow)}.card-purple{border-left:4px solid var(--purple)}.bangla-box{background:#a78bfa12;border-left:4px solid var(--purple);border-radius:0 10px 10px 0;padding:1.2rem 1.4rem;margin:1.2rem 0}.bangla-box-label{font-size:.8rem;font-weight:700;color:var(--purple);margin-bottom:.5rem;display:flex;align-items:center;gap:.4rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em}.bangla-box p,.bangla-box li{font-family:Hind Siliguri,Noto Sans Bengali,sans-serif;line-height:1.9;color:var(--text);font-size:.97rem}.bangla-box ul{list-style:none;padding:0;margin:0}.bangla-box ul li{padding:.25rem 0 .25rem 1.4rem;position:relative}.bangla-box ul li:before{content:"→";position:absolute;left:0;color:var(--purple)}.analogy{background:#4ade800f;border:1px solid rgba(74,222,128,.25);border-left:4px solid var(--green);border-radius:0 10px 10px 0;padding:1rem 1.2rem;margin:1rem 0}.analogy .analogy-label,.analogy .bangla-box-label{font-size:.8rem;font-weight:700;color:var(--green);margin-bottom:.5rem;display:flex;align-items:center;gap:.4rem;text-transform:uppercase;letter-spacing:.05em;font-family:var(--mono)}.diagram{background:#020408;border:1px solid var(--border);border-radius:10px;padding:1.2rem 1.5rem;margin:1rem 0;font-family:var(--mono);font-size:.8rem;line-height:1.6;color:var(--cyan);overflow-x:auto;white-space:pre}.feature-list{list-style:none;padding:0;margin:1rem 0}.feature-list li{padding:.4rem 0 .4rem 1.4rem;position:relative;color:var(--text)}.feature-list li:before{content:"▸";position:absolute;left:0;color:var(--cyan)}.feature-list li.green:before{color:var(--green)}.feature-list li.blue:before{color:var(--cyan)}.feature-list li.gold:before{color:var(--yellow)}.hero-roadmap{margin-top:2rem}.roadmap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.8rem;margin-top:1.5rem}.roadmap-step{display:flex;align-items:center;gap:.8rem;padding:.9rem 1rem;background:var(--s2);border:1px solid var(--border);border-radius:10px;text-decoration:none;color:var(--text);transition:all .2s ease;font-size:.88rem}.roadmap-step:hover{border-color:var(--cyan);background:#22d3ee0f;transform:translateY(-2px);color:var(--cyan)}.roadmap-step-num{width:28px;height:28px;border-radius:50%;background:var(--s1);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:.75rem;font-weight:700;color:var(--muted);flex-shrink:0}.roadmap-step:hover .roadmap-step-num{border-color:var(--cyan);color:var(--cyan)}.copy-btn{margin-left:auto;padding:.2rem .7rem;background:transparent;border:1px solid var(--border);border-radius:5px;color:var(--muted);font-size:.75rem;font-family:var(--mono);cursor:pointer;transition:all .2s ease}.copy-btn:hover{border-color:var(--cyan);color:var(--cyan)}.lec-ref{display:inline-block;margin-top:.5rem;font-family:var(--mono);font-size:.76rem;color:var(--cyan);background:#22d3ee14;border:1px solid rgba(34,211,238,.25);border-radius:6px;padding:.2rem .6rem;text-decoration:none;transition:background .15s}.lec-ref:hover{background:#22d3ee2e}@media (max-width: 700px){.assignments-hero h1{font-size:2rem}.assignments-grid{grid-template-columns:1fr}.bit-field{font-size:.65rem}.bit-field .bf{min-width:36px;padding:.3rem 0}.step-card{padding-left:3.5rem}}
