:root{--primary-bg: #0a0a0f;--secondary-bg: #1a1a2e;--accent-blue: #00ffff;--accent-purple: #a855f7;--accent-pink: #ec4899;--circuit-green: #10b981;--text-light: #f8fafc;--text-dim: #94a3b8;--pulse-color: #3b82f6;--glow-intensity: 0 0 20px;--content-bg: rgba(26, 26, 46, 0.8);--border-color: rgba(0, 255, 255, 0.2);--overlay-bg: rgba(0, 0, 0, 0.7);--card-bg: rgba(0, 0, 0, 0.3);--table-header-bg: rgba(0, 0, 0, 0.5);--table-bg: rgba(0, 0, 0, 0.5);--code-bg: rgba(0, 0, 0, 0.7);--table-hover: rgba(0, 255, 255, 0.1);--table-row-bg: rgba(0, 0, 0, 0.3);--white-text: #fff}[data-theme="light"]{--primary-bg: #f8fafc;--secondary-bg: #e2e8f0;--accent-blue: #0369a1;--accent-purple: #7c3aed;--accent-pink: #db2777;--circuit-green: #059669;--text-light: #1e293b;--text-dim: #475569;--pulse-color: #2563eb;--glow-intensity: 0 0 10px;--content-bg: rgba(255, 255, 255, 0.9);--border-color: rgba(3, 105, 161, 0.2);--overlay-bg: rgba(255, 255, 255, 0.8);--card-bg: rgba(255, 255, 255, 0.6);--table-header-bg: rgba(255, 255, 255, 0.7);--table-bg: rgba(255, 255, 255, 0.9);--code-bg: rgba(0, 0, 0, 0.05);--table-hover: rgba(3, 105, 161, 0.1);--table-row-bg: rgba(0, 0, 0, 0.03);--white-text: #1e293b}html[data-theme="light"] body{border-bottom:5px solid red !important}.theme-toggle{position:fixed;top:20px;right:20px;z-index:1000;background:var(--content-bg);border:2px solid var(--accent-blue);border-radius:50px;padding:10px 15px;cursor:pointer;transition:all 0.3s ease;color:var(--text-light);font-family:'Roboto Mono', monospace;font-size:14px;backdrop-filter:blur(10px);box-shadow:var(--glow-intensity) var(--accent-blue)}.theme-toggle:hover{transform:scale(1.1);box-shadow:var(--glow-intensity) var(--accent-purple);border-color:var(--accent-purple)}.theme-toggle:focus{outline:2px solid var(--accent-blue);outline-offset:2px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(135deg, var(--primary-bg) 0%, var(--secondary-bg) 100%);color:var(--text-light);font-family:'Roboto Mono', monospace;line-height:1.6;min-height:100vh;overflow-x:hidden}#header-container{position:relative;height:400px;background:linear-gradient(45deg, var(--primary-bg) 0%, var(--secondary-bg) 50%, var(--primary-bg) 100%);overflow:hidden;border-bottom:2px solid var(--accent-blue)}.circuit-background{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0.6}.circuit-svg{width:100%;height:100%;position:absolute;top:0;left:0}.circuit-path{stroke:var(--circuit-green);stroke-width:2;fill:none;opacity:0.7;animation:circuitPulse 3s ease-in-out infinite}.circuit-node{fill:var(--accent-blue);animation:nodePulse 2s ease-in-out infinite}@keyframes circuitPulse{0%, 100%{opacity:0.3;stroke-width:2}50%{opacity:1;stroke-width:3}}@keyframes nodePulse{0%, 100%{opacity:0.5;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.floating-nodes{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.floating-node{position:absolute;width:8px;height:8px;background:var(--accent-purple);border-radius:50%;box-shadow:0 0 15px var(--accent-purple),0 0 30px var(--accent-purple);animation:float 6s ease-in-out infinite;filter:blur(0.5px)}.floating-node:nth-child(2n){animation:floatReverse 8s ease-in-out infinite;filter:blur(1px)}.floating-node:nth-child(3n){animation:floatDiagonal 7s ease-in-out infinite;filter:blur(0.8px)}@keyframes float{0%, 100%{transform:translateY(0px) translateX(0px) rotate(0deg);opacity:0.7;filter:blur(0.5px)}25%{transform:translateY(-15px) translateX(10px) rotate(90deg);opacity:1;filter:blur(1px)}50%{transform:translateY(-20px) translateX(-5px) rotate(180deg);opacity:0.8;filter:blur(1.5px)}75%{transform:translateY(-10px) translateX(-15px) rotate(270deg);opacity:1;filter:blur(0.8px)}}@keyframes floatReverse{0%, 100%{transform:translateY(0px) translateX(0px) rotate(360deg);opacity:0.6;filter:blur(1px)}25%{transform:translateY(15px) translateX(-10px) rotate(270deg);opacity:1;filter:blur(1.5px)}50%{transform:translateY(25px) translateX(8px) rotate(180deg);opacity:0.9;filter:blur(2px)}75%{transform:translateY(5px) translateX(12px) rotate(90deg);opacity:0.8;filter:blur(1.2px)}}@keyframes floatDiagonal{0%, 100%{transform:translateY(0px) translateX(0px) rotate(0deg) scale(1);opacity:0.8;filter:blur(0.8px)}33%{transform:translateY(-18px) translateX(18px) rotate(120deg) scale(1.2);opacity:1;filter:blur(1.3px)}66%{transform:translateY(12px) translateX(-20px) rotate(240deg) scale(0.8);opacity:0.7;filter:blur(1.8px)}}.site-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:center;height:100%;text-align:center}.header-content{position:relative}.site-title{font-family:'Orbitron', sans-serif;font-size:clamp(2rem, 8vw, 4rem);font-weight:900;margin-bottom:1rem;text-transform:uppercase;letter-spacing:0.1em}.title-part{position:relative;display:inline-block;background:linear-gradient(45deg, var(--accent-blue), var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 5px rgba(0,255,255,0.3);animation:titleGlow 4s ease-in-out infinite}.ai-emphasis{background:linear-gradient(45deg, var(--accent-pink), var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.2em;text-shadow:0 0 5px rgba(236,72,153,0.3)}.title-connector{display:block;font-size:0.4em;color:var(--text-dim);font-weight:400;margin:0.5rem 0;letter-spacing:0.2em}@keyframes titleGlow{0%, 100%{filter:brightness(1) drop-shadow(0 0 3px currentColor);transform:scale(1)}50%{filter:brightness(1.2) drop-shadow(0 0 6px currentColor);transform:scale(1.02)}}.header-subtitle{display:flex;justify-content:center;gap:2rem;margin-top:1rem;font-family:'Roboto Mono', monospace}.course-code,.semester{padding:0.5rem 1rem;background:rgba(255,255,255,0.1);border:1px solid var(--accent-blue);border-radius:20px;font-size:0.9rem;color:var(--accent-blue);backdrop-filter:blur(10px);animation:subtitlePulse 3s ease-in-out infinite}@keyframes subtitlePulse{0%, 100%{box-shadow:0 0 5px var(--accent-blue)}50%{box-shadow:0 0 15px var(--accent-blue),inset 0 0 10px rgba(0,255,255,0.1)}}.neural-pulse{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:200px;height:200px;border:2px solid var(--pulse-color);border-radius:50%;opacity:0;animation:neuralPulse 4s ease-out infinite;pointer-events:none}.neural-pulse::before,.neural-pulse::after{content:'';position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border:2px solid var(--pulse-color);border-radius:50%;animation:neuralPulse 4s ease-out infinite}.neural-pulse::before{animation-delay:1s}.neural-pulse::after{animation-delay:2s}@keyframes neuralPulse{0%{opacity:1;transform:translate(-50%, -50%) scale(0.5)}100%{opacity:0;transform:translate(-50%, -50%) scale(2)}}#main_content_wrap{background:var(--content-bg);backdrop-filter:blur(10px);margin-top:2rem;overflow-x:hidden}#main_content{max-width:1200px;margin:0 auto;padding:2rem;background:var(--content-bg);border-radius:15px;border:1px solid var(--border-color);overflow-x:hidden;word-wrap:break-word}h1,h2,h3,h4,h5,h6{font-family:'Orbitron', sans-serif;color:var(--accent-blue);margin:2rem 0 1rem;text-shadow:0 0 10px currentColor}h2{border-bottom:2px solid var(--accent-purple);padding-bottom:0.5rem;position:relative}h2::after{content:'';position:absolute;bottom:-2px;left:0;width:50px;height:2px;background:var(--accent-pink);animation:borderGlow 2s ease-in-out infinite}@keyframes borderGlow{0%, 100%{width:50px;box-shadow:0 0 5px var(--accent-pink)}50%{width:100px;box-shadow:0 0 15px var(--accent-pink)}}p{margin:1rem 0;color:var(--text-light)}a{color:var(--accent-blue);text-decoration:none;transition:all 0.3s ease;position:relative}a:hover{color:var(--accent-pink);text-shadow:0 0 10px currentColor}a::before{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg, var(--accent-blue), var(--accent-pink));transition:width 0.3s ease}a:hover::before{width:100%}h2,h3,h4,h5,h6{scroll-margin-top:2rem}.main-content a[href^="#"]{color:var(--accent-blue);text-decoration:none;transition:all 0.3s ease;position:relative}.main-content a[href^="#"]:hover{color:var(--accent-purple);text-shadow:0 0 8px currentColor}.main-content a[href^="#"]:before{content:"→ ";opacity:0;transition:opacity 0.3s ease}.main-content a[href^="#"]:hover:before{opacity:1}table{width:100%;max-width:100%;border-collapse:collapse;margin:2rem 0;background:var(--table-bg);border-radius:10px;overflow:hidden;box-shadow:0 0 20px rgba(0,255,255,0.3);table-layout:fixed}th,td{padding:0.8rem 0.5rem;text-align:left;border-bottom:1px solid rgba(255,255,255,0.1);word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}th{background:linear-gradient(45deg, var(--accent-blue), var(--accent-purple));color:white;font-family:'Orbitron', sans-serif;text-transform:uppercase;letter-spacing:0.1em;font-size:0.9rem}table th:contains("Assignment Summary"),table td:nth-child(2){word-break:break-word;line-height:1.4;width:68%}table th:contains("Points"),table td:nth-child(1){white-space:nowrap;min-width:60px;width:12%;text-align:center;font-weight:bold;font-size:1.1em;color:var(--accent-blue)}table th:contains("Due Date"),table td:nth-child(3){white-space:nowrap;min-width:120px;width:20%}tr:hover{background:var(--table-hover);transform:scale(1.02);transition:all 0.3s ease}pre,code{background:var(--code-bg);color:var(--circuit-green);border:1px solid var(--accent-blue);border-radius:5px;font-family:'Roboto Mono', monospace}pre{padding:1rem;overflow-x:auto;position:relative}pre::before{content:'> ';color:var(--accent-pink);font-weight:bold}ul,ol{margin:1rem 0;padding-left:2rem}li{margin:0.5rem 0;position:relative}ul li::before{content:'▶';color:var(--accent-blue);position:absolute;left:-1.5rem;animation:listPulse 2s ease-in-out infinite}@keyframes listPulse{0%, 100%{opacity:0.7;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}figure{max-width:100%;margin:1.5rem auto;text-align:center}figure img{margin:0 auto 0.5rem auto}figcaption{font-size:0.9rem;color:var(--text-dim);font-style:italic;text-align:center;padding:0.5rem}iframe,embed,object,video{max-width:100%;height:auto;display:block;margin:1.5rem auto}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 768px){#header-container{height:300px}.site-title{font-size:2rem}.header-subtitle{flex-direction:column;gap:1rem}#main_content{padding:1rem}table{font-size:0.8rem}th,td{padding:0.5rem 0.3rem}th{font-size:0.75rem}}@media (max-width: 480px){table,thead,tbody,th,td,tr{display:block}thead tr{position:absolute;top:-9999px;left:-9999px}tr{border:1px solid var(--accent-blue);margin-bottom:1rem;padding:0.5rem;border-radius:5px;background:var(--table-row-bg)}td{border:none;position:relative;padding-left:50%;text-align:right;padding-bottom:0.5rem}td:before{content:attr(data-label) ": ";position:absolute;left:6px;width:45%;text-align:left;font-weight:bold;color:var(--accent-blue)}}.interactive-element{cursor:pointer;transition:all 0.3s ease}.interactive-element:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,255,255,0.3)}.glitch{position:relative;animation:glitch 2s ease-in-out infinite}@keyframes glitch{0%, 100%{transform:translate(0)}20%{transform:translate(-2px, 2px)}40%{transform:translate(-2px, -2px)}60%{transform:translate(2px, 2px)}80%{transform:translate(2px, -2px)}}#compact-header{position:relative;height:120px;background:linear-gradient(135deg, var(--primary-bg) 0%, var(--secondary-bg) 100%);border-bottom:2px solid var(--accent-blue);overflow:hidden}.compact-circuit-bg{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0.3}.mini-nodes{position:absolute;top:0;left:0;width:100%;height:100%}.mini-nodes::before,.mini-nodes::after{content:'';position:absolute;width:4px;height:4px;background:var(--accent-blue);border-radius:50%;animation:miniNodePulse 2s ease-in-out infinite}.mini-nodes::before{top:20px;left:10%;animation-delay:0s}.mini-nodes::after{top:60px;right:10%;animation-delay:1s}@keyframes miniNodePulse{0%, 100%{opacity:0.5;box-shadow:0 0 5px var(--accent-blue)}50%{opacity:1;box-shadow:0 0 15px var(--accent-blue)}}.page-nav{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 2rem}.nav-home{display:flex;align-items:center;gap:0.5rem;color:var(--accent-blue);font-family:'Orbitron', sans-serif;font-size:1.1rem;transition:all 0.3s ease}.nav-home:hover{color:var(--accent-pink);transform:translateX(-5px)}.nav-icon{font-size:1.5rem;animation:navPulse 2s ease-in-out infinite}@keyframes navPulse{0%, 100%{transform:translateX(0)}50%{transform:translateX(-3px)}}.page-title h1{font-family:'Orbitron', sans-serif;font-size:1.5rem;color:var(--accent-purple);margin:0;text-shadow:0 0 10px currentColor}.fade-in-on-scroll{opacity:0;transform:translateY(20px);transition:all 0.6s ease}.fade-in-on-scroll.visible{opacity:1;transform:translateY(0)}.btn,button,input[type="submit"]{background:linear-gradient(45deg, var(--accent-blue), var(--accent-purple));border:none;color:white;padding:0.75rem 1.5rem;border-radius:25px;font-family:'Orbitron', sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;cursor:pointer;transition:all 0.3s ease;position:relative;overflow:hidden}.btn:hover,button:hover,input[type="submit"]:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(0,255,255,0.3)}.btn::before,button::before,input[type="submit"]::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);transition:left 0.5s ease}.btn:hover::before,button:hover::before,input[type="submit"]:hover::before{left:100%}input[type="text"],input[type="email"],textarea{background:rgba(0,0,0,0.5);border:2px solid var(--accent-blue);color:var(--text-light);padding:0.5rem 1rem;border-radius:10px;font-family:'Roboto Mono', monospace;transition:all 0.3s ease}input[type="text"]:focus,input[type="email"]:focus,textarea:focus{outline:none;border-color:var(--accent-pink);box-shadow:0 0 15px rgba(236,72,153,0.3);background:rgba(0,0,0,0.7)}blockquote{border-left:4px solid var(--accent-blue);background:rgba(0,0,0,0.3);padding:1rem 1.5rem;margin:2rem 0;position:relative;border-radius:0 10px 10px 0}blockquote::before{content:'"';font-size:4rem;color:var(--accent-blue);position:absolute;top:-10px;left:10px;opacity:0.3}blockquote p{margin:0;font-style:italic}img{max-width:100%;height:auto;display:block;margin:1.5rem auto;border-radius:10px;transition:all 0.3s ease;box-shadow:0 5px 15px rgba(0,0,0,0.3)}img:hover{transform:scale(1.02);box-shadow:0 10px 25px rgba(0,255,255,0.2)}#main_content img,.main-content img,article img,.content img{max-width:100%;width:auto;height:auto;display:block;margin:1.5rem auto;box-sizing:border-box}@media (max-width: 768px){img{max-width:calc(100% - 1rem);margin-left:auto;margin-right:auto}}h1::before,h2::before{content:'▶ ';color:var(--accent-blue);animation:headingPulse 2s ease-in-out infinite}@keyframes headingPulse{0%, 100%{opacity:0.7}50%{opacity:1}}.page-loader{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--primary-bg);display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;pointer-events:none;transition:opacity 0.3s ease}.page-loader.active{opacity:1;pointer-events:all}.loader-circuit{width:100px;height:100px;border:3px solid var(--accent-blue);border-radius:50%;border-top-color:transparent;animation:loaderSpin 1s linear infinite}@keyframes loaderSpin{to{transform:rotate(360deg)}}.tutorial-warning-banner{background:linear-gradient(135deg, #ff6b35, #f7931e);border:2px solid #ff4500;border-radius:10px;padding:1rem 1.5rem;margin:-1rem -1rem 2rem -1rem;text-align:center;box-shadow:0 4px 15px rgba(255,107,53,0.3);animation:warningPulse 3s ease-in-out infinite}.tutorial-warning-banner strong{display:block;font-size:1.2rem;color:#fff;font-family:'Orbitron', sans-serif;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:0.5rem;text-shadow:0 2px 4px rgba(0,0,0,0.3)}.tutorial-warning-banner p{color:#fff;margin:0;font-size:0.9rem;opacity:0.9;text-shadow:0 1px 2px rgba(0,0,0,0.2)}@keyframes warningPulse{0%, 100%{box-shadow:0 4px 15px rgba(255,107,53,0.3);transform:scale(1)}50%{box-shadow:0 6px 20px rgba(255,107,53,0.5);transform:scale(1.01)}}@media (max-width: 768px){.tutorial-warning-banner{margin:-0.5rem -0.5rem 1rem -0.5rem;padding:0.8rem 1rem}.tutorial-warning-banner strong{font-size:1rem}.tutorial-warning-banner p{font-size:0.8rem}}
