@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Montserrat:wght@400;500;600;700;800&display=swap";.navbar{width:100%;height:70px;background-color:#004f97f2;padding:0 6rem;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:16px;position:fixed;top:0;left:0;z-index:1000;transition:all .3s ease;box-shadow:0 2px 10px #0000001a}.navbar-scrolled{height:60px;background-color:#004f97fa;box-shadow:0 4px 12px #00000026}.nav-logo{display:flex;align-items:center;font-size:24px;font-weight:700;letter-spacing:.5px;text-decoration:none;color:#fff;transition:all .3s ease}.nav-logo:hover{transform:translateY(-1px)}.logo-image{height:45px;width:auto;margin-right:12px;transition:all .3s ease;filter:brightness(1.1)}.navbar-scrolled .logo-image{height:38px}.logo-text{margin-right:4px;font-weight:700}.logo-dot{width:8px;height:8px;background-color:#faa61a;border-radius:50%;display:inline-block;transition:all .3s ease}.nav-logo:hover .logo-dot{background-color:gold;transform:scale(1.2)}.nav-list{display:flex;list-style:none;align-items:center;margin:0;padding:0;gap:10px}.nav-link{padding:8px 16px;text-decoration:none;color:#fff;font-weight:500;position:relative;transition:all .2s ease;border-radius:4px;display:block}.nav-link:not(.nav-btn):after{content:"";position:absolute;width:0;height:2px;bottom:0;left:50%;background-color:#faa61a;transition:all .3s ease;transform:translate(-50%)}.nav-link:not(.nav-btn):hover:after{width:70%}.nav-btn{background-color:#faa61a;border-radius:24px;padding:8px 20px!important;text-align:center;font-weight:600;box-shadow:0 2px 6px #faa61a4d;transition:all .3s ease;border:2px solid #FAA61A}.nav-btn:hover{background-color:#fff;color:#faa61a;transform:translateY(-2px)}.hamburger{display:none;cursor:pointer;flex-direction:column;justify-content:space-between;width:30px;height:20px}.hamburger-line{width:100%;height:3px;background-color:#fff;transition:all .3s ease;border-radius:2px}.hamburger-line.open:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav-backdrop{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:999}.nav-backdrop.show{display:block}@media (max-width: 768px){.navbar{padding:0 1.5rem}.logo-image{height:38px;margin-right:10px}.navbar-scrolled .logo-image{height:32px}.nav-logo{font-size:20px}.hamburger{display:flex;z-index:1001}.nav-list{position:fixed;top:0;right:-280px;width:270px;height:100vh;background-color:#004f97;flex-direction:column;padding:80px 20px 30px;transition:right .3s ease;z-index:1000;box-shadow:-5px 0 15px #0000001a;gap:15px;align-items:flex-start}.nav-list.open{right:0}.nav-link{width:100%;padding:12px}.nav-link:not(.nav-btn):after{display:none}.nav-btn{width:100%;margin-top:10px;text-align:center}}.hero-hero-sec{width:100%;min-height:100vh;display:flex;align-items:flex-end;justify-content:center;position:relative;background:#0a1628;overflow:hidden;padding:0 0 180px;margin:0}.hero-carousel-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.hero-carousel-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity 1.2s ease-in-out;background-size:cover;background-position:center;background-repeat:no-repeat}.hero-slide-active{opacity:1}.hero-bg-dbms{background:linear-gradient(#1a345c0d,#1a345c0d),url(/assets/db-C2Lq1Py6.png);background-size:100vw 50vw;background-position:center;background-repeat:no-repeat}.hero-bg-ai{background:linear-gradient(#1a345c0d,#1a345c0d),url(/assets/ai-VuMB4M_h.png);background-size:100vw 50vw;background-position:center;background-repeat:no-repeat}.hero-bg-ds{background:linear-gradient(#1a345c0d,#1a345c0d),url(/assets/ds-DFhdCpm0.png);background-size:100vw 50vw;background-position:center;background-repeat:no-repeat}.hero-bg-networks{background:linear-gradient(#1a345c0d,#1a345c0d),url(/assets/net-2BeCil64.png);background-size:100vw 50vw;background-position:center;background-repeat:no-repeat}.hero-bg-digital{background:linear-gradient(#1a345c0d,#1a345c0d),url(/assets/dig-CDbglyGh.png);background-size:100vw 50vw;background-position:center;background-repeat:no-repeat}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0a162899,#0f1c3299,#14233c99);z-index:2}.hero-hero-content{max-width:1000px;text-align:center;z-index:15;padding:0 90px;margin:0 auto}.hero-hero-tag{display:inline-flex;align-items:center;gap:10px;background:#ffffff1a;color:#fff;font-weight:600;font-size:16px;padding:12px 24px;border-radius:50px;margin-bottom:10px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 8px 32px #0000001a;opacity:0;transform:translateY(20px);transition:all 0s cubic-bezier(0,0,.2,1)}.hero-hero-tag.hero-animate-in{opacity:1;transform:translateY(0)}.hero-tag-icon{font-size:18px;animation:hero-tagIconFloat 3s infinite ease-in-out}.hero-hero-title{font-size:clamp(56px,9vw,96px);font-weight:800;line-height:1.1;margin:0 0 30px;letter-spacing:-2px;opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(0,0,.2,1)}.hero-hero-title.hero-animate-in{opacity:1;transform:translateY(0)}.hero-title-highlight{color:gold;text-shadow:0 0 30px rgba(255,215,0,0);position:relative}.hero-title-main{color:#fff;margin:0 15px;text-shadow:0 0 20px rgba(255,255,255,.1)}.hero-title-accent{color:#4169e1;text-shadow:0 0 30px rgba(65,105,225,0);position:relative}.hero-hero-subtitle{font-size:20px;color:#ffffffe6;margin:0 auto 50px;max-width:800px;line-height:1.6;opacity:0;transform:translateY(20px);transition:all .5s cubic-bezier(0,0,.2,1) .2s;white-space:nowrap}.hero-hero-subtitle.hero-animate-in{opacity:1;transform:translateY(0)}.hero-btn-container{display:flex;justify-content:center;margin-bottom:-10px}.hero-hero-btn{display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:600;padding:14px 28px;border-radius:50px;cursor:pointer;transition:all .3s cubic-bezier(0,0,.2,1);border:none;text-decoration:none;position:relative;overflow:hidden;opacity:0;transform:translateY(20px);animation:hero-fadeInUp .6s ease .8s forwards}.hero-btn-primary{background:linear-gradient(135deg,gold,orange);color:#0a1628;box-shadow:0 10px 30px #ffd7004d;font-weight:700}.hero-btn-primary:hover{transform:translateY(-5px);box-shadow:0 15px 40px #ffd70000;background:linear-gradient(135deg,#ffed4a,#ffb84d)}.hero-btn-arrow{font-size:18px;transition:transform .3s ease;font-weight:700}.hero-hero-btn:hover .hero-btn-arrow{transform:translate(8px)}.hero-stats{display:flex;justify-content:center;gap:80px;opacity:0;transform:translateY(20px);animation:hero-fadeInUp .6s ease 1.2s forwards}.hero-stat{text-align:center}.hero-stat-number{font-size:42px;font-weight:800;color:gold;text-shadow:0 0 20px rgba(255,215,0,0);margin-bottom:8px;animation:hero-statCount 2s ease-out 1.5s}.hero-stat-label{font-size:14px;color:#fffc;font-weight:500;text-transform:uppercase;letter-spacing:1px}.hero-carousel-dots{position:absolute;bottom:40px;left:50%;transform:translate(-50%);display:flex;gap:20px;z-index:20}.hero-carousel-dot{width:16px;height:16px;border-radius:50%;background:#ffffff4d;border:2px solid rgba(255,255,255,.5);cursor:pointer;transition:all .3s cubic-bezier(0,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-carousel-dot:hover,.hero-dot-active{background:gold;border-color:gold;transform:scale(1.3);box-shadow:0 0 15px #ffd70080}@keyframes hero-fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-tagIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (max-width: 768px){.hero-hero-sec{padding:0 0 120px}.hero-hero-title{font-size:clamp(40px,12vw,64px);letter-spacing:-1px;margin-bottom:20px}.hero-hero-subtitle{font-size:18px;padding:0 10px;margin-bottom:40px;white-space:normal}.hero-hero-btn{padding:12px 24px;font-size:15px}.hero-carousel-dots{bottom:30px;gap:15px}.hero-carousel-dot{width:14px;height:14px}.hero-hero-content{padding:0 15px}}@media (max-width: 480px){.hero-hero-sec{padding:0 0 100px}.hero-hero-tag{font-size:14px;padding:10px 20px;gap:8px}.hero-hero-subtitle{font-size:16px}.hero-carousel-dots{bottom:20px;gap:12px}.hero-carousel-dot{width:12px;height:12px}}.about-sec{width:100%;padding:100px 0;background:linear-gradient(135deg,#0a1628,#1b2b4d,#0f1c35)!important;overflow:hidden;margin-top:0;position:relative}.about-sec .about-container{max-width:1200px;margin:0 auto;padding:0 20px;position:relative;z-index:10}.about-sec .about-row{display:flex;flex-wrap:wrap;align-items:center;margin:0 -15px}.about-sec .about-image-container{flex:0 0 50%;max-width:50%;padding:0 15px;position:relative}.about-sec .about-image-wrapper{position:relative;padding-right:40px;padding-bottom:40px}.about-sec .about-image{width:100%;height:auto;border-radius:20px!important;box-shadow:0 25px 50px #0000004d!important;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;z-index:3;border:1px solid rgba(255,255,255,.1)!important}.about-sec .about-image:hover{transform:translateY(-10px)!important;box-shadow:0 35px 70px #0006!important}.about-sec .image-decoration{position:absolute;width:80%;height:80%;bottom:0;right:0;background:linear-gradient(135deg,#ffd7001a,#4169e11a)!important;border-radius:20px;z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.05)}.about-sec .image-glow{position:absolute;width:100%;height:100%;top:20px;left:20px;background:radial-gradient(circle,rgba(255,215,0,.05) 0%,transparent 70%)!important;border-radius:20px;z-index:2}.about-sec .about-content{flex:0 0 50%;max-width:50%;padding:0 15px;position:relative;z-index:10}.about-sec .about-content .section-tag{display:inline-flex!important;align-items:center;gap:8px;background:#ffffff1a!important;color:#fff!important;font-weight:600;font-size:14px;padding:10px 20px;border-radius:30px!important;margin-bottom:20px;border:1px solid rgba(255,255,255,.2)!important;-webkit-backdrop-filter:blur(15px)!important;backdrop-filter:blur(15px)!important;box-shadow:0 8px 32px #ffd7001a!important}.about-sec .about-content .section-tag .tag-icon{font-size:16px;color:#fff!important}.about-sec .about-content .about-title{font-size:clamp(30px,5vw,42px)!important;font-weight:800!important;margin-bottom:20px;line-height:1.2;letter-spacing:-1px;color:#fff!important}.about-sec .about-content .about-title .title-highlight{color:gold!important;display:inline-block;margin-right:8px}.about-sec .about-content .about-title .title-main{color:#fff!important;display:inline-block;margin-right:8px}.about-sec .about-content .about-title .title-accent{color:#4169e1!important;display:inline-block}.about-sec .about-content .about-divider{width:80px;height:4px;background:linear-gradient(90deg,gold,#4169e1)!important;margin-bottom:30px;border-radius:2px;box-shadow:0 0 15px #ffd7004d!important}.about-sec .about-content .about-description{font-size:16px!important;line-height:1.7;color:#ffffffd9!important;margin-bottom:20px;text-align:justify}.about-sec .about-content .about-features{display:flex!important;flex-wrap:wrap;margin-top:40px;gap:15px;justify-content:space-between}.about-sec .about-content .about-features .feature-item{flex:1;min-width:0;display:flex!important;align-items:center;gap:12px;padding:15px;background:#ffffff0d!important;border-radius:15px!important;border:1px solid rgba(255,255,255,.1)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;transition:all .3s cubic-bezier(.4,0,.2,1)}.about-sec .about-content .about-features .feature-item:hover{background:#ffd7001a!important;border-color:#ffd70033!important;transform:translateY(-3px)!important;box-shadow:0 10px 25px #ffd7001a!important}.about-sec .about-content .about-features .feature-item .feature-icon{font-size:24px!important;width:50px;height:50px;display:flex!important;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffd70033,#4169e133)!important;border-radius:50%!important;border:1px solid rgba(255,255,255,.2)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;box-shadow:0 8px 16px #0003!important;flex-shrink:0}.about-sec .about-content .about-features .feature-item .feature-text{font-weight:600!important;color:#fff!important;font-size:14px!important;flex:1}.about-sec .about-bg-elements{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.about-sec .about-bg-elements .bg-element{position:absolute;border-radius:50%;background:#ffd7000d!important;animation:floatGentle 8s infinite ease-in-out}.about-sec .about-bg-elements .bg-element-1{width:200px;height:200px;top:10%;left:5%;animation-delay:0s;animation-duration:12s}.about-sec .about-bg-elements .bg-element-2{width:150px;height:150px;top:60%;right:10%;animation-delay:4s;animation-duration:10s}.about-sec .about-bg-elements .bg-element-3{width:100px;height:100px;bottom:20%;left:15%;animation-delay:8s;animation-duration:14s;background:#4169e10d!important}@keyframes floatGentle{0%,to{transform:translateY(0) rotate(0);opacity:.3}50%{transform:translateY(-20px) rotate(180deg);opacity:.5}}@media (max-width: 991px){.about-sec .about-image-container,.about-sec .about-content{flex:0 0 100%;max-width:100%}.about-sec .about-image-container{margin-bottom:60px}.about-sec .about-row{text-align:center}}@media (max-width: 768px){.about-sec{padding:80px 0!important}.about-sec .about-content .about-title{font-size:clamp(24px,6vw,32px)!important;text-align:center}.about-sec .about-content .about-title .title-highlight,.about-sec .about-content .about-title .title-main,.about-sec .about-content .about-title .title-accent{display:block!important;margin:0 0 5px}.about-sec .about-image-wrapper{padding-right:25px;padding-bottom:25px}.about-sec .about-content .about-description{text-align:left}.about-sec .about-content .section-tag{margin:0 auto 20px}.about-sec .about-content .about-divider{margin:0 auto 30px}}@media (max-width: 480px){.about-sec{padding:60px 0!important}.about-sec .about-container{padding:0 15px}.about-sec .about-content .section-tag{font-size:12px!important;padding:8px 16px}.about-sec .about-content .about-description{font-size:15px!important}.about-sec .about-content .about-features{flex-direction:column;gap:10px}.about-sec .about-content .about-features .feature-item{padding:12px;gap:10px;flex:none;width:100%}.about-sec .about-content .about-features .feature-item .feature-icon{width:40px!important;height:40px!important;font-size:20px!important}.about-sec .about-content .about-features .feature-item .feature-text{font-size:13px!important}}.curriculum-wrapper{width:100%;min-height:100vh;padding:75px 0;background:linear-gradient(135deg,#0a1628,#1b2b4d,#0f1c35);overflow:hidden;position:relative}.curriculum-wrapper .curriculum-container{max-width:1400px;margin:0 auto;padding:0 20px;position:relative;z-index:10}.curriculum-wrapper .curriculum-header{text-align:center;margin-bottom:25px}.curriculum-wrapper .curriculum-section-tag{display:inline-flex;align-items:center;gap:6px;background:#ffffff1a;color:#fff;font-weight:600;font-size:11px;padding:8px 15px;border-radius:25px;margin-bottom:15px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 8px 32px #ffd7001a}.curriculum-wrapper .curriculum-tag-icon{font-size:12px;color:#fff}.curriculum-wrapper .curriculum-title{font-size:clamp(30px,6vw,48px);font-weight:800;line-height:1.1;margin:0 0 15px;letter-spacing:-1.5px;color:#fff}.curriculum-wrapper .curriculum-title-highlight{color:gold;display:inline-block;margin-right:9px}.curriculum-wrapper .curriculum-title-main{color:#fff;display:inline-block;margin-right:9px}.curriculum-wrapper .curriculum-title-accent{color:#4169e1;display:inline-block}.curriculum-wrapper .curriculum-divider{width:75px;height:3px;background:linear-gradient(90deg,gold,#4169e1);margin:0 auto 23px;border-radius:2px;box-shadow:0 0 15px #ffd7004d}.curriculum-wrapper .curriculum-subtitle{font-size:14px;color:#ffffffd9;max-width:600px;margin:0 auto;line-height:1.6}.curriculum-wrapper .curriculum-content{display:flex;gap:30px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:18px;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 25px 50px #0000001a;min-height:491px;max-width:1150px;margin:0 auto}.curriculum-wrapper .curriculum-sidebar{flex:0 0 260px;background:#ffffff08;border-right:1px solid rgba(255,255,255,.1);padding:23px 0}.curriculum-wrapper .sidebar-header{padding:0 23px 15px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:15px}.curriculum-wrapper .sidebar-title{font-size:14px;font-weight:700;color:#fff;margin:0 0 4px}.curriculum-wrapper .sidebar-subtitle{font-size:10px;color:#fff9;margin:0;font-weight:400}.curriculum-wrapper .curriculum-list{list-style-type:none;padding:0;margin:0}.curriculum-wrapper .curriculum-item{padding:15px 23px;display:flex;align-items:center;gap:11px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border-bottom:1px solid rgba(255,255,255,.05);position:relative;opacity:0;transform:translate(-20px);animation:curriculumSlideIn .6s ease forwards}.curriculum-wrapper .curriculum-item:before{content:"";position:absolute;left:0;top:0;width:2px;height:100%;background:linear-gradient(180deg,gold,#4169e1);transform:scaleY(0);transition:transform .3s ease}.curriculum-wrapper .curriculum-item:hover{background:#ffffff0d;transform:translate(4px)}.curriculum-wrapper .curriculum-item:hover:before{transform:scaleY(1)}.curriculum-wrapper .curriculum-item.curriculum-active{background:#ffd7001a;border-color:#ffd70033;color:#fff;transform:translate(4px)}.curriculum-wrapper .curriculum-item.curriculum-active:before{transform:scaleY(1)}.curriculum-wrapper .curriculum-item-icon{font-size:18px;min-width:23px;text-align:center}.curriculum-wrapper .curriculum-item-text{font-size:12px;font-weight:600;color:#fff;flex:1}.curriculum-wrapper .curriculum-item-arrow{font-size:14px;color:#fff6;transition:all .3s ease;transform:translate(-4px);opacity:0}.curriculum-wrapper .curriculum-item:hover .curriculum-item-arrow,.curriculum-wrapper .curriculum-item.curriculum-active .curriculum-item-arrow{transform:translate(0);opacity:1;color:gold}.curriculum-wrapper .curriculum-details{flex:1;position:relative;padding:30px;min-height:457px}.curriculum-wrapper .curriculum-panel{position:absolute;top:30px;left:30px;right:30px;bottom:30px;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .4s cubic-bezier(.4,0,.2,1);overflow-y:auto}.curriculum-wrapper .curriculum-panel.curriculum-panel-active{opacity:1;visibility:visible;transform:translateY(0)}.curriculum-wrapper .panel-header{display:flex;align-items:center;gap:15px;margin-bottom:18px}.curriculum-wrapper .panel-icon-container{width:45px;height:45px;background:linear-gradient(135deg,#ffd70033,#4169e133);border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 20px #0000001a}.curriculum-wrapper .panel-icon{font-size:21px}.curriculum-wrapper .panel-title{font-size:21px;font-weight:700;color:#fff;margin:0;line-height:1.2}.curriculum-wrapper .panel-description{font-size:14px;line-height:1.7;color:#ffffffd9;margin-bottom:25px;text-align:justify}.curriculum-wrapper .panel-topics{margin-bottom:30px}.curriculum-wrapper .topics-title{font-size:15px;font-weight:700;margin-bottom:18px;color:#fff;display:flex;align-items:center;gap:8px}.curriculum-wrapper .topics-title:before{content:"🎯";font-size:14px}.curriculum-wrapper .topics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.curriculum-wrapper .topic-item{display:flex;align-items:center;gap:9px;padding:9px 12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:9px;transition:all .3s ease;opacity:0;transform:translateY(10px);animation:curriculumTopicSlideIn .5s ease forwards}.curriculum-wrapper .topic-item:hover{background:#ffd7001a;border-color:#ffd70033;transform:translateY(-2px)}.curriculum-wrapper .topic-bullet{width:6px;height:6px;background:linear-gradient(45deg,gold,orange);border-radius:50%;flex-shrink:0;box-shadow:0 0 10px #ffd7004d}.curriculum-wrapper .topic-text{font-size:11px;font-weight:500;color:#ffffffe6;flex:1}.curriculum-wrapper .panel-actions{display:flex;gap:12px;flex-wrap:wrap}.curriculum-wrapper .panel-button{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:11px 18px;border-radius:23px;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;position:relative;overflow:hidden}.curriculum-wrapper .curriculum-primary-btn{background:linear-gradient(135deg,gold,orange);color:#0a1628;box-shadow:0 6px 15px #ffd70033}.curriculum-wrapper .curriculum-primary-btn:hover{background:linear-gradient(135deg,#ffed4a,#ffb84d);transform:translateY(-2px);box-shadow:0 9px 23px #ffd7004d}.curriculum-wrapper .curriculum-download-btn{background:linear-gradient(135deg,#4169e1,#1e3a8a);color:#fff;border:1px solid rgba(65,105,225,.3);box-shadow:0 6px 15px #4169e133}.curriculum-wrapper .curriculum-download-btn:hover{background:linear-gradient(135deg,#5b7cfa,#2563eb);transform:translateY(-2px);box-shadow:0 9px 23px #4169e166;border-color:#4169e180}.curriculum-wrapper .btn-text{font-weight:600}.curriculum-wrapper .btn-arrow,.curriculum-wrapper .btn-icon{font-size:12px;transition:transform .3s ease}.curriculum-wrapper .panel-button:hover .btn-arrow{transform:translate(3px)}.curriculum-wrapper .panel-button:hover .btn-icon{transform:scale(1.1)}.curriculum-wrapper .curriculum-bg-elements{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.curriculum-wrapper .curriculum-bg-element{position:absolute;border-radius:50%;background:#ffd70008;animation:curriculumFloatGentle 15s infinite ease-in-out}.curriculum-wrapper .curriculum-bg-element-1{width:260px;height:260px;top:5%;left:5%;animation-delay:0s;animation-duration:20s}.curriculum-wrapper .curriculum-bg-element-2{width:185px;height:185px;top:15%;right:10%;animation-delay:7s;animation-duration:16s;background:#4169e108}.curriculum-wrapper .curriculum-bg-element-3{width:150px;height:150px;bottom:15%;left:15%;animation-delay:12s;animation-duration:18s}.curriculum-wrapper .curriculum-bg-element-4{width:135px;height:135px;bottom:25%;right:8%;animation-delay:18s;animation-duration:14s;background:#4169e108}@keyframes curriculumSlideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes curriculumTopicSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes curriculumFloatGentle{0%,to{transform:translateY(0) rotate(0);opacity:.3}50%{transform:translateY(-40px) rotate(180deg);opacity:.5}}@media (max-width: 1200px){.curriculum-wrapper .curriculum-content{gap:23px;max-width:968px}.curriculum-wrapper .curriculum-sidebar{flex:0 0 240px}}@media (max-width: 991px){.curriculum-wrapper .curriculum-content{flex-direction:column;gap:0;max-width:none}.curriculum-wrapper .curriculum-sidebar{flex:auto;border-right:none;border-bottom:1px solid rgba(255,255,255,.1);padding:15px 0}.curriculum-wrapper .curriculum-list{display:flex;overflow-x:auto;gap:8px;padding:0 15px}.curriculum-wrapper .curriculum-item{flex-shrink:0;min-width:150px;border-bottom:none;border-radius:9px;background:#ffffff0d}.curriculum-wrapper .curriculum-details{min-height:422px;padding:23px}.curriculum-wrapper .curriculum-panel{top:23px;left:23px;right:23px;bottom:23px}}@media (max-width: 768px){.curriculum-wrapper{padding:60px 0}.curriculum-wrapper .curriculum-container{padding:0 11px}.curriculum-wrapper .curriculum-header{margin-bottom:20px}.curriculum-wrapper .curriculum-title{font-size:clamp(24px,6vw,36px)}.curriculum-wrapper .curriculum-details{padding:15px}.curriculum-wrapper .curriculum-panel{top:15px;left:15px;right:15px;bottom:15px}.curriculum-wrapper .topics-grid{grid-template-columns:1fr}.curriculum-wrapper .panel-actions{flex-direction:column}.curriculum-wrapper .panel-button{width:100%;justify-content:center}}@media (max-width: 480px){.curriculum-wrapper{padding:45px 0}.curriculum-wrapper .curriculum-subtitle{font-size:12px}.curriculum-wrapper .curriculum-section-tag{font-size:9px;padding:6px 12px}.curriculum-wrapper .panel-header{flex-direction:column;align-items:flex-start;gap:11px}.curriculum-wrapper .panel-icon-container{width:38px;height:38px}.curriculum-wrapper .panel-icon,.curriculum-wrapper .panel-title{font-size:18px}.curriculum-wrapper .sidebar-header{text-align:center}}.contact-wrapper{width:100%;min-height:100vh;padding:75px 0;background:linear-gradient(135deg,#0a1628,#1b2b4d,#0f1c35)!important;overflow:hidden;position:relative}.contact-wrapper .contact-container{max-width:1400px;margin:0 auto;padding:0 20px;position:relative;z-index:10}.contact-wrapper .contact-header{text-align:center;margin-bottom:60px}.contact-wrapper .contact-section-tag{display:inline-flex;align-items:center;gap:6px;background:#ffffff1a!important;color:#fff!important;font-weight:600;font-size:11px;padding:8px 15px;border-radius:25px;margin-bottom:15px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 8px 32px #ffd7001a}.contact-wrapper .contact-tag-icon{font-size:12px;color:#fff!important}.contact-wrapper .contact-title{font-size:clamp(30px,6vw,48px)!important;font-weight:800!important;line-height:1.1;margin:0 0 15px;letter-spacing:-1.5px;color:#fff!important}.contact-wrapper .contact-title-highlight{color:gold!important;display:inline-block;margin-right:9px}.contact-wrapper .contact-title-main{color:#fff!important;display:inline-block;margin-right:9px}.contact-wrapper .contact-title-accent{color:#4169e1!important;display:inline-block}.contact-wrapper .contact-divider{width:75px;height:3px;background:linear-gradient(90deg,gold,#4169e1)!important;margin:0 auto 23px;border-radius:2px;box-shadow:0 0 15px #ffd7004d}.contact-wrapper .contact-subtitle{font-size:14px!important;color:#ffffffd9!important;max-width:525px;margin:0 auto;line-height:1.6}.contact-wrapper .contact-content{display:flex;justify-content:center;align-items:center}.contact-wrapper .contact-info{background:#ffffff0d!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:18px!important;padding:30px;-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important;box-shadow:0 19px 38px #0000001a!important;max-width:800px;width:100%}.contact-wrapper .contact-info-header{margin-bottom:30px;text-align:center}.contact-wrapper .contact-info-title{font-size:21px!important;font-weight:700!important;color:#fff!important;margin:0 0 11px}.contact-wrapper .contact-info-description{font-size:12px!important;color:#ffffffb3!important;margin:0;line-height:1.6}.contact-wrapper .contact-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.contact-wrapper .contact-info-item{display:flex;align-items:center;gap:15px;padding:15px;background:#ffffff08!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:12px!important;transition:all .3s cubic-bezier(.4,0,.2,1);opacity:0;transform:translate(-20px);animation:contactSlideIn .6s ease forwards}.contact-wrapper .contact-info-item:hover{background:#ffffff14!important;border-color:#ffd70033!important;transform:translate(4px);box-shadow:0 8px 19px #ffd7001a!important}.contact-wrapper .contact-info-icon{width:45px;height:45px;background:linear-gradient(135deg,#ffd70033,#4169e133)!important;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 15px #0000001a;flex-shrink:0}.contact-wrapper .contact-icon-emoji{font-size:18px!important}.contact-wrapper .contact-info-content{flex:1}.contact-wrapper .contact-info-item-title{font-size:14px!important;font-weight:600!important;color:#fff!important;margin:0 0 4px}.contact-wrapper .contact-info-item-text{font-size:11px!important;color:#ffffffb3!important;margin:0;line-height:1.5}.contact-wrapper .contact-bg-elements{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.contact-wrapper .contact-bg-element{position:absolute;border-radius:50%;background:#ffd70008!important;animation:contactFloatGentle 15s infinite ease-in-out}.contact-wrapper .contact-bg-element-1{width:260px;height:260px;top:8%;left:8%;animation-delay:0s;animation-duration:20s}.contact-wrapper .contact-bg-element-2{width:185px;height:185px;top:20%;right:12%;animation-delay:7s;animation-duration:16s;background:#4169e108!important}.contact-wrapper .contact-bg-element-3{width:150px;height:150px;bottom:20%;left:15%;animation-delay:12s;animation-duration:18s}.contact-wrapper .contact-bg-element-4{width:135px;height:135px;bottom:35%;right:10%;animation-delay:18s;animation-duration:14s;background:#4169e108!important}@keyframes contactSlideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes contactFloatGentle{0%,to{transform:translateY(0) rotate(0);opacity:.3}50%{transform:translateY(-30px) rotate(180deg);opacity:.5}}@media (max-width: 1200px){.contact-wrapper .contact-info{max-width:700px}}@media (max-width: 991px){.contact-wrapper .contact-info{max-width:600px}.contact-wrapper .contact-info-grid{grid-template-columns:1fr;gap:15px}}@media (max-width: 768px){.contact-wrapper{padding:60px 0!important}.contact-wrapper .contact-container{padding:0 11px}.contact-wrapper .contact-header{margin-bottom:45px}.contact-wrapper .contact-title{font-size:clamp(24px,6vw,36px)!important}.contact-wrapper .contact-info{padding:23px;max-width:100%}.contact-wrapper .contact-info-grid{grid-template-columns:1fr}}@media (max-width: 480px){.contact-wrapper{padding:45px 0!important}.contact-wrapper .contact-subtitle{font-size:12px!important}.contact-wrapper .contact-section-tag{font-size:9px!important;padding:6px 12px}.contact-wrapper .contact-info{padding:15px}.contact-wrapper .contact-info-item{flex-direction:column;text-align:center;gap:11px}.contact-wrapper .contact-info-icon{width:38px;height:38px}.contact-wrapper .contact-icon-emoji{font-size:15px!important}}.network-bg .card-icon,.datastructure-bg .card-icon{background-color:#ffffffe6}.network-bg .placeholder-content,.datastructure-bg .placeholder-content{color:#fff}.lab-page{max-width:1056px;margin:0 auto;padding:26.4px 17.6px 44px;position:relative;z-index:1}.lab-header{text-align:center;margin-bottom:35.2px}.section-tag{display:inline-block;background-color:#004f971f;color:#004f97;font-weight:600;font-size:12.32px;padding:5.28px 10.56px;border-radius:17.6px;margin-bottom:10.56px}.lab-title{font-size:28.16px;font-weight:700;color:#333;margin-bottom:10.56px}.section-divider{width:52.8px;height:2.64px;background-color:#faa61a;margin:0 auto 17.6px}.lab-description{max-width:616px;margin:0 auto 26.4px;color:#555;font-size:14.08px;line-height:1.6}.lab-grid{display:grid;grid-template-columns:repeat(3,minmax(281.6px,1fr));gap:22px;margin-bottom:22px;justify-content:center}.lab-grid.last-row{grid-template-columns:repeat(2,minmax(281.6px,1fr));max-width:642.4px;margin:0 auto 44px}.lab-card{background-color:#fff;border-radius:10.56px;overflow:hidden;box-shadow:0 4.4px 13.2px #00000014;transition:all .3s ease;height:100%;display:flex;flex-direction:column;position:relative}.lab-card.hovered{transform:translateY(-7.04px);box-shadow:0 13.2px 26.4px #0000001f}.card-image-container{position:relative;height:158.4px;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;transition:all .3s ease;background-color:#f8f9fa;border-bottom:1px solid #eee}.white-bg{background-color:#f8f9fa}.placeholder-content{font-size:61.6px;display:flex;align-items:center;justify-content:center;transition:transform .4s ease}.lab-card.hovered .placeholder-content{transform:scale(1.15)}.lab-card.hovered .card-image{transform:scale(1.05)}.card-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0000001a;z-index:1}.card-icon{position:absolute;top:13.2px;right:13.2px;width:35.2px;height:35.2px;background-color:#faa61a;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:17.6px;box-shadow:0 1.76px 8.8px #0003;z-index:2}.card-content{padding:17.6px;flex-grow:1;display:flex;flex-direction:column}.card-title{font-size:15.84px;font-weight:600;margin-bottom:8.8px;color:#004f97;text-decoration:none}.card-description{color:#555;margin-bottom:17.6px;line-height:1.5;flex-grow:1;font-size:13.2px}.card-footer{margin-top:auto}.card-button{width:100%;padding:10.56px 15.84px;background-color:#004f97;color:#fff;border:none;border-radius:7.04px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center;box-shadow:0 3.52px 5.28px #004f971a;font-size:14.08px}.card-button:hover{background-color:#003d75;box-shadow:0 5.28px 10.56px #004f9733;transform:translateY(-1.76px)}.button-arrow{transition:transform .3s ease;margin-left:7.04px}.lab-card.hovered .button-arrow{transform:translate(4.4px)}.lab-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(264px,1fr));gap:22px;margin-top:39.6px;background-color:#f8f9fa;padding:30.8px;border-radius:10.56px}.feature{display:flex;align-items:flex-start;gap:12.32px}.feature-icon{width:39.6px;height:39.6px;background-color:#004f971a;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:19.36px;color:#004f97;flex-shrink:0}.feature-content h3{font-size:14.96px;font-weight:600;color:#333;margin-bottom:5.28px}.feature-content p{color:#555;font-size:12.32px;line-height:1.5}@media (max-width: 1080px){.lab-grid,.lab-grid.last-row{grid-template-columns:repeat(2,minmax(264px,1fr));max-width:572px;margin-left:auto;margin-right:auto}}@media (max-width: 768px){.lab-page{padding-top:17.6px}.lab-title{font-size:22.88px}.lab-grid,.lab-grid.last-row{grid-template-columns:1fr;max-width:352px}.lab-features{grid-template-columns:1fr;padding:22px 15.84px}.card-image-container{height:140.8px}}.kmap-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;max-width:1000px;margin:0 auto;padding:20px;background-color:#f8f9fa;border-radius:8px;box-shadow:0 2px 10px #0000001a}.kmap-container .tab-container{margin-bottom:20px}.kmap-container .tabs{display:flex;border-bottom:1px solid #dee2e6;margin-bottom:15px}.kmap-container .tabs button{background-color:transparent;border:none;padding:10px 20px;font-size:16px;cursor:pointer;position:relative;transition:all .3s;color:#495057}.kmap-container .tabs button.active{color:#007bff;font-weight:600}.kmap-container .tabs button.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;background-color:#007bff}.kmap-container .tabs button:hover{color:#007bff}.kmap-container .study-controls{background-color:#e9ecef;padding:15px;border-radius:8px;margin-bottom:20px}.kmap-container .study-selector{margin-bottom:15px;display:flex;align-items:center}.kmap-container .study-selector label{margin-right:10px;font-weight:700}.kmap-container .study-explanation{background-color:#fff;padding:15px;border-radius:4px;border:1px solid #ced4da}.kmap-container .study-explanation h3{margin-top:0;color:#007bff;margin-bottom:10px;border-bottom:1px solid #e9ecef;padding-bottom:5px}.kmap-container .study-description{margin-bottom:15px;font-style:italic;color:#6c757d}.kmap-container .explanation-box{background-color:#f8f9fa;padding:12px;border-radius:4px;border-left:4px solid #007bff;font-size:14px;line-height:1.6;margin-bottom:20px}.kmap-container .step-by-step-guide{background-color:#fff8e1;padding:15px;border-radius:4px;border-left:4px solid #ffc107;margin-top:15px}.kmap-container .step-by-step-guide h4{margin-top:0;color:#856404;margin-bottom:10px}.kmap-container .step-by-step-guide ol{margin-top:0;padding-left:25px}.kmap-container .step-by-step-guide li{margin-bottom:8px;line-height:1.5}.kmap-container .equation-input-controls{background-color:#e9ecef;padding:15px;border-radius:8px;margin-bottom:20px}.kmap-container .equation-input-form{background-color:#fff;padding:15px;border-radius:4px;border:1px solid #ced4da}.kmap-container .input-row{display:flex;align-items:center;margin-bottom:15px;flex-wrap:wrap;gap:10px}.kmap-container .input-row label{font-weight:700;min-width:180px}.kmap-container .equation-input{flex:1;padding:8px 12px;font-size:16px;border:1px solid #ced4da;border-radius:4px;min-width:300px}.kmap-container .parse-button{background-color:#28a745;color:#fff;border:none;padding:10px 15px;border-radius:4px;cursor:pointer;font-size:16px;margin:10px 0}.kmap-container .parse-error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;padding:10px;border-radius:4px;margin:10px 0}.kmap-container .equation-examples{margin-top:15px;background-color:#f8f9fa;padding:12px;border-radius:4px}.kmap-container .equation-examples h4{margin-top:0;margin-bottom:10px;color:#495057}.kmap-container .equation-examples ul{margin-top:0;padding-left:20px}.kmap-container .equation-examples li{margin-bottom:5px}.kmap-container .header-with-help{display:flex;justify-content:center;align-items:center;margin-bottom:30px;position:relative}.kmap-container h1{text-align:center;color:#2c3e50;margin:0}.kmap-container .help-button{position:absolute;right:0;display:flex;align-items:center;background-color:#007bff;color:#fff;border:none;border-radius:4px;padding:8px 12px;cursor:pointer;font-size:14px;transition:background-color .3s}.kmap-container .help-button:hover{background-color:#0056b3}.kmap-container .help-icon{font-size:16px;font-weight:700;margin-right:5px}.tutorial-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.tutorial-modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #0003;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;position:relative}.close-tutorial{position:absolute;top:10px;right:10px;background:none;border:none;font-size:24px;cursor:pointer;color:#6c757d}.close-tutorial:hover{color:#343a40}.tutorial-content{padding:30px;overflow-y:auto;flex:1}.tutorial-content h2{color:#007bff;margin-top:0;border-bottom:2px solid #f0f0f0;padding-bottom:10px;margin-bottom:20px}.tutorial-slide-content{font-size:16px}.tutorial-slide-content ul{padding-left:20px}.tutorial-slide-content li{margin-bottom:8px}.tutorial-navigation{display:flex;justify-content:space-between;align-items:center;padding:15px 30px;border-top:1px solid #e9ecef;background-color:#f8f9fa;border-bottom-left-radius:8px;border-bottom-right-radius:8px}.tutorial-nav-btn{background-color:#007bff;color:#fff;border:none;border-radius:4px;padding:8px 15px;cursor:pointer}.tutorial-nav-btn:disabled{background-color:#6c757d;cursor:not-allowed}.tutorial-progress{font-weight:700;color:#6c757d}.kmap-container .mode-toggle{display:none}.kmap-container .practice-controls{background-color:#e9ecef;padding:15px;border-radius:8px;margin-bottom:20px}.kmap-container .difficulty-selector{margin-bottom:15px;display:flex;align-items:center;flex-wrap:wrap;gap:15px}.kmap-container .difficulty-selector label{margin-right:10px;font-weight:700}.kmap-container .format-selector{display:flex;align-items:center}.kmap-container .difficulty-selector select,.kmap-container .format-selector select,.kmap-container .variable-selector select,.kmap-container .variable-count select,.kmap-container .expression-format select{padding:8px 28px 8px 12px;border-radius:4px;border:1px solid #ced4da;background-color:#fff;font-size:14px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23343a40' d='M6 9l4-4H2z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;transition:border-color .2s}.kmap-container .difficulty-selector select:focus,.kmap-container .format-selector select:focus,.kmap-container .variable-selector select:focus,.kmap-container .variable-count select:focus,.kmap-container .expression-format select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem #007bff40}.kmap-container .generate-btn{background-color:#28a745;color:#fff;border:none;padding:10px 15px;border-radius:4px;cursor:pointer;font-size:16px;margin-bottom:15px}.kmap-container .answer-input{margin-bottom:15px}.kmap-container .answer-input label{display:block;margin-bottom:5px;font-weight:700}.kmap-container .answer-input input{width:100%;padding:10px;border:1px solid #ced4da;border-radius:4px;font-size:16px}.kmap-container .answer-buttons{display:flex;gap:10px;margin-bottom:15px}.kmap-container .answer-buttons button{background-color:#007bff;color:#fff;border:none;padding:10px 15px;border-radius:4px;cursor:pointer;font-size:16px}.kmap-container .answer-buttons button:disabled{background-color:#6c757d;cursor:not-allowed}.kmap-container .feedback{padding:10px;border-radius:4px;font-weight:700;color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.kmap-container .controls{background-color:#e9ecef;padding:10px;border-radius:8px;margin-bottom:20px}.kmap-container .control-row{display:flex;justify-content:space-between;align-items:center;margin:5px 0;flex-wrap:wrap;gap:10px}.kmap-container .controls label{display:flex;align-items:center;cursor:pointer;margin-right:10px}.kmap-container .controls input[type=checkbox]{margin-right:8px}.kmap-container .variable-selector,.kmap-container .variable-count,.kmap-container .expression-format{display:flex;align-items:center}.kmap-container .variable-selector label,.kmap-container .variable-count label,.kmap-container .expression-format label{margin-right:5px;font-weight:700}.kmap-container .reset-btn{background-color:#dc3545;color:#fff;border:none;padding:8px 15px;border-radius:4px;cursor:pointer}.kmap-container .controls button{background-color:#007bff;color:#fff;border:none;padding:8px 15px;border-radius:4px;cursor:pointer}.kmap-container .controls button.active{background-color:#0062cc}.kmap-container .controls button:disabled{background-color:#6c757d;cursor:not-allowed}.kmap-section{display:flex;justify-content:center;margin-bottom:20px}.kmap-wrapper{display:inline-block;margin:0 auto}.kmap-header-top{display:grid;grid-template-columns:80px repeat(4,80px)}.kmap-grid-3var .kmap-header-top{grid-template-columns:80px repeat(2,80px)}.kmap-corner,.kmap-header-cell{display:flex;justify-content:center;align-items:center;font-weight:700;background-color:#e9ecef;padding:5px;border:1px solid #ced4da;height:30px}.kmap-grid-container{display:flex}.kmap-header-left{display:flex;flex-direction:column}.kmap-header-left .kmap-header-cell{height:80px;width:80px}.kmap-grid{display:flex;flex-direction:column}.kmap-grid-3var{--columns: 2}.kmap-row{display:flex}.kmap-cell{width:80px;height:80px;border:1px solid #ced4da;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;background-color:#fff;transition:background-color .3s;position:relative}.kmap-cell.with-animation{transition:all .3s ease-in-out}.kmap-cell.active{background-color:#b8daff}.kmap-cell:hover{background-color:#e9ecef}.kmap-cell.active:hover{background-color:#9fcdff}.kmap-cell.read-only{cursor:not-allowed;opacity:.9}.cell-value{font-size:24px;font-weight:700}.cell-index{position:absolute;top:5px;left:5px;font-size:10px;color:#6c757d}.cell-binary{position:absolute;bottom:5px;right:5px;font-size:10px;color:#6c757d}.kmap-container .step-view{background-color:#e9ecef;padding:15px;border-radius:8px;margin-bottom:20px}.kmap-container .step-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.kmap-container .step-controls button{background-color:#007bff;color:#fff;border:none;padding:8px 15px;border-radius:4px;cursor:pointer}.kmap-container .step-controls button:disabled{background-color:#6c757d;cursor:not-allowed}.kmap-container .step-indicator{font-weight:700}.kmap-container .step-description{background-color:#fff;padding:10px;border-radius:4px;margin-bottom:10px;border:1px solid #ced4da}.kmap-container .step-equations{display:flex;justify-content:space-around;flex-wrap:wrap;gap:15px}.kmap-container .step-equation{background-color:#fff;padding:10px;border-radius:4px;border:1px solid #ced4da;flex:1;min-width:200px}.kmap-container .equation-label{font-weight:700;margin-right:5px}.kmap-container .equation-value{font-family:Courier New,monospace}.kmap-container .main-content-container{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}.kmap-container .result-panel{background-color:#e9ecef;padding:15px;border-radius:8px;flex:1;min-width:300px}.kmap-container .equation-tabs{display:flex;margin-bottom:10px}.kmap-container .equation-tabs button{background-color:#e9ecef;border:1px solid #ced4da;padding:8px 15px;cursor:pointer;flex:1}.kmap-container .equation-tabs button:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.kmap-container .equation-tabs button:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.kmap-container .equation-tabs button.active{background-color:#007bff;color:#fff;border-color:#007bff}.kmap-container .equation{font-size:24px;font-weight:700;color:#007bff;padding:10px;background-color:#fff;border-radius:4px;border:1px solid #ced4da;margin-bottom:10px;min-height:50px;display:flex;align-items:center;justify-content:center}.kmap-container .canonical-form{margin-top:15px}.kmap-container .canonical-form h4{margin-top:0;margin-bottom:5px}.kmap-container .canonical-equation{font-size:16px;padding:10px;background-color:#fff;border-radius:4px;border:1px solid #ced4da;font-family:Courier New,monospace}.kmap-container .visualization-panel{background-color:#e9ecef;padding:15px;border-radius:8px;flex:1;min-width:300px}.kmap-container .visualization-panel h3{margin-top:0;margin-bottom:10px}.kmap-container .truth-table{background-color:#fff;border-radius:4px;border:1px solid #ced4da;overflow-x:auto}.kmap-container .truth-table table{width:100%;border-collapse:collapse}.kmap-container .truth-table th,.kmap-container .truth-table td{padding:8px;text-align:center;border:1px solid #dee2e6}.kmap-container .truth-table th{background-color:#e9ecef}.kmap-container .truth-table .output-true{background-color:#d4edda}.kmap-container .truth-table .output-false{background-color:#f8d7da}.kmap-container .circuit{background-color:#fff;border-radius:4px;border:1px solid #ced4da;padding:20px;display:flex;flex-direction:column;align-items:center;min-height:300px}.kmap-container .circuit-title{font-size:18px;font-weight:700;color:#2c3e50;margin-bottom:20px;text-align:center}.kmap-container .circuit-explanation{margin-top:20px;padding:10px;background-color:#e9ecef;border-radius:4px;font-size:14px;color:#495057;width:100%}.kmap-container .circuit-diagram{display:flex;flex-direction:column;align-items:center;gap:30px;width:100%}.kmap-container .circuit-constant{position:relative;display:flex;flex-direction:column;align-items:center}.kmap-container .constant-label{padding:15px 20px;background-color:#e9ecef;border:2px solid #007bff;border-radius:8px;font-weight:700;font-size:20px}.kmap-container .wire-to-output{width:2px;height:40px;background-color:#007bff}.kmap-container .output-node{width:40px;height:40px;border:2px solid #007bff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;background-color:#f8f9fa}.kmap-container .input-variables{display:flex;justify-content:space-around;width:100%;max-width:600px}.kmap-container .input-variable{display:flex;flex-direction:column;align-items:center;gap:10px}.kmap-container .variable-name,.kmap-container .variable-complement{width:40px;height:40px;border:2px solid #007bff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;background-color:#e9ecef}.kmap-container .gate-level-1,.kmap-container .gate-level-2{display:flex;justify-content:space-around;flex-wrap:wrap;width:100%;gap:20px;position:relative}.kmap-container .gate-level-1:before,.kmap-container .gate-level-2:before{content:"";position:absolute;top:-20px;left:0;right:0;height:2px;background-color:#ced4da}.kmap-container .gate{position:relative;display:flex;flex-direction:column;align-items:center;min-width:100px}.kmap-container .gate-symbol{width:60px;height:60px;border:2px solid #212529;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:24px}.kmap-container .and-gate .gate-symbol{background-color:#d4edda}.kmap-container .or-gate .gate-symbol{background-color:#f8d7da}.kmap-container .gate-inputs{display:flex;flex-direction:column;gap:5px;margin-top:10px;align-items:center}.kmap-container .gate-input-wire{padding:4px 8px;background-color:#e9ecef;border:1px solid #ced4da;border-radius:4px;font-family:Courier New,monospace;position:relative}.kmap-container .gate-input-wire:before{content:"";position:absolute;top:-10px;left:50%;width:2px;height:10px;background-color:#007bff;transform:translate(-50%)}.kmap-container .gate-output-wire{width:2px;height:30px;background-color:#007bff;margin-top:10px}.kmap-container .circuit-output{width:40px;height:40px;border:2px solid #007bff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;background-color:#f8f9fa}.kmap-container .kmap-tutorial{background-color:#e9ecef;padding:15px;border-radius:8px}.kmap-container .kmap-tutorial h3{margin-top:0;color:#2c3e50;margin-bottom:10px}.kmap-container .kmap-tutorial .tutorial-content{background-color:#fff;padding:15px;border-radius:4px;border:1px solid #ced4da;display:flex;flex-wrap:wrap;gap:20px}.kmap-container .kmap-tutorial .tutorial-section{flex:1;min-width:250px}.kmap-container .kmap-tutorial .tutorial-section h4{margin-top:0;margin-bottom:10px;color:#007bff}.kmap-container .kmap-tutorial .tutorial-content ul,.kmap-container .kmap-tutorial .tutorial-content ol{padding-left:20px;margin-top:5px}.kmap-container .kmap-tutorial .tutorial-content li{margin-bottom:5px}.kmap-cell.group-1{border:3px solid #FF5722}.kmap-cell.group-2{border:3px solid #2196F3}.kmap-cell.group-3{border:3px solid #4CAF50}.kmap-cell.group-4{border:3px solid #9C27B0}.kmap-cell.group-5{border:3px solid #FF9800}.kmap-cell.group-6{border:3px solid #607D8B}.kmap-cell.group-7{border:3px solid #E91E63}.kmap-cell.group-8{border:3px solid #00BCD4}.kmap-cell.group-1.group-2{background-image:linear-gradient(45deg,#ff57224d 50%,#2196f34d 50%)}.kmap-cell.group-1.group-3{background-image:linear-gradient(45deg,#ff57224d 50%,#4caf504d 50%)}.kmap-cell.group-2.group-3{background-image:linear-gradient(45deg,#2196f34d 50%,#4caf504d 50%)}.kmap-cell.active.group-1{background-color:#ff57224d}.kmap-cell.active.group-2{background-color:#2196f34d}.kmap-cell.active.group-3{background-color:#4caf504d}.kmap-cell.active.group-4{background-color:#9c27b04d}.kmap-cell.active.group-5{background-color:#ff98004d}.kmap-cell.active.group-6{background-color:#607d8b4d}.kmap-cell.active.group-7{background-color:#e91e634d}.kmap-cell.active.group-8{background-color:#00bcd44d}@keyframes highlight{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.with-animation.active.group-1,.with-animation.active.group-2,.with-animation.active.group-3,.with-animation.active.group-4,.with-animation.active.group-5,.with-animation.active.group-6,.with-animation.active.group-7,.with-animation.active.group-8{animation:highlight .5s ease-in-out}@media (max-width: 768px){.kmap-container{padding:10px}.kmap-container .control-row{flex-direction:column;align-items:flex-start;gap:5px}.kmap-cell{width:60px;height:60px}.kmap-header-left .kmap-header-cell{height:60px;width:60px}.kmap-container .equation{font-size:18px}.kmap-container .kmap-tutorial .tutorial-content{flex-direction:column}}.number-converter-component{--nc-primary-color: #374151;--nc-primary-light: #4b5563;--nc-primary-dark: #1f2937;--nc-primary-gradient: linear-gradient(135deg, #374151 0%, #1f2937 100%);--nc-secondary-gradient: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%);--nc-text-primary: #111827;--nc-text-secondary: #374151;--nc-text-tertiary: #6b7280;--nc-text-quaternary: #9ca3af;--nc-bg-primary: #ffffff;--nc-bg-secondary: #f9fafb;--nc-bg-tertiary: #f3f4f6;--nc-bg-glass: rgba(255, 255, 255, .95);--nc-border-color: #d1d5db;--nc-border-light: #e5e7eb;--nc-error-color: #dc2626;--nc-error-light: #fef2f2;--nc-success-color: #059669;--nc-success-light: #f0fdf4;--nc-warning-color: #d97706;--nc-warning-light: #fffbeb;--nc-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--nc-shadow-md: 0 2px 4px -1px rgba(0, 0, 0, .1);--nc-shadow-lg: 0 4px 6px -1px rgba(0, 0, 0, .1);--nc-shadow-xl: 0 8px 15px -3px rgba(0, 0, 0, .1);--nc-shadow-glow: 0 0 15px rgba(55, 65, 81, .2);--nc-radius-sm: 4px;--nc-radius-md: 6px;--nc-radius-lg: 8px;--nc-radius-xl: 12px;--nc-transition-short: .15s ease;--nc-transition-medium: .2s ease;--nc-transition-long: .3s ease}.number-converter-component *{box-sizing:border-box}.number-converter-component{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}.number-converter-component .converter-container{display:flex;justify-content:center;align-items:center;min-height:auto;background:linear-gradient(135deg,#f8fafc,#e5e7eb);padding:16px;position:relative}.number-converter-component .converter-card{width:100%;max-width:600px;background:var(--nc-bg-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--nc-border-color);border-radius:var(--nc-radius-lg);box-shadow:var(--nc-shadow-md);overflow:hidden;transition:all var(--nc-transition-medium);position:relative}.number-converter-component .converter-card:hover{transform:translateY(-2px);box-shadow:var(--nc-shadow-lg)}.number-converter-component .converter-header{background:var(--nc-primary-gradient);color:#fff;padding:16px 20px;text-align:center;position:relative;overflow:hidden}.number-converter-component .converter-header h2{margin:0;font-size:20px;font-weight:600;letter-spacing:-.025em;position:relative;z-index:1}.number-converter-component .subtitle{margin:4px 0 0;font-size:14px;opacity:.9;font-weight:400;position:relative;z-index:1}.number-converter-component .converter-content{padding:16px;max-height:60vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--nc-text-tertiary) var(--nc-bg-secondary)}.number-converter-component .converter-content::-webkit-scrollbar{width:6px}.number-converter-component .converter-content::-webkit-scrollbar-track{background:var(--nc-bg-secondary);border-radius:3px}.number-converter-component .converter-content::-webkit-scrollbar-thumb{background:var(--nc-text-tertiary);border-radius:3px;transition:all var(--nc-transition-short)}.number-converter-component .converter-content::-webkit-scrollbar-thumb:hover{background:var(--nc-text-secondary)}.number-converter-component .input-group{margin-bottom:12px;transition:all var(--nc-transition-medium);border-radius:var(--nc-radius-lg);padding:12px;border:1px solid transparent;position:relative;background:var(--nc-bg-primary)}.number-converter-component .input-group:last-child{margin-bottom:0}.number-converter-component .input-group.active{background:var(--nc-bg-secondary);border-color:var(--nc-primary-color);box-shadow:0 0 0 2px #3741511a,var(--nc-shadow-sm);transform:translateY(-1px)}.number-converter-component .input-group.error{border-color:var(--nc-error-color);background:var(--nc-error-light)}.number-converter-component .input-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.number-converter-component .input-label label{font-weight:600;color:var(--nc-text-primary);font-size:14px;display:flex;align-items:center;gap:6px}.number-converter-component .base-icon{width:16px;height:16px;background:var(--nc-primary-gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:8px;font-weight:700}.number-converter-component .base-symbol{background:var(--nc-primary-gradient);color:#fff;padding:2px 8px;border-radius:var(--nc-radius-md);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;box-shadow:var(--nc-shadow-sm)}.number-converter-component .input-field-container{display:flex;position:relative;align-items:center}.number-converter-component .input-field{flex-grow:1;padding:10px 14px;border:1px solid var(--nc-border-color);border-radius:var(--nc-radius-lg);font-size:14px;font-family:JetBrains Mono,Roboto Mono,monospace;color:var(--nc-text-primary);transition:all var(--nc-transition-short);background:var(--nc-bg-primary);letter-spacing:.5px;font-weight:400;width:100%}.number-converter-component .input-field:focus{outline:none;border-color:var(--nc-primary-color);box-shadow:0 0 0 2px #37415133;transform:translateY(-1px)}.number-converter-component .input-field.error{border-color:var(--nc-error-color);box-shadow:0 0 0 2px #dc262633}.number-converter-component .input-field.success{border-color:var(--nc-success-color);box-shadow:0 0 0 2px #05966933}.number-converter-component .input-field::placeholder{color:var(--nc-text-tertiary);font-style:italic}.number-converter-component .error-message{color:var(--nc-error-color);font-size:11px;margin-top:4px;padding-left:4px;font-weight:500;display:flex;align-items:center;gap:4px}.number-converter-component .error-icon{width:14px;height:14px;background:var(--nc-error-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:9px;font-weight:700}.number-converter-component .bit-display{margin-top:8px;padding:8px;background:var(--nc-bg-tertiary);border-radius:var(--nc-radius-md);border:1px solid var(--nc-border-color)}.number-converter-component .bit-label{font-size:10px;color:var(--nc-text-secondary);margin-bottom:4px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.number-converter-component .bit-value{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--nc-text-primary);word-break:break-all;line-height:1.3}@media (max-width: 768px){.number-converter-component .converter-card{border-radius:var(--nc-radius-md);margin:8px}.number-converter-component .converter-header h2{font-size:18px}.number-converter-component .subtitle{font-size:12px}}@media (max-width: 640px){.number-converter-component .converter-container{padding:8px;align-items:flex-start}.number-converter-component .converter-card{border-radius:var(--nc-radius-md);margin:12px 0 0}.number-converter-component .converter-header{padding:12px 16px}.number-converter-component .converter-content{padding:12px}.number-converter-component .input-group{padding:8px}.number-converter-component .input-label{flex-direction:column;align-items:flex-start;gap:6px}.number-converter-component .input-field{padding:8px 12px;font-size:12px}}.circuit-builder-container{position:fixed;top:70px;left:0;right:0;bottom:0;width:100vw;height:calc(100vh - 70px);margin:0;padding:0;box-sizing:border-box;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#f8f9fa;overflow:hidden;z-index:1000}.circuit-builder-container *,.circuit-builder-container *:before,.circuit-builder-container *:after{box-sizing:border-box}.circuit-primary-toolbar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border-bottom:1px solid #e9ecef;box-shadow:0 1px 3px #0000001a;flex-wrap:wrap;min-height:50px;position:relative;z-index:100}.circuit-toolbar-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:linear-gradient(145deg,#fff,#f8f9fa);border:1px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;color:#495057;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;margin:1px;box-shadow:0 2px 4px #0000000d;position:relative;overflow:hidden}.circuit-toolbar-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);transition:left .6s}.circuit-toolbar-btn:hover:before{left:100%}.circuit-toolbar-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;border-color:#007bff;background:linear-gradient(145deg,#f8f9fa,#fff)}.circuit-toolbar-btn.circuit-active{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border-color:#007bff;transform:translateY(-2px);box-shadow:0 4px 12px #007bff4d}.circuit-toolbar-btn.circuit-disabled{opacity:.5;cursor:not-allowed;pointer-events:none;transform:none}.circuit-toolbar-separator{width:1px;height:30px;background:linear-gradient(180deg,transparent,#dee2e6,transparent);margin:0 8px}.circuit-secondary-toolbar{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#fff;border-bottom:1px solid #dee2e6;flex-wrap:wrap;min-height:45px;position:relative;z-index:90}.circuit-dropdown{padding:6px 32px 6px 12px;border:1px solid #ced4da;border-radius:6px;background:linear-gradient(145deg,#fff,#f8f9fa);font-size:12px;font-weight:500;cursor:pointer;min-width:120px;transition:all .3s;box-shadow:0 2px 4px #0000000d;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:14px;position:relative;z-index:1000;color:#495057}.circuit-dropdown.circuit-wide{min-width:140px}.circuit-dropdown:hover{border-color:#007bff;box-shadow:0 4px 8px #0000001a;transform:translateY(-1px);z-index:1001}.circuit-dropdown:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff40;z-index:1001}.circuit-action-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(145deg,#fff,#f8f9fa);border:1px solid #ced4da;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;color:#495057;transition:all .3s;box-shadow:0 2px 4px #0000000d;white-space:nowrap}.circuit-action-btn:hover{background:linear-gradient(145deg,#f8f9fa,#fff);border-color:#007bff;transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.circuit-action-btn.circuit-play{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border-color:#28a745}.circuit-action-btn.circuit-play:hover{background:linear-gradient(135deg,#218838,#1eb388)}.circuit-action-btn.circuit-stop{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;border-color:#dc3545}.circuit-action-btn.circuit-stop:hover{background:linear-gradient(135deg,#c82333,#a71e2a)}.circuit-action-btn.circuit-equation{background:linear-gradient(135deg,#6f42c1,#5a3399);color:#fff;border:none}.circuit-action-btn.circuit-equation:hover{background:linear-gradient(135deg,#5a3399,#4a2980)}.circuit-action-btn.circuit-tutorial{background:linear-gradient(135deg,#fd7e14,#e85d04);color:#fff;border:none}.circuit-action-btn.circuit-tutorial:hover{background:linear-gradient(135deg,#e85d04,#d45100)}.circuit-zoom-controls{display:flex;align-items:center;gap:4px;background:linear-gradient(145deg,#fff,#f8f9fa);border:1px solid #ced4da;border-radius:8px;padding:4px;box-shadow:0 2px 4px #0000000d}.circuit-zoom-controls button{width:32px;height:32px;border:none;background:transparent;border-radius:4px;cursor:pointer;font-size:16px;font-weight:700;color:#495057;transition:all .2s;display:flex;align-items:center;justify-content:center}.circuit-zoom-controls button:hover{background:linear-gradient(145deg,#e9ecef,#f8f9fa);transform:scale(1.1)}.circuit-zoom-controls span{padding:0 12px;font-size:13px;font-weight:600;color:#495057;min-width:50px;text-align:center}.circuit-canvas-area{flex:1;background:#fff;overflow:hidden;position:relative;width:100%;margin:0;padding:0;border:none}.circuit-canvas-area canvas{display:block;width:100%;height:100%;cursor:crosshair;margin:0;padding:0;background:#fff}.circuit-status-bar{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background:#fff;border-top:1px solid #e9ecef;color:#495057;font-size:11px;font-weight:500;box-shadow:0 -1px 3px #0000001a;flex-wrap:wrap;gap:8px;min-height:32px;position:relative;z-index:70}.circuit-status-bar span{display:flex;align-items:center;gap:8px}.circuit-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:999999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:80px 20px 20px}.circuit-modal{background:#fff;border-radius:12px;padding:20px;width:480px;max-width:95%;box-shadow:0 20px 40px #00000026;z-index:1000000;max-height:80vh;overflow-y:auto;margin:auto}.circuit-modal h3{margin-top:0;color:#495057;font-size:24px;font-weight:700}.circuit-modal-buttons{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.circuit-btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s;box-shadow:0 4px 8px #007bff4d}.circuit-btn-primary:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-2px);box-shadow:0 6px 12px #007bff66}.circuit-btn-secondary{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s;padding:12px 24px}.circuit-btn-secondary:hover{background:linear-gradient(135deg,#5a6268,#545b62);transform:translateY(-1px)}.circuit-syntax-help{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:20px;margin-bottom:24px}.circuit-syntax-help h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#495057;border-bottom:2px solid #007bff;padding-bottom:6px;display:inline-block}.circuit-syntax-item{margin-bottom:8px;font-size:13px;color:#495057;line-height:1.5}.circuit-syntax-item strong{color:#007bff;font-weight:600}.circuit-examples-section{margin-top:16px}.circuit-examples-section h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#495057}.circuit-examples{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.circuit-examples button{padding:6px 12px;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:6px;font-size:12px;cursor:pointer;transition:all .3s;box-shadow:0 2px 4px #007bff33}.circuit-examples button:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px);box-shadow:0 4px 8px #007bff4d}.circuit-equation-modal{background:#fff;border-radius:16px;width:900px;max-width:95%;max-height:85vh;box-shadow:0 25px 50px #00000040;z-index:1000000;overflow:hidden;display:flex;flex-direction:column;margin:auto}.circuit-equation-header{background:linear-gradient(135deg,#6f42c1,#5a3399);color:#fff;padding:24px;position:relative}.circuit-equation-header h2{margin:0 0 8px;font-size:24px;font-weight:700}.circuit-equation-header p{margin:0;opacity:.9;font-size:16px}.circuit-tutorial-close{background:none;border:none;color:#fff;font-size:32px;cursor:pointer;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s;position:absolute;top:16px;right:16px}.circuit-tutorial-close:hover{background:#fff3}.circuit-equation-content{flex:1;overflow-y:auto;display:flex;flex-direction:column}.circuit-equation-steps{display:flex;background:#f8f9fa;border-bottom:1px solid #dee2e6;overflow-x:auto;flex-shrink:0}.circuit-step-btn{background:none;border:none;padding:16px 20px;cursor:pointer;font-size:14px;font-weight:600;color:#6c757d;border-bottom:3px solid transparent;transition:all .3s;white-space:nowrap;min-width:150px}.circuit-step-btn:hover{background:#e9ecef;color:#495057}.circuit-step-btn.active{background:#fff;color:#6f42c1;border-bottom-color:#6f42c1}.circuit-equation-step-content{flex:1;padding:32px;overflow-y:auto}.circuit-basics-section h3{color:#495057;margin-bottom:24px;font-size:22px}.circuit-basics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;margin-bottom:32px}.circuit-basic-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:20px;border-left:4px solid #6f42c1}.circuit-basic-item h4{margin:0 0 12px;color:#6f42c1;font-size:16px}.circuit-basic-item p{margin:0 0 12px;color:#495057;line-height:1.5}.circuit-mini-table{background:#fff;border-radius:6px;padding:12px;margin:12px 0;font-family:Courier New,monospace;font-size:13px}.circuit-mini-table div{padding:4px 0;border-bottom:1px solid #f1f3f4}.circuit-mini-table div:last-child{border-bottom:none}.circuit-real-world{background:#e7f3ff;border-radius:6px;padding:8px 12px;margin:12px 0 0;font-size:12px;color:#0056b3;font-style:italic}.circuit-syntax-reminder{background:#fff3cd;border:1px solid #ffeaa7;border-radius:12px;padding:20px;margin-top:24px}.circuit-syntax-reminder h4{margin:0 0 16px;color:#856404}.circuit-syntax-examples{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.circuit-syntax-examples div{background:#fff;padding:8px 12px;border-radius:6px;font-size:13px;color:#495057}.circuit-syntax-examples code{background:#6f42c1;color:#fff;padding:2px 6px;border-radius:4px;font-weight:600}.circuit-input-section h3{color:#495057;margin-bottom:16px;font-size:22px}.circuit-equation-input-large{width:100%;padding:20px 24px;border:3px solid #dee2e6;border-radius:12px;font-size:18px;font-family:Courier New,monospace;margin:16px 0 24px;transition:all .3s;background:#f8f9fa;color:#495057}.circuit-equation-input-large:focus{outline:none;border-color:#6f42c1;box-shadow:0 0 0 4px #6f42c140;background:#fff}.circuit-quick-examples h4{color:#495057;margin-bottom:16px}.circuit-example-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.circuit-example-btn{background:linear-gradient(135deg,#6f42c1,#5a3399);color:#fff;border:none;border-radius:8px;padding:16px;cursor:pointer;transition:all .3s;text-align:left;display:flex;flex-direction:column;gap:8px}.circuit-example-btn:hover{background:linear-gradient(135deg,#5a3399,#4a2980);transform:translateY(-2px);box-shadow:0 4px 12px #6f42c14d}.circuit-example-btn code{font-size:16px;font-weight:600;font-family:Courier New,monospace}.circuit-example-btn span{font-size:12px;opacity:.8}.circuit-analysis-section h3{color:#495057;margin-bottom:24px;font-size:22px}.circuit-error-box{background:#f8d7da;border:1px solid #f5c6cb;border-radius:12px;padding:20px;margin-bottom:20px}.circuit-error-box h4{color:#721c24;margin:0 0 12px}.circuit-error-box p{color:#721c24;margin:0 0 16px}.circuit-help-hints{background:#fff;border-radius:8px;padding:16px}.circuit-help-hints h5{color:#721c24;margin:0 0 12px}.circuit-help-hints ul{margin:0;padding-left:20px}.circuit-help-hints li{color:#721c24;margin-bottom:4px}.circuit-help-hints code{background:#721c24;color:#fff;padding:2px 6px;border-radius:4px}.circuit-analysis-results{display:flex;flex-direction:column;gap:24px}.circuit-stat-box{background:#e7f3ff;border:1px solid #b8daff;border-radius:12px;padding:20px}.circuit-stat-box h4{color:#004085;margin:0 0 12px}.circuit-stat-box div{margin-bottom:8px;color:#004085}.circuit-stat-box strong{color:#6f42c1}.circuit-parsing-tree{background:#f8f9fa;border:1px solid #dee2e6;border-radius:12px;padding:20px}.circuit-parsing-tree h4{color:#495057;margin:0 0 16px}.circuit-tree-display{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:16px;margin:16px 0;overflow-x:auto}.circuit-tree-display pre{margin:0;font-family:Courier New,monospace;font-size:13px;line-height:1.6;color:#495057;white-space:pre-wrap}.circuit-tree-explanation{color:#6c757d;font-style:italic;margin:0}.circuit-truth-section h3{color:#495057;margin-bottom:24px;font-size:22px}.circuit-truth-container{background:#f8f9fa;border-radius:12px;padding:24px}.circuit-truth-table{overflow-x:auto;margin:20px 0}.circuit-truth-table table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.circuit-truth-table th{background:#6f42c1;color:#fff;padding:12px 16px;font-weight:600;text-align:center}.circuit-truth-table td{padding:12px 16px;text-align:center;border-bottom:1px solid #dee2e6;font-family:Courier New,monospace;font-size:16px;font-weight:600}.circuit-truth-table .circuit-true{background:#d4edda;color:#155724}.circuit-truth-table .circuit-false{background:#f8d7da;color:#721c24}.circuit-truth-table .circuit-output-col{border-left:3px solid #6f42c1;font-weight:700}.circuit-truth-explanation{background:#e7f3ff;border-radius:8px;padding:16px;margin-top:20px}.circuit-truth-explanation h4{color:#004085;margin:0 0 12px}.circuit-truth-explanation ul{margin:0;padding-left:20px}.circuit-truth-explanation li{color:#004085;margin-bottom:4px}.circuit-generate-section h3{color:#495057;margin-bottom:24px;font-size:22px}.circuit-generation-ready{display:flex;flex-direction:column;gap:24px}.circuit-generation-summary{background:#e7f3ff;border:1px solid #b8daff;border-radius:12px;padding:20px}.circuit-generation-summary h4{color:#004085;margin:0 0 16px}.circuit-summary-grid{display:grid;gap:8px}.circuit-summary-grid div{color:#004085;font-size:14px}.circuit-summary-grid code{background:#004085;color:#fff;padding:2px 6px;border-radius:4px;font-weight:600}.circuit-generation-explanation{background:#fff3cd;border:1px solid #ffeaa7;border-radius:12px;padding:20px}.circuit-generation-explanation h4{color:#856404;margin:0 0 16px}.circuit-generation-explanation ol{margin:0;padding-left:20px}.circuit-generation-explanation li{color:#856404;margin-bottom:8px;line-height:1.5}.circuit-generate-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;border-radius:12px;padding:20px 40px;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #28a7454d;align-self:center}.circuit-generate-btn:hover{background:linear-gradient(135deg,#218838,#1eb388);transform:translateY(-2px);box-shadow:0 6px 16px #28a74566}.circuit-no-equation{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:12px;padding:40px;text-align:center;color:#6c757d;font-size:16px}.circuit-equation-footer{background:#f8f9fa;border-top:1px solid #dee2e6;padding:20px 32px;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.circuit-navigation-buttons{display:flex;gap:12px}.circuit-nav-btn{background:linear-gradient(135deg,#6f42c1,#5a3399);color:#fff;border:none;border-radius:8px;padding:12px 20px;cursor:pointer;font-weight:600;transition:all .3s}.circuit-nav-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a3399,#4a2980);transform:translateY(-1px)}.circuit-nav-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.circuit-tutorial-modal{background:#fff;border-radius:16px;width:720px;max-width:95%;max-height:85vh;box-shadow:0 25px 50px #00000040;z-index:1000000;overflow:hidden;display:flex;flex-direction:column;margin:auto}.circuit-tutorial-header{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;padding:24px;display:flex;justify-content:space-between;align-items:center}.circuit-tutorial-header h2{margin:0;font-size:28px;font-weight:700}.circuit-tutorial-content{padding:32px;overflow-y:auto;flex:1}.circuit-tutorial-section{margin-bottom:32px}.circuit-tutorial-section h3{color:#495057;font-size:20px;font-weight:600;margin-bottom:16px;border-left:4px solid #007bff;padding-left:16px}.circuit-tutorial-section p{color:#6c757d;line-height:1.6;margin-bottom:16px}.circuit-tutorial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:16px}.circuit-tutorial-item{background:#f8f9fa;padding:16px;border-radius:8px;border-left:4px solid #007bff;font-size:14px;line-height:1.5}.circuit-tutorial-item strong{color:#007bff;font-weight:600}.circuit-tutorial-steps{background:#f8f9fa;padding:20px;border-radius:12px;margin:16px 0}.circuit-tutorial-steps li{margin-bottom:8px;color:#495057;font-weight:500}.circuit-tutorial-syntax{background:#f8f9fa;padding:16px;border-radius:8px;margin:16px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.circuit-tutorial-syntax div{font-size:13px;color:#495057}.circuit-tutorial-syntax strong{color:#007bff;font-weight:600}.circuit-tutorial-examples{background:#e7f3ff;padding:12px 16px;border-radius:8px;font-size:13px;color:#0056b3;font-weight:500;margin:16px 0}.circuit-tutorial-shortcuts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;background:#f8f9fa;padding:16px;border-radius:8px;margin:16px 0}.circuit-tutorial-shortcuts div{display:flex;align-items:center;gap:8px;font-size:13px;color:#495057}.circuit-tutorial-shortcuts kbd{background:#fff;border:1px solid #ced4da;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:600;color:#495057;min-width:24px;text-align:center}.circuit-tutorial-tips{background:#fff3cd;padding:16px 20px;border-radius:8px;border-left:4px solid #ffc107;margin:16px 0}.circuit-tutorial-tips li{margin-bottom:8px;color:#856404;font-size:14px;line-height:1.5}.circuit-tutorial-footer{background:#f8f9fa;padding:24px 32px;border-top:1px solid #dee2e6;display:flex;justify-content:center}.circuit-tutorial-footer .circuit-btn-primary{font-size:16px;padding:16px 32px}.circuit-hidden{display:none}@media (max-width: 1200px){.circuit-primary-toolbar,.circuit-secondary-toolbar{padding:6px 8px;gap:6px}.circuit-toolbar-btn,.circuit-action-btn{padding:7px 10px;font-size:11px}.circuit-dropdown{min-width:110px;font-size:11px}.circuit-modal{min-width:360px;padding:20px;max-height:75vh}.circuit-modal h3{font-size:20px}.circuit-tutorial-modal{width:600px;max-height:80vh}.circuit-equation-modal{width:800px}.circuit-basics-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.circuit-example-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.circuit-tutorial-content{padding:24px}}@media (max-width: 768px){.circuit-primary-toolbar{flex-wrap:wrap;gap:4px;padding:6px}.circuit-secondary-toolbar{flex-wrap:wrap;gap:6px;padding:6px}.circuit-toolbar-btn,.circuit-action-btn{padding:6px 8px;font-size:10px;min-width:auto}.circuit-dropdown{min-width:100px;font-size:10px}.circuit-status-bar{flex-direction:column;gap:4px;text-align:center;padding:6px}.circuit-zoom-controls{flex-wrap:wrap}.circuit-modal{margin:20px;min-width:auto;max-width:calc(100vw - 40px);padding:18px;max-height:70vh}.circuit-modal h3{font-size:18px}.circuit-modal-buttons{flex-direction:column;gap:12px}.circuit-toolbar-separator{display:none}.circuit-syntax-help{padding:16px}.circuit-examples{flex-direction:column}.circuit-examples button{width:100%;text-align:center}.circuit-tutorial-modal{width:95%;margin:10px;max-height:75vh}.circuit-tutorial-header{padding:16px}.circuit-tutorial-header h2{font-size:22px}.circuit-tutorial-content{padding:20px}.circuit-tutorial-grid,.circuit-tutorial-shortcuts,.circuit-tutorial-syntax{grid-template-columns:1fr}.circuit-equation-modal{width:95%;max-height:90vh}.circuit-equation-header{padding:16px}.circuit-equation-header h2{font-size:20px}.circuit-equation-step-content{padding:20px}.circuit-equation-steps{flex-direction:column}.circuit-step-btn{min-width:auto;text-align:left}.circuit-basics-grid,.circuit-example-grid,.circuit-syntax-examples{grid-template-columns:1fr}.circuit-equation-footer{flex-direction:column;gap:16px;padding:16px}}@media (max-width: 480px){.circuit-primary-toolbar{flex-direction:column;align-items:stretch;gap:6px;padding:8px}.circuit-toolbar-btn,.circuit-action-btn{width:100%;justify-content:center;margin:1px 0}.circuit-secondary-toolbar{flex-direction:column;align-items:stretch;gap:8px}.circuit-dropdown{width:100%}.circuit-zoom-controls{justify-content:center}.circuit-modal{margin:10px;padding:16px;max-height:65vh}.circuit-tutorial-modal{width:calc(100vw - 20px);margin:10px;max-height:70vh}.circuit-tutorial-header{padding:12px 16px}.circuit-tutorial-header h2{font-size:18px}.circuit-tutorial-content{padding:16px}.circuit-tutorial-section h3{font-size:18px}.circuit-tutorial-footer{padding:16px}.circuit-equation-input-large{font-size:16px;padding:16px}.circuit-truth-table th,.circuit-truth-table td{padding:8px 12px;font-size:14px}.circuit-generate-btn{padding:16px 24px;font-size:16px}}.exercise-component .exercise-page{padding:30px;max-width:1000px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#333}.exercise-component .exercise-header{margin-bottom:25px}.exercise-component .header-top{display:flex;justify-content:space-between;align-items:center}.exercise-component .exercise-header h2{font-size:2.2rem;color:#2c3e50;margin-bottom:15px}.exercise-component .tutorial-btn{display:flex;align-items:center;gap:8px;background-color:#eef5f9;color:#2196f3;border:none;border-radius:20px;padding:8px 15px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.exercise-component .tutorial-btn:hover{background-color:#e3f2fd;transform:translateY(-2px);box-shadow:0 4px 8px #2196f326}.exercise-component .tutorial-icon{display:flex;justify-content:center;align-items:center;width:24px;height:24px;background-color:#2196f3;color:#fff;border-radius:50%;font-weight:700}.exercise-component .tutorial-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.exercise-component .tutorial-modal{background-color:#fff;border-radius:12px;width:90%;max-width:700px;max-height:90vh;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;overflow:hidden}.exercise-component .tutorial-header{padding:20px 25px;background-color:#2196f3;color:#fff;display:flex;justify-content:space-between;align-items:center}.exercise-component .tutorial-header h3{margin:0;font-size:1.4rem}.exercise-component .close-tutorial-btn{background:none;border:none;color:#fff;font-size:1.8rem;cursor:pointer;line-height:1;padding:0;margin:0}.exercise-component .tutorial-content{padding:25px;overflow-y:auto;flex-grow:1}.exercise-component .tutorial-section{margin-bottom:25px}.exercise-component .tutorial-section h4{font-size:1.2rem;color:#2c3e50;margin-bottom:12px}.exercise-component .tutorial-section p{margin-bottom:10px;line-height:1.6}.exercise-component .tutorial-section ul{padding-left:20px;margin-bottom:10px}.exercise-component .tutorial-section li{margin-bottom:8px}.exercise-component .tutorial-status{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.85rem;font-weight:500}.exercise-component .tutorial-status.answered{background-color:#e8f5e9;color:#2e7d32}.exercise-component .tutorial-status.unanswered{background-color:#fff3e0;color:#e65100}.exercise-component .tutorial-footer{padding:20px 25px;background-color:#f5f7fa;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end}.exercise-component .tutorial-start-btn{background-color:#2196f3;color:#fff;border:none;padding:10px 20px;font-size:1rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .3s ease}.exercise-component .tutorial-start-btn:hover{background-color:#1976d2;transform:translateY(-2px);box-shadow:0 4px 8px #2196f340}.exercise-component .sticky-timer-container{position:sticky;top:0;z-index:100;background-color:#fff;padding:15px;border-radius:0 0 12px 12px;box-shadow:0 4px 15px #0000001a;margin:0 -15px 20px;display:flex;justify-content:space-between;align-items:center}.exercise-component .timer{display:flex;align-items:center;background-color:#e8f5e9;padding:8px 15px;border-radius:20px;font-weight:700;font-size:1.2rem;color:#2e7d32;transition:all .3s ease}.exercise-component .timer-warning{background-color:#ffebee;color:#c62828;animation:exercise-pulse 1s infinite}@keyframes exercise-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.exercise-component .timer-icon{margin-right:8px}.exercise-component .progress-container{flex-grow:1;margin-left:20px}.exercise-component .progress-bar{height:10px;background-color:#e9ecef;border-radius:10px;overflow:hidden;margin-bottom:8px}.exercise-component .progress-fill{height:100%;background:linear-gradient(to right,#4caf50,#45a049);border-radius:10px;transition:width .3s ease}.exercise-component .progress-text{font-size:.9rem;color:#666}.exercise-component .questions-container{display:flex;flex-direction:column;gap:25px;margin-bottom:30px}.exercise-component .question-card{background-color:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 15px #0000000d;transition:all .3s ease;border-left:5px solid #e9ecef}.exercise-component .question-card:hover{box-shadow:0 6px 18px #00000014;transform:translateY(-2px)}.exercise-component .question-card.unanswered{border-left-color:#ffb74d}.exercise-component .question-card.answered{border-left-color:#66bb6a}.exercise-component .question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.exercise-component .question-header h4{font-size:1.2rem;margin:0;color:#2c3e50;font-weight:600}.exercise-component .status-indicator{font-size:.8rem;padding:4px 10px;border-radius:20px;font-weight:500}.exercise-component .status-indicator.answered{background-color:#e8f5e9;color:#2e7d32}.exercise-component .status-indicator.unanswered{background-color:#fff3e0;color:#e65100}.exercise-component .question-text{font-size:1.1rem;line-height:1.6;margin-bottom:20px;color:#333}.exercise-component .options-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.exercise-component .option{padding:15px;background-color:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center}.exercise-component .option-letter{display:flex;justify-content:center;align-items:center;width:30px;height:30px;background-color:#e9ecef;border-radius:50%;margin-right:12px;font-weight:700;color:#495057;flex-shrink:0;transition:all .2s ease}.exercise-component .option-text{flex-grow:1}.exercise-component .option:hover{border-color:#bbb;background-color:#f1f3f4;transform:translateY(-2px)}.exercise-component .option.selected{background-color:#e3f2fd;border-color:#2196f3;box-shadow:0 2px 8px #2196f340}.exercise-component .option.selected .option-letter{background-color:#2196f3;color:#fff}.exercise-component .action-buttons{display:flex;flex-direction:column;align-items:center;margin-top:30px;gap:15px}.exercise-component .finish-button{padding:14px 28px;font-size:1.1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;width:100%;max-width:300px;background-color:#4caf50;color:#fff;box-shadow:0 4px 12px #4caf504d}.exercise-component .finish-button:hover{background-color:#43a047;transform:translateY(-2px);box-shadow:0 6px 16px #4caf5066}.exercise-component .finish-button.inactive{background-color:#e0e0e0;color:#9e9e9e;box-shadow:none;cursor:not-allowed;opacity:.7}.exercise-component .finish-button.inactive:hover{background-color:#e0e0e0;transform:none;box-shadow:none}.exercise-component .back-button{padding:12px 24px;background-color:#e0e0e0;color:#616161;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;font-weight:500;width:100%;max-width:300px}.exercise-component .back-button:hover{background-color:#d5d5d5}.exercise-component .finish-message{margin-top:15px;color:#f57c00;font-size:.95rem;font-weight:500}.exercise-component .loading{display:flex;justify-content:center;align-items:center;height:300px;font-size:1.2rem;color:#666}@keyframes exercise-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.exercise-component .question-card{animation:exercise-fadeIn .3s ease forwards;animation-delay:calc(.05s * var(--index, 0));opacity:0}@media (max-width: 768px){.exercise-component .exercise-page{padding:20px 15px}.exercise-component .options-container{grid-template-columns:1fr}.exercise-component .question-card{padding:20px 15px}.exercise-component .sticky-timer-container{flex-direction:column;align-items:stretch;padding:15px 10px}.exercise-component .timer{margin-bottom:15px;justify-content:center}.exercise-component .progress-container{margin-left:0}.exercise-component .tutorial-modal{width:95%;max-height:95vh}}.result-component .result-container{padding:30px;max-width:1000px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#333;background-color:#f8f9fa}.result-component .result-content{width:100%}.result-component .result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.result-component .result-header h2{font-size:2.2rem;color:#2c3e50;margin:0}.result-component .download-pdf-button{display:flex;align-items:center;gap:8px;background-color:#4caf50;color:#fff;border:none;border-radius:8px;padding:12px 20px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #4caf504d;transition:all .3s ease}.result-component .download-pdf-button:hover{background-color:#43a047;transform:translateY(-2px);box-shadow:0 6px 16px #4caf5066}.result-component .download-icon{font-size:1.2rem}.result-component .score-box{background-color:#fff;border-radius:12px;padding:40px;margin-bottom:40px;box-shadow:0 4px 20px #0000001a;display:flex;flex-direction:column;align-items:center;border:3px solid #e0e0e0}.result-component .score-circle-outer{width:200px;height:200px;border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:30px;box-shadow:0 5px 15px #0000001a}.result-component .score-circle-inner{width:170px;height:170px;border-radius:50%;background-color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:inset 0 0 8px #0000001a}.result-component .score-value{font-size:3rem;font-weight:700;color:#2c3e50;line-height:1}.result-component .score-fraction{font-size:1.2rem;color:#7f8c8d;margin-top:8px}.result-component .performance-info{text-align:center;width:100%;max-width:600px}.result-component .performance-title{display:flex;justify-content:center;align-items:center;gap:10px;margin-bottom:15px}.result-component .performance-icon{font-size:2.5rem}.result-component .performance-title h3{font-size:2rem;margin:0}.result-component .performance-message{font-size:1.1rem;line-height:1.6;color:#5d6d7e;margin:0}.result-component .user-info-pdf{background-color:#eef5f9;padding:15px;border-radius:8px;margin-bottom:20px;width:100%;border-left:4px solid #2196f3}.result-component .user-info-pdf p{margin:5px 0;font-size:1.1rem}.result-component .questions-summary{background-color:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 15px #0000000d;margin-bottom:40px}.result-component .questions-summary h3{text-align:center;font-size:1.6rem;color:#2c3e50;margin-top:0;margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.result-component .questions-list{display:flex;flex-direction:column;gap:20px}.result-component .question-item{background-color:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 15px #0000000d;border-left:5px solid #e9ecef}.result-component .question-item.correct{border-left-color:#4caf50}.result-component .question-item.incorrect{border-left-color:#f44336}.result-component .question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.result-component .question-header h4{font-size:1.2rem;margin:0;color:#2c3e50;font-weight:600}.result-component .question-status{font-size:.8rem;padding:4px 10px;border-radius:20px;font-weight:500}.result-component .question-status.correct{background-color:#e8f5e9;color:#2e7d32}.result-component .question-status.incorrect{background-color:#ffebee;color:#c62828}.result-component .question-text{font-size:1.1rem;line-height:1.6;margin-bottom:20px;color:#333}.result-component .answers-container{display:flex;flex-direction:column;gap:15px}.result-component .answer-box{padding:15px;border-radius:8px;background-color:#f8f9fa}.result-component .answer-box.your-answer{border:1px solid #e0e0e0}.result-component .answer-box.correct-answer{background-color:#e8f5e9;border:1px solid #a5d6a7}.result-component .answer-label{font-weight:700;margin-bottom:5px;color:#2c3e50}.result-component .answer-text{color:#5d6d7e}.result-component .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.result-component .modal-content{background-color:#fff;border-radius:12px;padding:30px;box-shadow:0 10px 25px #0003;width:90%;max-width:500px}.result-component .modal-content h3{margin-top:0;margin-bottom:20px;text-align:center;color:#2c3e50;font-size:1.5rem}.result-component .form-group{margin-bottom:20px}.result-component .form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50}.result-component .form-group input{width:100%;padding:12px;border:1px solid #e0e0e0;border-radius:8px;font-size:1rem}.result-component .form-group input:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a}.result-component .modal-buttons{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.result-component .modal-buttons button{flex:1;padding:12px;border:none;border-radius:8px;font-weight:600;cursor:pointer}.result-component .cancel-button{background-color:#f5f5f5;color:#757575}.result-component .cancel-button:hover{background-color:#e0e0e0}.result-component .confirm-button{background-color:#2196f3;color:#fff;box-shadow:0 4px 12px #2196f34d}.result-component .confirm-button:hover{background-color:#1976d2;box-shadow:0 6px 16px #2196f366}.result-component .action-buttons{display:flex;justify-content:center;gap:20px;margin-top:20px;margin-bottom:40px}.result-component .retry-button,.result-component .home-button{padding:12px 24px;border:none;border-radius:8px;font-weight:600;cursor:pointer;font-size:1rem;min-width:180px}.result-component .retry-button{background-color:#2196f3;color:#fff;box-shadow:0 4px 12px #2196f34d}.result-component .retry-button:hover{background-color:#1976d2;transform:translateY(-2px);box-shadow:0 6px 16px #2196f366}.result-component .home-button{background-color:#e0e0e0;color:#616161}.result-component .home-button:hover{background-color:#d5d5d5;transform:translateY(-2px)}.result-component .confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000;overflow:hidden}.result-component .confetti{position:absolute;top:-10px;width:10px;height:20px;opacity:.8;animation:result-fall 5s linear infinite}.result-component .confetti:nth-child(5n+1){width:12px;height:12px;border-radius:50%}.result-component .confetti:nth-child(5n+2){width:8px;height:15px}.result-component .confetti:nth-child(5n+3){width:10px;height:10px;border-radius:4px}.result-component .confetti:nth-child(5n+4){width:15px;height:8px}.result-component .confetti:nth-child(5n){width:6px;height:18px}@keyframes result-fall{0%{transform:translateY(-10px) rotate(0)}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@media (max-width: 768px){.result-component .result-container{padding:20px 15px}.result-component .result-header{flex-direction:column;gap:15px;align-items:center;margin-bottom:40px}.result-component .score-box{padding:20px}.result-component .score-circle-outer{width:150px;height:150px}.result-component .score-circle-inner{width:130px;height:130px}.result-component .score-value{font-size:2.2rem}.result-component .score-fraction{font-size:1rem}.result-component .performance-title h3{font-size:1.5rem}.result-component .action-buttons{flex-direction:column;align-items:center}.result-component .retry-button,.result-component .home-button{width:100%;max-width:300px}.result-component .questions-summary{padding:20px 15px}.result-component .question-item{padding:15px}}.match-exercise{font-family:Poppins,sans-serif;text-align:center;padding:20px;background-color:#f8f9fa;color:#333;min-height:100vh;max-width:1400px;margin:0 auto;position:relative;overflow:hidden}h1{font-size:2.5rem;margin-bottom:10px;color:#4285f4;font-weight:700}p{font-size:1.2rem;color:#555;line-height:1.6}.icon-info,.icon-clock,.icon-check,.icon-reset,.trophy-icon{font-size:1.5rem;vertical-align:middle;margin-right:8px}.correct-icon{color:#34a853;font-size:1.2rem;font-weight:700}.instructions-container{max-width:800px;margin:40px auto;background-color:#fff;border-radius:12px;padding:30px;box-shadow:0 10px 25px #0000001a;animation:fadeIn .5s ease-in-out}.instructions-content{display:flex;align-items:flex-start;margin:20px 0;text-align:left}.instructions-icon{margin-right:20px;padding-top:10px}.instructions-text h2{font-size:1.8rem;margin-bottom:15px;color:#333}.instructions-text ol{padding-left:20px}.instructions-text li{margin-bottom:10px;font-size:1.1rem;line-height:1.6}.difficulty-selection{display:flex;justify-content:center;gap:20px;margin-top:30px;flex-wrap:wrap}.difficulty-button{padding:15px 30px;font-size:1.2rem;font-weight:600;color:#fff;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;min-width:180px}.difficulty-details{font-size:.85rem;font-weight:400;margin-top:5px;opacity:.9}.difficulty-button.easy{background-color:#34a853}.difficulty-button.medium{background-color:#fbbc05}.difficulty-button.hard{background-color:#ea4335}.difficulty-button:hover{transform:translateY(-5px);box-shadow:0 7px 15px #0003}.exercise-header{margin-bottom:30px}.exercise-meta{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:25px;margin-top:15px}.timer{font-size:1.3rem;font-weight:600;color:#4285f4;background-color:#4285f41a;padding:8px 15px;border-radius:20px;display:flex;align-items:center;gap:8px;box-shadow:0 2px 5px #0000000d}.timer-warning{color:#ea4335;background-color:#ea43351a;animation:pulse 1s infinite}.difficulty-badge{font-size:1rem;font-weight:600;background-color:#e9ecef;color:#495057;padding:8px 15px;border-radius:20px;box-shadow:0 2px 5px #0000000d}.progress-indicator{display:flex;flex-direction:column;align-items:center}.progress-text{font-size:1rem;font-weight:500;color:#333;margin-bottom:5px}.progress-bar{width:150px;height:8px;background-color:#e9ecef;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(to right,#4285f4,#34a853);border-radius:10px;transition:width .3s ease}.container{display:flex;justify-content:space-between;align-items:flex-start;margin:20px auto;max-width:1200px;gap:30px}.devices-container,.descriptions-container{flex:1;display:flex;flex-direction:column}.devices-container h2,.descriptions-container h2{font-size:1.5rem;margin-bottom:15px;color:#333;text-align:left;font-weight:600;padding-left:10px;border-left:4px solid #4285F4}.devices,.descriptions{background-color:#fff;border-radius:12px;padding:20px;box-shadow:0 5px 15px #0000000d;min-height:400px;display:flex;flex-direction:column;gap:12px}.device,.description{padding:15px;border-radius:8px;font-size:1.05rem;line-height:1.5;transition:all .3s ease;position:relative}.device{font-weight:600;background-color:#f8f9fa;border:2px solid #e9ecef;box-shadow:0 2px 5px #0000000d;cursor:grab}.device:hover{transform:translateY(-3px);box-shadow:0 5px 10px #0000001a}.description{background-color:#f8f9fa;border:2px dashed #dee2e6;min-height:30px}.device.matched,.description.matched{cursor:default;border-style:solid;box-shadow:0 4px 8px #0000001a;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.device.unmatched{opacity:.5;transform:scale(.95)}.description.drag-over{background-color:#e9ecef;border:2px dashed #4285F4;transform:scale(1.03)}.device.dragging{opacity:.7;transform:scale(1.05)}.match-indicator{position:absolute;right:10px;top:10px}.correct-answer{background-color:#ffffffb3;border-radius:4px;padding:4px 8px;font-size:.85rem;color:#ea4335;font-weight:600}.correct-match{border:2px solid #34A853}.incorrect-match{border:2px solid #EA4335}.pulse-animation{animation:pulse .5s}.submit-button,.reset-button,.view-results-button{padding:12px 25px;font-size:1.1rem;font-weight:600;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;margin-top:30px;min-width:200px;display:inline-flex;justify-content:center;align-items:center;gap:8px}.submit-button{background-color:#4285f4;box-shadow:0 4px 8px #4285f44d}.submit-button:hover:not(:disabled){background-color:#2b76f5;transform:translateY(-3px);box-shadow:0 6px 12px #4285f466}.submit-button:disabled{background-color:#a6c8ff;cursor:not-allowed}.submit-button.pulse{animation:pulse-button 2s infinite}@keyframes pulse-button{0%{transform:scale(1)}50%{transform:scale(1.05);box-shadow:0 8px 15px #4285f480}to{transform:scale(1)}}.reset-button{background-color:#ea4335;box-shadow:0 4px 8px #ea43354d}.reset-button:hover{background-color:#d73228;transform:translateY(-3px);box-shadow:0 6px 12px #ea433566}.view-results-button{background-color:#34a853;box-shadow:0 4px 8px #34a8534d}.view-results-button:hover{background-color:#2a9147;transform:translateY(-3px);box-shadow:0 6px 12px #34a85366}.results-summary{margin-top:30px;background-color:#fff;border-radius:12px;padding:25px;box-shadow:0 10px 25px #0000001a;max-width:600px;margin-left:auto;margin-right:auto;animation:fadeInUp .5s}.score-display{display:flex;align-items:center;justify-content:center;gap:30px;margin-bottom:20px}.score-circle{width:120px;height:120px;border-radius:50%;background:conic-gradient(#4285F4 0%,#4285F4 var(--scorePercentage, 0%),#f1f3f4 var(--scorePercentage, 0%),#f1f3f4 100%);display:flex;justify-content:center;align-items:center;box-shadow:0 5px 15px #0000001a}.score-inner{width:100px;height:100px;border-radius:50%;background-color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center}.score-value{font-size:2.2rem;font-weight:700;line-height:1;color:#4285f4}.score-text{font-size:.9rem;color:#5f6368;margin-top:5px}.score-details{text-align:left}.score-details h3{display:flex;align-items:center;gap:10px;font-size:1.5rem;margin-bottom:10px;color:#333}.trophy-icon{color:#fbbc05}.score-numbers{font-size:1.1rem;color:#5f6368}.result-buttons{display:flex;justify-content:center;gap:15px;margin-top:20px;flex-wrap:wrap}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000}.confetti{position:absolute;top:-10px;width:10px;height:20px;background-color:#ea4335;opacity:.8;animation:fall 5s linear infinite}@keyframes fall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(360deg);opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 992px){.container{flex-direction:column;gap:20px}.devices-container,.descriptions-container{width:100%}.devices,.descriptions{min-height:300px}.exercise-meta{flex-direction:column;gap:15px}.score-display{flex-direction:column;gap:20px}.score-details{text-align:center}}@media (max-width: 576px){.match-exercise{padding:15px 10px}h1{font-size:1.8rem}.instructions-content{flex-direction:column;align-items:center}.instructions-icon{margin-right:0;margin-bottom:15px}.instructions-text{text-align:center}.instructions-text ol{text-align:left}.difficulty-selection{flex-direction:column;gap:10px}.difficulty-button{width:100%}.timer,.difficulty-badge{font-size:.9rem;padding:6px 12px}.submit-button,.reset-button,.view-results-button{width:100%;padding:10px 15px;font-size:1rem}.score-value{font-size:1.8rem}}.device,.description{-webkit-user-select:none;user-select:none}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.pulse-animation,.pulse,.timer-warning{animation:none!important}}.sql-simulator{max-width:1400px;margin:80px auto;padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f9f9f9;border-radius:12px;box-shadow:0 4px 12px #00000026;transition:all .3s ease;overflow:hidden}.sql-simulator.dark-mode{background-color:#1a1a1a;color:#f0f0f0}.dark-mode .query-input-section,.dark-mode .side-panel,.dark-mode .content-container,.dark-mode .table-card{background-color:#2a2a2a;border-color:#3a3a3a}.dark-mode .query-input-horizontal,.dark-mode .example-button,.dark-mode .history-item,.dark-mode .tab-button,.dark-mode .modal-content,.dark-mode .import-textarea,.dark-mode .challenge-textarea{background-color:#333;color:#f0f0f0;border-color:#444}.dark-mode .tab-button.active{background-color:#2a2a2a;color:#4299e1;border-bottom-color:#4299e1}.dark-mode .tab-buttons{background-color:#333;border-color:#444}.dark-mode th{background-color:#333!important;color:#f0f0f0}.dark-mode tr:hover{background-color:#3a3a3a!important}.dark-mode .badge,.dark-mode .constraint-badge{background-color:#4a4a4a;color:#f0f0f0}.dark-mode .text-gray-400{color:#aaa}.dark-mode .error-container{background-color:#dc26261a;color:#ef4444}.dark-mode .success-message{background-color:#10b9811a;color:#10b981}.dark-mode .learn-card,.dark-mode .reference-button,.dark-mode .active-tutorial,.dark-mode .active-challenge,.dark-mode .code-block,.dark-mode .challenge-result,.dark-mode .tutorial-result{background-color:#2a2a2a;border-color:#444;color:#f0f0f0}.dark-mode .tutorial-header,.dark-mode .challenge-header{border-color:#444}.simulator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.title{color:#333;font-size:2.5rem;font-weight:700;margin:0;text-shadow:1px 1px 3px rgba(0,0,0,.1);background:linear-gradient(45deg,#2563eb,#4f46e5);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:titleGlow 3s ease-in-out infinite}@keyframes titleGlow{0%,to{opacity:1}50%{opacity:.8}}.dark-mode .title{background:linear-gradient(45deg,#60a5fa,#818cf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background-color:#f1f5f9;padding:12px 15px;border-radius:12px;box-shadow:0 2px 6px #00000014}.dark-mode .toolbar{background-color:#2c2c2c;box-shadow:0 2px 6px #0003}.toolbar-button{border:none;border-radius:8px;padding:12px 24px;min-width:120px;font-size:15px;font-weight:600;color:#334155;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 2px 4px #00000014;cursor:pointer}.toolbar-button:nth-child(1){background-color:#eff6ff}.toolbar-button:nth-child(2){background-color:#ecfdf5}.toolbar-button:nth-child(3){background-color:#fffbeb}.toolbar-button:nth-child(4){background-color:#fef2f2}.toolbar-button.tutorial-button{background-color:#f0f9ff}.toolbar-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001f}.toolbar-button:active{transform:translateY(0);box-shadow:0 2px 4px #00000014}.dark-mode .toolbar-button{background-color:#333;color:#f0f0f0;box-shadow:0 2px 4px #0003}.dark-mode .toolbar-button:nth-child(1){background-color:#1e3a8a}.dark-mode .toolbar-button:nth-child(2){background-color:#065f46}.dark-mode .toolbar-button:nth-child(3){background-color:#78350f}.dark-mode .toolbar-button:nth-child(4){background-color:#7f1d1d}.dark-mode .toolbar-button.tutorial-button{background-color:#0c4a6e}.dark-mode .toolbar-button:hover{background-color:#444}.toggle-container{display:flex;align-items:center;margin-left:10px;background:linear-gradient(to right,#4361ee,#3a0ca3);padding:6px 16px;border-radius:30px;box-shadow:0 2px 6px #00000026;min-width:140px}.dark-mode .toggle-container{background:linear-gradient(to right,#6366f1,#4f46e5)}.toggle-label{display:flex;align-items:center;gap:12px;cursor:pointer;width:100%;justify-content:space-between}.toggle-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:44px;height:22px;background-color:#9ca3af;border-radius:12px;position:relative;transition:all .3s;cursor:pointer}.toggle-input:checked{background-color:#10b981}.toggle-input:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background-color:#fff;top:2px;left:2px;transition:all .3s}.toggle-input:checked:before{left:24px}.toggle-text{font-size:15px;font-weight:600;color:#fff}.query-input-section{margin-bottom:20px;background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 6px #0000001a}.query-form{display:grid;grid-template-columns:1fr auto;gap:15px}.query-input-wrapper{position:relative;z-index:20}.query-input-horizontal{width:100%;padding:15px;font-size:16px;border:2px solid #e2e8f0;border-radius:8px;background:#f4f4f9;transition:all .2s;font-family:Consolas,Monaco,monospace}.query-input-horizontal:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e133}.validation-indicator{position:absolute;bottom:-25px;left:0;display:flex;align-items:center;gap:8px;font-size:12px;opacity:0;animation:fadeIn .3s ease forwards}.validation-indicator.valid{color:#10b981}.validation-indicator.invalid{color:#ef4444}.validation-icon{flex-shrink:0}.validation-message{white-space:nowrap}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.query-actions{display:flex;gap:10px;flex-wrap:wrap}.execute-button,.save-button,.format-button,.explain-button{padding:15px 24px;font-size:16px;font-weight:600;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.execute-button{background:linear-gradient(to right,#4361ee,#3a0ca3);box-shadow:0 4px 6px #4299e14d}.execute-button:hover:not(:disabled){background:linear-gradient(to right,#3a56e4,#3209a3);transform:translateY(-2px);box-shadow:0 6px 8px #4299e166}.execute-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.save-button{background:linear-gradient(to right,#10b981,#059669);box-shadow:0 4px 6px #10b9814d}.save-button:hover{background:linear-gradient(to right,#0ca678,#047857);transform:translateY(-2px);box-shadow:0 6px 8px #10b98166}.format-button{background:linear-gradient(to right,#8b5cf6,#7c3aed);box-shadow:0 4px 6px #8b5cf64d}.format-button:hover{background:linear-gradient(to right,#7c3aed,#6d28d9);transform:translateY(-2px);box-shadow:0 6px 8px #8b5cf666}.explain-button{background:linear-gradient(to right,#f59e0b,#d97706);box-shadow:0 4px 6px #f59e0b4d}.explain-button.active{background:linear-gradient(to right,#d97706,#b45309)}.explain-button:hover{background:linear-gradient(to right,#d97706,#b45309);transform:translateY(-2px);box-shadow:0 6px 8px #f59e0b66}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;color:#718096;gap:16px}.animate-spin{animation:spin 1s linear infinite}.query-type-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;padding:15px;background-color:#f8fafc;border-radius:10px;box-shadow:0 2px 4px #0000000d}.dark-mode .query-type-buttons{background-color:#2a2a2a}.query-type-button{padding:10px 18px;font-size:14px;font-weight:600;background-color:#eff6ff;border:1px solid #dbeafe;border-radius:6px;cursor:pointer;transition:all .2s;color:#2563eb;box-shadow:0 2px 4px #0000000d}.query-type-button:hover{background-color:#dbeafe;transform:translateY(-1px);box-shadow:0 4px 6px #2563eb33}.dark-mode .query-type-button{background-color:#1e3a8a;border-color:#2563eb;color:#dbeafe}.dark-mode .query-type-button:hover{background-color:#2563eb;color:#eff6ff}.display-section{display:grid;grid-template-columns:250px 1fr;gap:30px}.side-panel{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 6px #0000001a}.side-panel h4{margin-bottom:15px;color:#333;font-size:1.25rem;border-bottom:2px solid #e2e8f0;padding-bottom:8px}.dark-mode .side-panel h4{color:#f0f0f0;border-bottom-color:#444}.example-list,.history-list{display:flex;flex-direction:column;gap:10px}.example-button,.history-item{padding:12px;border-radius:8px;background-color:#f8fafc;border:1px solid #e2e8f0;cursor:pointer;transition:all .2s;text-align:left;font-family:Consolas,Monaco,monospace;font-size:14px}.example-button:hover,.history-item:hover{background-color:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.content-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 6px #0000001a}.tab-buttons{display:flex;border-bottom:1px solid #e2e8f0;background:#f8f9fa;padding:0 20px}.tab-button{padding:16px 24px;font-size:16px;font-weight:600;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;color:#718096;transition:all .2s;display:flex;align-items:center;gap:8px}.tab-button:hover{color:#4299e1}.tab-button.active{color:#4299e1;border-bottom-color:#4299e1;background:#fff}.tab-content{padding:24px;min-height:300px}.schema-grid{display:grid;gap:24px}.table-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000001a;transition:all .2s}.table-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.table-card-header{padding:16px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.table-structure{padding:16px;border-bottom:1px solid #e2e8f0}.table-preview{padding:16px}.badge{padding:4px 8px;font-size:12px;font-weight:600;background-color:#e2e8f0;color:#4a5568;border-radius:999px}.constraint-badge{padding:2px 6px;font-size:11px;font-weight:600;background-color:#edf2f7;color:#4a5568;border-radius:4px;white-space:nowrap}.result-view{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.result-header{padding:16px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.table-wrapper{overflow-x:auto}.result-table{width:100%;border-collapse:collapse}.result-table th{background-color:#f7fafc;padding:12px 16px;font-weight:600;text-align:left;border-bottom:2px solid #e2e8f0}.result-table td{padding:12px 16px;border-bottom:1px solid #e2e8f0}.result-table tr:hover{background-color:#f7fafc}.query-explanation{margin-top:20px;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000000d;animation:slideIn .3s ease}.explanation-header{padding:12px 16px;background-color:#f1f5f9;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.explanation-header h4{margin:0;color:#334155;font-size:16px}.close-explanation{background:none;border:none;cursor:pointer;color:#64748b;padding:4px;border-radius:4px;transition:background-color .2s}.close-explanation:hover{background-color:#e2e8f0}.explanation-content{padding:16px;color:#334155}.explanation-content h4{margin-top:0;color:#2563eb}.explanation-content p{margin-bottom:12px}.explanation-content strong{color:#1e40af}.empty-state{padding:48px;text-align:center;color:#718096;display:flex;flex-direction:column;align-items:center;gap:16px}.success-message{padding:16px;background:#f0fff4;border-radius:8px;color:#2f855a;display:flex;align-items:center;gap:12px;animation:slideIn .3s ease}.error-container{margin-bottom:20px;padding:16px;background:#fff5f5;border-radius:8px;animation:slideIn .3s ease}.error-content{flex:1}.error-message{color:#c53030;white-space:pre-line;margin:0}.logs-container,.logs-content{display:flex;flex-direction:column;gap:16px}.logs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.logs-header h3{margin:0;font-size:1.25rem;color:#333}.dark-mode .logs-header h3{color:#f0f0f0}.clear-logs-button{background-color:#fee2e2;color:#b91c1c;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;transition:all .2s}.clear-logs-button:hover{background-color:#fecaca;transform:translateY(-1px)}.dark-mode .clear-logs-button{background-color:#7f1d1d;color:#fee2e2}.log-item{padding:16px;border-radius:8px;background-color:#f9f9f9;cursor:pointer;transition:all .2s;animation:slideIn .3s ease}.log-item:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.log-success{border-left:4px solid #10b981}.log-error{border-left:4px solid #ef4444}.log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.log-actions{display:flex;gap:8px}.log-action-button{background:none;border:none;cursor:pointer;color:#718096;padding:4px;border-radius:4px;transition:all .2s}.log-action-button:hover{background-color:#f1f5f9;color:#334155}.dark-mode .log-action-button:hover{background-color:#333;color:#f0f0f0}.log-timestamp{font-size:12px;color:#718096}.log-query-wrapper{margin-top:8px;padding:8px;background-color:#f0f4f8;border-radius:4px;overflow-x:auto}.log-query{font-family:Consolas,Monaco,monospace;font-size:14px;color:#1a202c}.log-result{font-size:14px;color:#4a5568;margin-top:8px}.dark-mode .log-item{background-color:#2a2a2a}.dark-mode .log-timestamp{color:#aaa}.dark-mode .log-query-wrapper{background-color:#333}.dark-mode .log-query{color:#f0f0f0}.dark-mode .log-result{color:#ddd}.learn-container{display:flex;flex-direction:column;gap:24px}.learn-overview{display:flex;flex-direction:column;gap:32px}.section{display:flex;flex-direction:column;gap:12px}.section h3{display:flex;align-items:center;gap:8px;margin:0;color:#2d3748}.dark-mode .section h3{color:#f0f0f0}.section p{margin:0;color:#718096}.dark-mode .section p{color:#cbd5e1}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:8px}.learn-card{padding:16px;background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s}.learn-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.learn-card h4{margin:0 0 8px;color:#2d3748}.learn-card p{margin:0 0 8px;color:#718096}.learn-card small{color:#a0aec0}.button-group{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.reference-button{padding:8px 12px;background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;color:#4a5568;transition:all .2s}.reference-button:hover{background-color:#edf2f7;transform:translateY(-1px)}.active-tutorial{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;animation:slideIn .3s ease}.tutorial-header{padding:16px;background-color:#f7fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.tutorial-header h3{margin:0;color:#2d3748}.close-button{background:none;border:none;cursor:pointer;color:#718096;padding:4px;border-radius:4px;transition:background-color .2s}.close-button:hover{background-color:#e2e8f0}.tutorial-content{padding:24px}.tutorial-content h4{margin:0 0 16px;color:#2d3748;font-size:20px}.tutorial-explanation{margin-bottom:24px;line-height:1.6}.markdown-content p{margin-bottom:16px}.code-block{padding:12px;background-color:#f1f5f9;border-radius:6px;font-family:Consolas,Monaco,monospace;overflow-x:auto;margin-bottom:16px;border-left:4px solid #4299e1}.tutorial-example{margin-bottom:24px;padding:16px;background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:8px}.tutorial-example h5{margin:0 0 12px;color:#2d3748}.tutorial-actions{display:flex;gap:12px;margin-top:12px;flex-wrap:wrap}.try-example-button,.execute-example-button{padding:8px 16px;border-radius:4px;cursor:pointer;transition:all .2s;border:none;font-weight:500}.try-example-button{background-color:#e2e8f0;color:#4a5568}.execute-example-button{background-color:#3182ce;color:#fff}.try-example-button:hover{background-color:#cbd5e1;transform:translateY(-1px)}.execute-example-button:hover{background-color:#2c5282;transform:translateY(-1px)}.tutorial-result{margin-top:16px;padding:16px;border-radius:8px;animation:slideIn .3s ease}.tutorial-result h5{margin:0 0 12px;color:#2d3748}.tutorial-result.success{background-color:#f0fff4;border:1px solid #c6f6d5}.tutorial-result.error{background-color:#fff5f5;border:1px solid #fed7d7;color:#c53030}.tutorial-result-table{overflow-x:auto}.tutorial-result-table table{width:100%;border-collapse:collapse;margin-top:12px}.tutorial-result-table th{background-color:#f7fafc;padding:8px 12px;text-align:left;font-weight:600;border-bottom:2px solid #e2e8f0}.tutorial-result-table td{padding:8px 12px;border-bottom:1px solid #e2e8f0}.tutorial-task{padding:16px;background-color:#ebf8ff;border:1px solid #bee3f8;border-radius:8px}.tutorial-task h5{margin:0 0 12px;color:#2b6cb0}.tutorial-task p{margin:0;color:#2c5282}.tutorial-navigation{padding:16px;background-color:#f7fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between}.nav-button{padding:8px 16px;background-color:#edf2f7;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500}.nav-button:hover:not(:disabled){background-color:#e2e8f0;transform:translateY(-1px)}.nav-button:disabled{opacity:.5;cursor:not-allowed}.nav-button.primary{background-color:#4299e1;color:#fff;border:none}.nav-button.primary:hover:not(:disabled){background-color:#3182ce}.active-challenge{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;animation:slideIn .3s ease}.challenge-header{padding:16px;background-color:#f7fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.challenge-header h3{margin:0;color:#2d3748}.challenge-content{padding:24px}.challenge-description{margin-bottom:24px}.challenge-description p{margin:0;color:#4a5568;line-height:1.6}.challenge-input{margin-bottom:24px}.challenge-input h5{margin:0 0 12px;color:#2d3748}.challenge-textarea{width:100%;padding:12px;background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;font-family:Consolas,Monaco,monospace;resize:vertical;transition:border-color .2s}.challenge-textarea:focus{outline:none;border-color:#4299e1}.challenge-actions{display:flex;gap:12px;margin-top:12px;flex-wrap:wrap}.hint-button,.solution-button,.submit-button{padding:8px 16px;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500;border:none}.hint-button{background-color:#edf2f7;border:1px solid #e2e8f0;color:#4a5568}.solution-button{background-color:#fed7d7;border:1px solid #feb2b2;color:#c53030}.submit-button{background-color:#4299e1;color:#fff}.hint-button:hover{background-color:#e2e8f0;transform:translateY(-1px)}.solution-button:hover{background-color:#fecaca;transform:translateY(-1px)}.submit-button:hover:not(:disabled){background-color:#3182ce;transform:translateY(-1px)}.submit-button:disabled{opacity:.5;cursor:not-allowed}.challenge-result{padding:16px;border-radius:8px;margin-top:16px;animation:slideIn .3s ease}.challenge-result.success{background-color:#f0fff4;border:1px solid #c6f6d5;color:#2f855a}.challenge-result.error{background-color:#fff5f5;border:1px solid #fed7d7;color:#c53030}.challenge-result-output{margin-top:16px}.challenge-result-output h5{margin:0 0 8px;color:#2d3748}.challenge-result-output table{width:100%;border-collapse:collapse}.challenge-result-output th{background-color:#f7fafc;padding:8px 12px;text-align:left;font-weight:600;border-bottom:2px solid #e2e8f0}.challenge-result-output td{padding:8px 12px;border-bottom:1px solid #e2e8f0}.next-challenge-button{margin-top:12px;padding:8px 16px;background-color:#48bb78;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.next-challenge-button:hover{background-color:#38a169;transform:translateY(-1px)}.preview-table-wrapper{overflow-x:auto;margin:0 -16px;padding:0 16px}.autocomplete-container{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 6px #0000001a;z-index:30;max-height:200px;overflow-y:auto;margin-top:5px;animation:slideIn .2s ease}.autocomplete-option{padding:10px 16px;cursor:pointer;font-family:Consolas,Monaco,monospace;border-bottom:1px solid #f0f0f0;transition:background-color .2s}.autocomplete-option:last-child{border-bottom:none}.autocomplete-option:hover{background:#f7fafc}.dark-mode .autocomplete-container{background:#333;border-color:#444;box-shadow:0 4px 6px #0000004d}.dark-mode .autocomplete-option{border-bottom-color:#444;color:#f0f0f0}.dark-mode .autocomplete-option:hover{background:#444}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:100;animation:fadeIn .3s ease}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 15px -3px #0000001a;animation:modalSlideIn .3s ease}.modal-content.tutorial-modal{max-width:800px}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{padding:16px 24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.5rem;color:#1a202c}.modal-close{background:none;border:none;cursor:pointer;color:#718096;padding:4px;border-radius:4px;transition:background-color .2s}.modal-close:hover{background-color:#f1f5f9}.modal-body{padding:24px}.modal-footer{padding:16px 24px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:12px}.tutorial-steps{display:flex;flex-direction:column;gap:20px}.tutorial-step{display:flex;gap:16px;padding:16px;background-color:#f7fafc;border-radius:8px;border-left:4px solid #4299e1}.step-number{width:28px;height:28px;background-color:#4299e1;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0}.step-content h4{margin:0 0 8px;color:#2d3748}.step-content p{margin:0;color:#4a5568;line-height:1.6}.shortcuts-grid{display:grid;gap:12px}.shortcut-item{display:flex;align-items:center;gap:16px;padding:8px 0}.shortcut-key{background-color:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;padding:4px 8px;font-family:Consolas,Monaco,monospace;font-size:12px;min-width:120px;text-align:center;color:#4a5568}.shortcut-description{color:#2d3748}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#4a5568}.export-format-options{display:flex;gap:16px;flex-wrap:wrap}.radio-option{display:flex;align-items:center;gap:8px;cursor:pointer}.radio-option input[type=radio]{accent-color:#4299e1}.import-textarea{width:100%;padding:12px;border:1px solid #e2e8f0;border-radius:8px;font-family:Consolas,Monaco,monospace;resize:vertical;transition:border-color .2s}.import-textarea:focus{outline:none;border-color:#4299e1}.cancel-button,.confirm-button{padding:10px 16px;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s;border:none}.cancel-button{background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0}.cancel-button:hover{background:#edf2f7;transform:translateY(-1px)}.confirm-button{background:linear-gradient(to right,#4361ee,#3a0ca3);color:#fff}.confirm-button:hover{background:linear-gradient(to right,#3a56e4,#3209a3);transform:translateY(-1px)}.saved-queries-list{display:flex;flex-direction:column;gap:12px}.saved-query-item{padding:12px;border:1px solid #e2e8f0;border-radius:8px;transition:all .2s;position:relative}.saved-query-item:hover{background-color:#f7fafc;transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.saved-query-name{font-weight:600;margin-bottom:4px}.saved-query-preview{font-family:Consolas,Monaco,monospace;font-size:14px;color:#718096;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:8px}.saved-query-actions{display:flex;gap:8px}.saved-query-action{background:none;border:none;cursor:pointer;color:#718096;padding:4px 8px;border-radius:4px;transition:all .2s}.saved-query-action:hover{background-color:#f1f5f9;color:#4a5568}.saved-query-action.delete:hover{background-color:#fee2e2;color:#e53e3e}.query-info-content{line-height:1.6}.query-info-content h3{margin-top:0;color:#4299e1}.query-info-content pre{background-color:#f7fafc;padding:12px;border-radius:6px;overflow-x:auto;font-family:Consolas,Monaco,monospace;border-left:4px solid #4299e1}.query-info-content code{font-family:Consolas,Monaco,monospace;background-color:#f7fafc;padding:2px 4px;border-radius:4px}.notification{position:fixed;bottom:24px;right:24px;padding:12px 20px;border-radius:8px;background-color:#fff;box-shadow:0 4px 6px #0000001a;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:1000;animation:slideInRight .3s ease-out;max-width:400px}.notification.error{background-color:#fee2e2;color:#b91c1c;border-left:4px solid #EF4444}.notification.success{background-color:#dcfce7;color:#166534;border-left:4px solid #10B981}.notification.info{background-color:#dbeafe;color:#1e40af;border-left:4px solid #3B82F6}.notification-close{background:none;border:none;cursor:pointer;color:currentColor;opacity:.7;padding:4px;border-radius:4px;transition:all .2s}.notification-close:hover{opacity:1;background-color:#0000001a}@keyframes slideInRight{0%{transform:translate(100px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.icon{display:inline-block;vertical-align:middle;margin-right:8px}.flex{display:flex}.items-center{align-items:center}.gap-2{gap:8px}.mr-2{margin-right:8px}.text-gray-400{color:#a0aec0}.text-blue-500{color:#4299e1}.text-green-500{color:#48bb78}.text-red-500{color:#f56565}.font-medium{font-weight:500}@media (max-width: 1024px){.sql-simulator{margin:40px auto;padding:16px}.display-section{grid-template-columns:200px 1fr;gap:20px}}@media (max-width: 768px){.sql-simulator{padding:10px;margin:20px auto}.simulator-header{flex-direction:column;gap:16px}.title{font-size:2rem}.toolbar{width:100%;justify-content:center;flex-wrap:wrap;gap:8px}.toolbar-button{min-width:110px;flex:1;padding:10px 16px;font-size:14px}.display-section{grid-template-columns:1fr;gap:20px}.query-form{grid-template-columns:1fr}.query-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tab-buttons{padding:0;flex-wrap:wrap}.tab-button{padding:12px;flex:1;justify-content:center;min-width:120px;font-size:14px}.export-format-options{flex-direction:column;gap:8px}.card-grid{grid-template-columns:1fr}.challenge-actions,.tutorial-actions{flex-direction:column}.modal-content{width:95%;margin:20px}.query-actions{grid-template-columns:1fr}.execute-button,.save-button,.format-button,.explain-button{padding:12px 20px;font-size:14px}.shortcuts-grid{gap:8px}.shortcut-item{flex-direction:column;align-items:flex-start;gap:8px}.shortcut-key{min-width:auto;width:100%}}@media (max-width: 480px){.sql-simulator{margin:10px;padding:8px}.title{font-size:1.75rem}.toolbar-button{min-width:90px;padding:8px 12px}.query-input-horizontal{padding:12px;font-size:14px}.tab-button{padding:10px 8px;min-width:100px}.modal-content{width:98%;margin:10px}.tutorial-step{flex-direction:column;gap:12px}.step-number{align-self:flex-start}}button:focus,input:focus,textarea:focus,.tab-button:focus,.toolbar-button:focus{outline:2px solid #4299e1;outline-offset:2px}.dark-mode button:focus,.dark-mode input:focus,.dark-mode textarea:focus{outline:2px solid #60a5fa}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){.tab-button{border:2px solid currentColor}.badge,.constraint-badge{border:1px solid currentColor}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}::-webkit-scrollbar-thumb{background:#888;border-radius:10px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:#555}.dark-mode ::-webkit-scrollbar-track{background:#2a2a2a}.dark-mode ::-webkit-scrollbar-thumb{background:#555}.dark-mode ::-webkit-scrollbar-thumb:hover{background:#777}@media print{.sql-simulator{box-shadow:none;margin:0;padding:20px}.toolbar,.query-actions,.modal-overlay,.notification{display:none!important}.tab-content{padding:0}}.er-diagram-wrapper .er-diagram-container{display:flex;flex-direction:column;width:100%;height:100%;min-height:600px;border:1px solid #ddd;border-radius:8px;overflow:hidden;font-family:Segoe UI,Arial,sans-serif;position:relative;box-shadow:0 2px 10px #0000000d;background-color:#fff}.er-diagram-wrapper .er-toolbar{display:flex;padding:10px;background-color:#fff;border-bottom:1px solid #e1e4e8;gap:10px;align-items:center;flex-wrap:wrap}.er-diagram-wrapper .tool-group{display:flex;flex-direction:row;gap:5px;border:1px solid #e0e0e0;border-radius:6px;padding:4px;background-color:#fff}.er-diagram-wrapper .tool-button{padding:6px 10px;background-color:#fff;border:1px solid transparent;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s ease;display:flex;align-items:center;white-space:nowrap;color:#444}.er-diagram-wrapper .tool-button:hover{background-color:#f0f0f0}.er-diagram-wrapper .tool-button.active{background-color:#2196f3;color:#fff}.er-diagram-wrapper .tool-button:disabled{opacity:.5;cursor:not-allowed}.er-diagram-wrapper .tool-icon{margin-right:6px;font-size:16px}.er-diagram-wrapper .tool-button.delete,.er-diagram-wrapper .tool-button.clear-all{background-color:#fff;color:#e74c3c}.er-diagram-wrapper .tool-button.delete:hover,.er-diagram-wrapper .tool-button.clear-all:hover{background-color:#fff5f5}.er-diagram-wrapper .right-controls{margin-left:auto}.er-diagram-wrapper .zoom-controls{display:flex;align-items:center;gap:2px}.er-diagram-wrapper .zoom-level{font-size:14px;width:50px;text-align:center}.er-diagram-wrapper .zoom-button{padding:4px 8px;background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center}.er-diagram-wrapper .zoom-button:hover{background-color:#f0f0f0}.er-diagram-wrapper .line-options{display:flex;gap:10px;align-items:center}.er-diagram-wrapper .relationship-select,.er-diagram-wrapper .line-style-select,.er-diagram-wrapper .context-menu-select{padding:5px 8px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px;cursor:pointer}.er-diagram-wrapper .context-menu-select{margin-left:5px;width:120px}.er-diagram-wrapper .relationship-select:focus,.er-diagram-wrapper .line-style-select:focus,.er-diagram-wrapper .context-menu-select:focus{outline:none;border-color:#2196f3}.er-diagram-wrapper .canvas-container{flex:1;position:relative;background-color:#fff;overflow:hidden}.er-diagram-wrapper canvas{display:block;cursor:crosshair}.er-diagram-wrapper .text-input-container{position:absolute;transform:translate(-50%,-50%);z-index:100}.er-diagram-wrapper .shape-text-editor{padding:8px 12px;border:2px solid #007bff;border-radius:6px;font-size:14px;text-align:center;min-width:120px;min-height:70px;resize:both;box-shadow:0 3px 10px #00000026;background-color:#fff;font-family:Segoe UI,Arial,sans-serif}.er-diagram-wrapper .shape-text-editor:focus{outline:none;border-color:#0056b3}.er-diagram-wrapper .status-bar{padding:8px 16px;background-color:#f8f9fa;border-top:1px solid #e9ecef;font-size:13px;color:#6c757d;height:36px;display:flex;justify-content:space-between;align-items:center}.er-diagram-wrapper .status-left{width:25%;text-align:left;font-weight:500}.er-diagram-wrapper .status-center{width:50%;text-align:center;color:#495057}.er-diagram-wrapper .status-right{width:25%;text-align:right;font-weight:500}.er-diagram-wrapper .context-menu{position:absolute;background-color:#fff;border:1px solid #e9ecef;border-radius:6px;box-shadow:0 3px 15px #00000026;z-index:100;min-width:220px;padding:5px 0;overflow:hidden}.er-diagram-wrapper .context-menu-item{padding:8px 16px;cursor:pointer;font-size:14px;color:#495057;display:flex;align-items:center;transition:background-color .2s}.er-diagram-wrapper .context-menu-item:hover{background-color:#f8f9fa;color:#212529}.er-diagram-wrapper .context-menu-icon{margin-right:10px;font-size:16px}.er-diagram-wrapper .context-menu-separator{height:1px;background-color:#e9ecef;margin:5px 0}.er-diagram-wrapper .tooltip{position:absolute;background-color:#212529e6;color:#fff;padding:6px 12px;border-radius:4px;font-size:13px;z-index:1000;pointer-events:none;max-width:250px;box-shadow:0 2px 8px #0003}.er-diagram-wrapper .dropdown-container{position:relative;display:inline-block}.er-diagram-wrapper .dropdown-menu{position:absolute;top:100%;right:0;margin-top:5px;background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:200;min-width:180px;padding:5px 0}.er-diagram-wrapper .dropdown-item{padding:8px 12px;cursor:pointer;font-size:14px;display:flex;align-items:center;color:#444;transition:background-color .2s}.er-diagram-wrapper .dropdown-item:hover{background-color:#f0f0f0}.er-diagram-wrapper .dropdown-icon{margin-right:8px;font-size:16px}.er-diagram-wrapper .export-dropdown{position:absolute!important;top:calc(100% + 5px)!important;right:0!important;background-color:#fff!important;border:1px solid #ddd!important;border-radius:6px!important;box-shadow:0 4px 12px #0003!important;z-index:1000!important;min-width:180px!important;padding:8px 0!important;display:block!important;opacity:1!important;visibility:visible!important}.er-diagram-wrapper .export-item{padding:12px 16px!important;cursor:pointer!important;font-size:14px!important;font-weight:500!important;display:flex!important;align-items:center!important;color:#333!important;background-color:transparent!important;border:none!important;width:100%!important;text-align:left!important;transition:all .2s ease!important;line-height:1.4!important}.er-diagram-wrapper .export-item:hover{background-color:#f0f8ff!important;color:#2196f3!important}.er-diagram-wrapper .export-icon{margin-right:8px!important;font-size:16px!important;display:inline-block!important}.er-diagram-wrapper .modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.er-diagram-wrapper .modal-content{background-color:#fff;border-radius:8px;width:700px;max-width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 5px 25px #0003}.er-diagram-wrapper .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e9ecef;background-color:#fff;border-radius:8px 8px 0 0}.er-diagram-wrapper .modal-title{margin:0;font-size:20px;color:#343a40;font-weight:600}.er-diagram-wrapper .modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#6c757d;transition:color .2s;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;width:30px;height:30px}.er-diagram-wrapper .modal-close:hover{color:#343a40}.er-diagram-wrapper .modal-body{padding:24px;line-height:1.5}.er-diagram-wrapper .modal-footer{padding:16px 24px;border-top:1px solid #e9ecef;display:flex;justify-content:flex-end}.er-diagram-wrapper .modal-button{padding:8px 20px;background-color:#007bff;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.er-diagram-wrapper .modal-button:hover{background-color:#0069d9;transform:translateY(-1px);box-shadow:0 2px 5px #0000001a}.er-diagram-wrapper .tutorial-content h3{margin-top:0;color:#007bff;font-size:20px;font-weight:600;margin-bottom:16px}.er-diagram-wrapper .tutorial-content h4{margin-top:24px;margin-bottom:12px;color:#495057;font-size:18px;font-weight:600}.er-diagram-wrapper .tutorial-content ul{padding-left:20px;margin-bottom:16px}.er-diagram-wrapper .tutorial-content li{margin-bottom:8px;color:#495057}.er-diagram-wrapper .tutorial-content p{margin-bottom:16px;line-height:1.6;color:#495057}.er-diagram-wrapper .tutorial-content strong{color:#343a40;font-weight:600}.er-diagram-wrapper .tutorial-tip{margin-top:24px;padding:12px 16px;background-color:#e7f5ff;border-left:4px solid #339af0;border-radius:4px;color:#1971c2;font-weight:500}.er-diagram-wrapper .tool-button{transition:all .2s ease}.er-diagram-wrapper .tool-button:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.er-diagram-wrapper .tool-button:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}.er-diagram-wrapper .zoom-button:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.er-diagram-wrapper .tool-button.active{background-color:#2196f3;color:#fff;box-shadow:0 2px 4px #2196f34d}@media (max-width: 768px){.er-diagram-wrapper .er-toolbar{flex-direction:column;align-items:stretch;padding:8px;gap:8px}.er-diagram-wrapper .tool-group{margin-bottom:5px;flex-wrap:wrap}.er-diagram-wrapper .right-controls{margin-left:0;flex-direction:row;justify-content:space-between;width:100%}.er-diagram-wrapper .zoom-controls{flex-wrap:wrap;gap:5px}.er-diagram-wrapper .status-bar{flex-direction:column;height:auto;padding:8px;gap:4px}.er-diagram-wrapper .status-left,.er-diagram-wrapper .status-center,.er-diagram-wrapper .status-right{width:100%;text-align:left;margin-bottom:2px}.er-diagram-wrapper .modal-content{width:95%;margin:10px}.er-diagram-wrapper .modal-body{padding:16px}.er-diagram-wrapper .tool-button{font-size:12px;padding:4px 8px}.er-diagram-wrapper .tool-icon{font-size:14px;margin-right:4px}}@media (max-width: 480px){.er-diagram-wrapper .er-diagram-container{min-height:400px}.er-diagram-wrapper .tool-group{flex-direction:column;align-items:stretch}.er-diagram-wrapper .tool-button{justify-content:center;margin-bottom:2px}.er-diagram-wrapper .line-options{flex-direction:column;gap:5px}.er-diagram-wrapper .relationship-select,.er-diagram-wrapper .line-style-select{width:100%}.er-diagram-wrapper .context-menu{min-width:180px;font-size:12px}.er-diagram-wrapper .context-menu-item{padding:6px 12px}.er-diagram-wrapper .shape-text-editor{min-width:100px;min-height:50px;font-size:12px}}.er-diagram-wrapper .tool-button:focus{outline:2px solid #2196f3;outline-offset:2px}.er-diagram-wrapper .zoom-button:focus{outline:2px solid #2196f3;outline-offset:2px}.er-diagram-wrapper .modal-close:focus{outline:2px solid #007bff;outline-offset:2px}.er-diagram-wrapper .shape-text-editor:focus{border-color:#0056b3;box-shadow:0 0 0 3px #007bff40}@media (prefers-color-scheme: dark){.er-diagram-wrapper .er-diagram-container{background-color:#1a1a1a;border-color:#333;color:#e0e0e0}.er-diagram-wrapper .er-toolbar{background-color:#fff;border-bottom-color:#e1e4e8}.er-diagram-wrapper .tool-group{background-color:#fff;border-color:#e0e0e0}.er-diagram-wrapper .tool-button{background-color:#fff;color:#444}.er-diagram-wrapper .tool-button:hover{background-color:#f0f0f0}.er-diagram-wrapper .status-bar{background-color:#2d2d2d;border-top-color:#333;color:#b0b0b0}.er-diagram-wrapper .context-menu{background-color:#2d2d2d;border-color:#444}.er-diagram-wrapper .context-menu-item{color:#e0e0e0}.er-diagram-wrapper .context-menu-item:hover{background-color:#3d3d3d}.er-diagram-wrapper .modal-content{background-color:#2d2d2d;color:#e0e0e0}.er-diagram-wrapper .modal-header{background-color:#fff;border-bottom-color:#e9ecef;color:#343a40}.er-diagram-wrapper .modal-title{color:#343a40}.er-diagram-wrapper .modal-close{color:#6c757d}.er-diagram-wrapper .modal-footer{border-top-color:#444}}@media print{.er-diagram-wrapper .er-toolbar,.er-diagram-wrapper .status-bar,.er-diagram-wrapper .context-menu,.er-diagram-wrapper .tooltip,.er-diagram-wrapper .modal-backdrop{display:none!important}.er-diagram-wrapper .er-diagram-container{border:none;box-shadow:none;height:auto;min-height:auto}.er-diagram-wrapper .canvas-container{overflow:visible}}.QueryBuilderComponent{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;max-width:1400px;margin:0 auto;padding:20px;color:#333}.QueryBuilderComponent .query-builder-container{font-family:inherit;max-width:inherit;margin:inherit;padding:inherit;color:inherit}.QueryBuilderComponent .sticky-header{position:sticky;top:0;z-index:100;background-color:#fff;padding:15px;border-radius:0 0 12px 12px;box-shadow:0 4px 15px #0000001a;margin:0 -15px 20px}.QueryBuilderComponent .exercise-title{display:flex;justify-content:space-between;align-items:center}.QueryBuilderComponent .exercise-title h2{font-size:1.8rem;color:#2c3e50;margin:0}.QueryBuilderComponent .timer-and-mode{display:flex;align-items:center;gap:15px}.QueryBuilderComponent .tutorial-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 16px;border-radius:8px;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .3s ease;display:flex;align-items:center;gap:6px;box-shadow:0 4px 15px #667eea4d}.QueryBuilderComponent .tutorial-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66;background:linear-gradient(135deg,#5a67d8,#6b46c1)}.QueryBuilderComponent .timer{display:flex;align-items:center;background-color:#e8f5e9;padding:8px 15px;border-radius:20px;font-weight:700;font-size:1.2rem;color:#2e7d32;transition:all .3s ease}.QueryBuilderComponent .timer-warning{background-color:#ffebee;color:#c62828;animation:pulse 1s infinite}.QueryBuilderComponent .timer-icon{margin-right:8px}.QueryBuilderComponent .learn-mode-toggle{display:flex;align-items:center;gap:8px}.QueryBuilderComponent .switch{position:relative;display:inline-block;width:50px;height:24px}.QueryBuilderComponent .switch input{opacity:0;width:0;height:0}.QueryBuilderComponent .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s}.QueryBuilderComponent .slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;transition:.4s}.QueryBuilderComponent input:checked+.slider{background-color:#2196f3}.QueryBuilderComponent input:focus+.slider{box-shadow:0 0 1px #2196f3}.QueryBuilderComponent input:checked+.slider:before{transform:translate(26px)}.QueryBuilderComponent .slider.round{border-radius:34px}.QueryBuilderComponent .slider.round:before{border-radius:50%}.QueryBuilderComponent .mode-label{font-size:.9rem;color:#666;font-weight:500}.QueryBuilderComponent .tutorial-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.QueryBuilderComponent .tutorial-modal{background:#fff;border-radius:16px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.QueryBuilderComponent .tutorial-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-bottom:2px solid #f0f0f0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px 16px 0 0}.QueryBuilderComponent .tutorial-header h2{margin:0;font-size:1.8rem;font-weight:700}.QueryBuilderComponent .tutorial-close{background:#fff3;border:none;color:#fff;font-size:1.5rem;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.QueryBuilderComponent .tutorial-close:hover{background:#ffffff4d;transform:rotate(90deg)}.QueryBuilderComponent .tutorial-content{padding:30px;line-height:1.6}.QueryBuilderComponent .tutorial-section{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid #f0f0f0}.QueryBuilderComponent .tutorial-section:last-child{border-bottom:none;margin-bottom:0}.QueryBuilderComponent .tutorial-section h3{color:#2c3e50;font-size:1.3rem;margin-bottom:15px;display:flex;align-items:center;gap:8px;font-weight:600}.QueryBuilderComponent .tutorial-section p{color:#555;margin-bottom:15px;font-size:1rem}.QueryBuilderComponent .tutorial-section ul{color:#666;padding-left:20px}.QueryBuilderComponent .tutorial-section li{margin-bottom:8px;line-height:1.5}.QueryBuilderComponent .tutorial-section li strong{color:#2c3e50;font-weight:600}.QueryBuilderComponent .tutorial-footer{padding:20px 30px;border-top:2px solid #f0f0f0;background-color:#f8f9fa;border-radius:0 0 16px 16px;text-align:center}.QueryBuilderComponent .tutorial-got-it{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;border:none;padding:15px 30px;border-radius:25px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #4facfe4d}.QueryBuilderComponent .tutorial-got-it:hover{transform:translateY(-2px);box-shadow:0 12px 35px #4facfe66;background:linear-gradient(135deg,#3b9ae1,#00d4fd)}.QueryBuilderComponent .exercise-layout{display:grid;grid-template-columns:380px 1fr;gap:20px;margin-bottom:30px}.QueryBuilderComponent .left-panel,.QueryBuilderComponent .right-panel{display:flex;flex-direction:column;gap:20px}.QueryBuilderComponent .problem-section,.QueryBuilderComponent .schema-section,.QueryBuilderComponent .hints-section{background-color:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 15px #0000000d}.QueryBuilderComponent .problem-section h3,.QueryBuilderComponent .schema-section h3,.QueryBuilderComponent .hints-section h3,.QueryBuilderComponent .editor-section h3,.QueryBuilderComponent .results-section h3{margin-top:0;font-size:1.3rem;color:#2c3e50;margin-bottom:15px}.QueryBuilderComponent .problem-description{line-height:1.6;margin-bottom:15px}.QueryBuilderComponent .problem-requirement{background-color:#f8f9fa;padding:15px;border-left:4px solid #3498db;border-radius:4px;margin-top:15px}.QueryBuilderComponent .schema-header,.QueryBuilderComponent .table-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .2s ease}.QueryBuilderComponent .schema-header:hover,.QueryBuilderComponent .table-header:hover{color:#3498db}.QueryBuilderComponent .schema-table{margin-bottom:12px;border-radius:6px;overflow:hidden;border:1px solid #e0e0e0}.QueryBuilderComponent .table-header{background-color:#f5f5f5;padding:10px 15px;font-weight:600}.QueryBuilderComponent .table-columns{padding:8px 15px;background-color:#fff}.QueryBuilderComponent .column-row{display:flex;align-items:center;padding:6px 0;border-bottom:1px solid #f0f0f0}.QueryBuilderComponent .column-row:last-child{border-bottom:none}.QueryBuilderComponent .column-name{font-weight:500;margin-right:10px;flex:1}.QueryBuilderComponent .column-type{color:#7f8c8d;margin-right:10px;flex:1}.QueryBuilderComponent .column-pk,.QueryBuilderComponent .column-fk{font-size:.75rem;padding:2px 6px;border-radius:4px;font-weight:500}.QueryBuilderComponent .column-pk{background-color:#e3f2fd;color:#1976d2}.QueryBuilderComponent .column-fk{background-color:#f3e5f5;color:#7b1fa2}.QueryBuilderComponent .hints-section{order:-1;border-left:4px solid #ffc107}.QueryBuilderComponent .active-hints{margin-bottom:15px}.QueryBuilderComponent .hint-box{background-color:#fffde7;padding:12px 15px;border-radius:6px;margin-bottom:12px;border:1px solid #ffecb3}.QueryBuilderComponent .hint-number{font-weight:600;color:#f57f17;margin-bottom:5px;font-size:.9rem}.QueryBuilderComponent .hint-actions{display:flex;gap:10px;flex-wrap:wrap}.QueryBuilderComponent .hint-button{background-color:#f5f5f5;color:#333;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.QueryBuilderComponent .hint-button:hover{background-color:#e0e0e0;transform:translateY(-2px)}.QueryBuilderComponent .hint-button.primary{background-color:#ffc107;color:#fff;padding:10px 16px;font-weight:600}.QueryBuilderComponent .hint-button.primary:hover{background-color:#ffb300}.QueryBuilderComponent .hint-button.secondary{background-color:#f5f5f5;color:#757575}.QueryBuilderComponent .solution-button{background-color:#ff9800;color:#fff;border:none;padding:10px 16px;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s ease;margin-top:15px;width:100%}.QueryBuilderComponent .solution-button:hover{background-color:#f57c00;transform:translateY(-2px)}.QueryBuilderComponent .editor-section,.QueryBuilderComponent .results-section{background-color:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 15px #0000000d}.QueryBuilderComponent .editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.QueryBuilderComponent .correctness-indicator{display:flex;align-items:center;gap:10px}.QueryBuilderComponent .correctness-bar{height:8px;width:100px;background-color:#e0e0e0;border-radius:4px;overflow:hidden}.QueryBuilderComponent .correctness-fill{height:100%;background:linear-gradient(to right,#f44336,#ffeb3b,#4caf50);transition:width .3s ease}.QueryBuilderComponent .correctness-text{font-size:.85rem;color:#666;font-weight:500}.QueryBuilderComponent .editor-container{display:flex;flex-direction:column;gap:15px}.QueryBuilderComponent .code-editor{border-radius:8px;overflow:hidden;border:1px solid #e0e0e0}.QueryBuilderComponent .editor-actions{display:flex;gap:10px;flex-wrap:wrap}.QueryBuilderComponent .run-button,.QueryBuilderComponent .submit-button,.QueryBuilderComponent .next-button{padding:12px 20px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1}.QueryBuilderComponent .run-button{background-color:#3498db;color:#fff}.QueryBuilderComponent .run-button:hover{background-color:#2980b9;transform:translateY(-2px)}.QueryBuilderComponent .submit-button{background-color:#2ecc71;color:#fff}.QueryBuilderComponent .submit-button:hover{background-color:#27ae60;transform:translateY(-2px)}.QueryBuilderComponent .submit-button.success{background-color:#27ae60;animation:successPulse 1.5s infinite}.QueryBuilderComponent .next-button{background-color:#9c27b0;color:#fff}.QueryBuilderComponent .next-button:hover{background-color:#7b1fa2;transform:translateY(-2px)}@keyframes successPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.QueryBuilderComponent .error-message{background-color:#ffebee;color:#c62828;padding:12px 15px;border-radius:6px;font-size:.95rem;border-left:4px solid #f44336}.QueryBuilderComponent .solution-message{background-color:#e8f5e9;color:#2e7d32;padding:12px 15px;border-radius:6px;font-size:.95rem;border-left:4px solid #4caf50;margin-top:15px}.QueryBuilderComponent .results-container{background-color:#f8f9fa;border-radius:8px;min-height:200px}.QueryBuilderComponent .results-count{padding:10px 15px;background-color:#e3f2fd;border-radius:8px 8px 0 0;font-weight:500;color:#1976d2}.QueryBuilderComponent .results-table table{width:100%;border-collapse:collapse}.QueryBuilderComponent .results-table th{background-color:#f5f5f5;padding:12px 15px;text-align:left;font-weight:600;color:#2c3e50;border-bottom:2px solid #e0e0e0}.QueryBuilderComponent .results-table td{padding:10px 15px;border-bottom:1px solid #e0e0e0}.QueryBuilderComponent .results-table tr:nth-child(2n){background-color:#f9f9f9}.QueryBuilderComponent .results-table tr:hover{background-color:#f1f1f1}.QueryBuilderComponent .results-message{padding:15px;font-weight:500}.QueryBuilderComponent .affected-rows{display:block;margin-top:8px;font-size:.9rem;color:#7f8c8d}.QueryBuilderComponent .no-results,.QueryBuilderComponent .empty-result{padding:15px;color:#7f8c8d;text-align:center;font-style:italic}.QueryBuilderComponent .action-buttons{display:flex;justify-content:center;margin-top:20px}.QueryBuilderComponent .back-button{padding:12px 25px;background-color:#e0e0e0;color:#616161;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;font-weight:500}.QueryBuilderComponent .back-button:hover{background-color:#d5d5d5;transform:translateY(-2px)}.QueryBuilderComponent .loading{display:flex;justify-content:center;align-items:center;height:300px;font-size:1.2rem;color:#666}@media (max-width: 768px){.QueryBuilderComponent .tutorial-modal{margin:10px;max-height:95vh}.QueryBuilderComponent .tutorial-header{padding:20px}.QueryBuilderComponent .tutorial-header h2{font-size:1.5rem}.QueryBuilderComponent .tutorial-content{padding:20px}.QueryBuilderComponent .tutorial-section h3{font-size:1.2rem}.QueryBuilderComponent .tutorial-footer{padding:15px 20px}}@media (max-width: 1024px){.QueryBuilderComponent .exercise-layout{grid-template-columns:1fr}.QueryBuilderComponent .left-panel{order:1}.QueryBuilderComponent .right-panel,.QueryBuilderComponent .hints-section{order:0}}@media (max-width: 768px){.QueryBuilderComponent{padding:15px}.QueryBuilderComponent .exercise-title{flex-direction:column;align-items:flex-start;gap:10px}.QueryBuilderComponent .timer-and-mode{width:100%;justify-content:space-between;flex-wrap:wrap;gap:10px}.QueryBuilderComponent .editor-actions{flex-direction:column}.QueryBuilderComponent .run-button,.QueryBuilderComponent .submit-button,.QueryBuilderComponent .next-button{width:100%}.QueryBuilderComponent .results-table{overflow-x:auto}}.QueryResultComponent{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;max-width:900px;margin:0 auto;padding:30px;color:#333}.QueryResultComponent .query-result-container{font-family:inherit;max-width:inherit;margin:inherit;padding:inherit;color:inherit}.QueryResultComponent .result-header{text-align:center;margin-bottom:30px}.QueryResultComponent .result-header h2{font-size:2.2rem;color:#2c3e50;margin-bottom:5px}.QueryResultComponent .exercise-title{font-size:1.3rem;color:#5d6d7e}.QueryResultComponent .result-content{display:flex;flex-direction:column;gap:30px}.QueryResultComponent .score-card{background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000000d;opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.QueryResultComponent .score-card.show{opacity:1;transform:translateY(0)}.QueryResultComponent .score-header{background-color:#f5f5f5;padding:15px 20px;border-bottom:1px solid #e0e0e0}.QueryResultComponent .score-header h3{margin:0;color:#2c3e50;font-size:1.3rem}.QueryResultComponent .score-display{padding:25px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:25px}.QueryResultComponent .score-circle{width:130px;height:130px;border-radius:50%;background:conic-gradient(#4caf50,#4caf50 calc(var(--score) * 1%),#f5f5f5 calc(var(--score) * 1%),#f5f5f5);display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 0 15px #0000001a;position:relative}.QueryResultComponent .score-circle:before{content:"";position:absolute;width:105px;height:105px;border-radius:50%;background-color:#fff}.QueryResultComponent .score-value{font-size:2.5rem;font-weight:700;color:#2c3e50;position:relative;z-index:1}.QueryResultComponent .score-max{font-size:1rem;color:#7f8c8d;position:relative;z-index:1}.QueryResultComponent .score-grade{display:flex;flex-direction:column;align-items:center;justify-content:center}.QueryResultComponent .grade{font-size:3rem;font-weight:700;color:#2c3e50;margin-bottom:5px}.QueryResultComponent .feedback-list{padding:0 25px 25px}.QueryResultComponent .feedback-item{display:flex;align-items:center;padding:15px;border-radius:8px;margin-bottom:15px;background-color:#f9f9f9;opacity:0;transform:translate(-20px);transition:opacity .5s ease,transform .5s ease}.QueryResultComponent .feedback-item.show{opacity:1;transform:translate(0)}.QueryResultComponent .feedback-icon{font-size:1.5rem;margin-right:15px;width:30px;text-align:center}.QueryResultComponent .feedback-details{flex:1}.QueryResultComponent .feedback-label{display:block;font-weight:600;margin-bottom:4px;color:#2c3e50}.QueryResultComponent .feedback-value{color:#2c3e50;font-size:1rem;font-weight:500}.QueryResultComponent .feedback-description{display:block;color:#7f8c8d;font-size:.9rem;margin-top:5px}.QueryResultComponent .feedback-points{font-weight:700;padding:5px 10px;border-radius:20px;font-size:.9rem;min-width:50px;text-align:center}.QueryResultComponent .feedback-points.positive{background-color:#e8f5e9;color:#2e7d32}.QueryResultComponent .feedback-points.negative{background-color:#ffebee;color:#c62828}.QueryResultComponent .feedback-points.neutral{background-color:#f5f5f5;color:#616161}.QueryResultComponent .solution-card{background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000000d}.QueryResultComponent .solution-header{background-color:#f5f5f5;padding:15px 20px;border-bottom:1px solid #e0e0e0}.QueryResultComponent .solution-header h3{margin:0;color:#2c3e50;font-size:1.3rem}.QueryResultComponent .solution-content{padding:20px}.QueryResultComponent .user-query,.QueryResultComponent .model-query{background-color:#f8f9fa;padding:15px;border-radius:8px;overflow-x:auto;font-family:Consolas,monospace;line-height:1.5;font-size:.95rem;color:#333;margin:0;white-space:pre-wrap;border-left:4px solid #3498db}.QueryResultComponent .model-solution-header{padding:20px 20px 10px;border-top:1px solid #e0e0e0}.QueryResultComponent .model-solution-header h4{margin:0 0 5px;color:#2c3e50}.QueryResultComponent .solution-note{color:#7f8c8d;font-size:.9rem;margin:0 0 10px;font-style:italic}.QueryResultComponent .model-query{margin:0 20px 20px;border-left-color:#27ae60}.QueryResultComponent .exercise-summary{background-color:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 15px #0000000d}.QueryResultComponent .exercise-summary h3{margin-top:0;color:#2c3e50;font-size:1.3rem;margin-bottom:15px}.QueryResultComponent .summary-details{display:flex;flex-direction:column;gap:15px}.QueryResultComponent .summary-item{display:flex;flex-direction:column}.QueryResultComponent .summary-label{font-weight:600;color:#2c3e50;margin-bottom:5px}.QueryResultComponent .summary-value{color:#5d6d7e;line-height:1.5}.QueryResultComponent .concept-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}.QueryResultComponent .concept-tag{background-color:#e3f2fd;color:#1976d2;padding:5px 10px;border-radius:20px;font-size:.85rem;font-weight:500}.QueryResultComponent .learning-resources{background-color:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 15px #0000000d}.QueryResultComponent .learning-resources h3{margin-top:0;color:#2c3e50;font-size:1.3rem;margin-bottom:15px}.QueryResultComponent .resources-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:15px}.QueryResultComponent .resource-item{display:flex;background-color:#f8f9fa;border-radius:8px;padding:15px}.QueryResultComponent .resource-icon{font-size:1.8rem;margin-right:15px;color:#3498db}.QueryResultComponent .resource-content{flex:1}.QueryResultComponent .resource-title{margin:0 0 5px;font-size:1.1rem;color:#2c3e50}.QueryResultComponent .resource-description{color:#5d6d7e;font-size:.95rem;margin:0 0 10px}.QueryResultComponent .resource-link{display:inline-block;color:#3498db;text-decoration:none;font-weight:500;font-size:.9rem;padding:5px 0}.QueryResultComponent .resource-link:hover{text-decoration:underline}.QueryResultComponent .no-resources{color:#7f8c8d;font-style:italic}.QueryResultComponent .action-buttons{display:flex;justify-content:center;gap:15px;margin-top:30px}.QueryResultComponent .try-again-button,.QueryResultComponent .next-exercise-button,.QueryResultComponent .home-button{padding:12px 25px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem}.QueryResultComponent .try-again-button{background-color:#f5f5f5;color:#5d6d7e}.QueryResultComponent .try-again-button:hover{background-color:#e0e0e0;transform:translateY(-2px)}.QueryResultComponent .next-exercise-button{background-color:#3498db;color:#fff}.QueryResultComponent .next-exercise-button:hover{background-color:#2980b9;transform:translateY(-2px)}.QueryResultComponent .home-button{background-color:#e0e0e0;color:#616161}.QueryResultComponent .home-button:hover{background-color:#d5d5d5;transform:translateY(-2px)}.QueryResultComponent .loading{display:flex;justify-content:center;align-items:center;height:300px;font-size:1.2rem;color:#666}@media (max-width: 768px){.QueryResultComponent{padding:20px 15px}.QueryResultComponent .result-header h2{font-size:1.8rem}.QueryResultComponent .action-buttons{flex-direction:column;align-items:center}.QueryResultComponent .try-again-button,.QueryResultComponent .next-exercise-button,.QueryResultComponent .home-button{width:100%;max-width:250px}.QueryResultComponent .score-circle{width:110px;height:110px}.QueryResultComponent .score-circle:before{width:90px;height:90px}.QueryResultComponent .score-value{font-size:2rem}}.network-result-container{font-family:Poppins,sans-serif;max-width:900px;margin:0 auto;padding:30px;color:#333;background-color:#f8f9fa;min-height:100vh}.icon-trophy,.icon-check,.icon-times,.icon-clock,.icon-reset,.icon-print,.icon-home{font-size:1.2rem;margin-right:8px;vertical-align:middle}.icon-trophy{font-size:1.5rem;color:#fbbc05}.icon-check{color:#34a853}.icon-times{color:#ea4335}.icon-clock{color:#4285f4}.result-content{background-color:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a;overflow:hidden;margin-bottom:30px}.result-header{padding:25px;text-align:center;border-bottom:1px solid #e9ecef;position:relative}.result-header h1{font-size:2rem;color:#4285f4;margin:0 0 15px}.difficulty-badge{display:inline-block;padding:5px 15px;border-radius:20px;color:#fff;font-weight:600;font-size:.9rem;box-shadow:0 2px 5px #0000001a}.score-section{display:flex;padding:30px;background-color:#f8f9fa;border-bottom:1px solid #e9ecef;flex-wrap:wrap;gap:30px}.score-card{display:flex;flex-direction:column;align-items:center;padding:20px;background-color:#fff;border-radius:12px;box-shadow:0 5px 15px #0000000d;flex:1;min-width:180px}.score-circle{width:150px;height:150px;border-radius:50%;background:conic-gradient(#4285F4 0%,#4285F4 var(--scorePercentage),#f1f3f4 var(--scorePercentage),#f1f3f4 100%);display:flex;justify-content:center;align-items:center;margin-bottom:15px;box-shadow:0 5px 15px #0000001a}.score-inner{width:130px;height:130px;border-radius:50%;background-color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center}.score-value{font-size:2.5rem;font-weight:700;color:#4285f4;line-height:1}.grade-value{font-size:1.8rem;font-weight:700;color:#fbbc05;margin-top:5px}.score-label{font-size:1.2rem;font-weight:600;color:#333}.score-details{flex:2;min-width:300px}.score-details h2{font-size:1.6rem;color:#333;margin:0 0 15px;display:flex;align-items:center;gap:10px}.performance-message{font-size:1.1rem;color:#5f6368;line-height:1.6;margin-bottom:20px}.metrics{display:flex;flex-wrap:wrap;gap:20px}.metric-item{display:flex;align-items:center;gap:15px;background-color:#fff;padding:15px;border-radius:10px;flex:1;min-width:200px;box-shadow:0 2px 5px #0000000d}.metric-icon{font-size:1.8rem;color:#4285f4}.metric-content{flex:1}.metric-label{font-size:.9rem;color:#5f6368;margin-bottom:5px}.metric-value{font-size:1.2rem;font-weight:600;color:#333}.metric-note{font-size:.85rem;color:#5f6368;margin-top:5px}.feedback-section{padding:30px;border-bottom:1px solid #e9ecef}.feedback-section h2{font-size:1.6rem;color:#333;margin:0 0 20px}.feedback-list{display:flex;flex-direction:column;gap:15px}.feedback-item{display:flex;padding:15px;border-radius:10px;gap:15px;animation:fadeIn .5s}.feedback-item.correct{background-color:#34a8531a}.feedback-item.incorrect{background-color:#ea43351a}.feedback-icon{font-size:1.5rem;display:flex;align-items:center}.feedback-content{flex:1}.feedback-description{font-weight:600;margin-bottom:5px;color:#333}.feedback-match{font-size:.95rem}.feedback-match.correct{color:#34a853}.feedback-match.incorrect{color:#ea4335}.learning-tips{padding:30px}.learning-tips h2{font-size:1.6rem;color:#333;margin:0 0 20px}.tips-list{padding-left:20px}.tips-list li{margin-bottom:12px;color:#5f6368;line-height:1.6}.tips-list strong{color:#4285f4}.action-buttons{display:flex;justify-content:center;gap:15px;margin-top:30px;flex-wrap:wrap}.try-again-button,.print-button,.home-button{padding:12px 25px;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;min-width:150px;justify-content:center}.try-again-button{background-color:#fbbc05;color:#fff;box-shadow:0 4px 8px #fbbc054d}.try-again-button:hover{background-color:#f5b301;transform:translateY(-3px);box-shadow:0 6px 12px #fbbc0566}.print-button{background-color:#4285f4;color:#fff;box-shadow:0 4px 8px #4285f44d}.print-button:hover{background-color:#2b76f5;transform:translateY(-3px);box-shadow:0 6px 12px #4285f466}.home-button{background-color:#e0e0e0;color:#5f6368;box-shadow:0 4px 8px #0000001a}.home-button:hover{background-color:#d5d5d5;transform:translateY(-3px);box-shadow:0 6px 12px #00000026}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;border-radius:12px;padding:30px;width:90%;max-width:500px;box-shadow:0 10px 25px #0003;animation:fadeIn .3s}.modal-content h3{font-size:1.5rem;color:#333;margin:0 0 20px;text-align:center}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:1rem;font-weight:500;margin-bottom:8px;color:#333}.form-group input{width:100%;padding:12px;font-size:1rem;border:1px solid #ddd;border-radius:8px;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 2px #4285f433}.modal-buttons{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.cancel-button,.confirm-button{padding:12px 25px;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;flex:1}.cancel-button{background-color:#e0e0e0;color:#5f6368}.cancel-button:hover:not(:disabled){background-color:#d5d5d5}.confirm-button{background-color:#4285f4;color:#fff}.confirm-button:hover:not(:disabled){background-color:#2b76f5}.cancel-button:disabled,.confirm-button:disabled{opacity:.7;cursor:not-allowed}.user-info-pdf{margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.user-info-header{margin-bottom:10px}.user-info-header h3{font-size:1.3rem;color:#333;margin:0}.user-info-content p{margin:8px 0;font-size:1rem;color:#5f6368}@media (max-width: 768px){.network-result-container{padding:15px}.result-header h1{font-size:1.6rem}.score-section{flex-direction:column;padding:20px;gap:20px}.score-card{width:100%}.score-circle{width:120px;height:120px}.score-inner{width:100px;height:100px}.score-value{font-size:2rem}.grade-value{font-size:1.5rem}.score-details h2,.feedback-section h2,.learning-tips h2{font-size:1.4rem}.metrics{flex-direction:column}.metric-item{width:100%}.action-buttons{flex-direction:column;gap:10px}.try-again-button,.print-button,.home-button{width:100%}.modal-content{padding:20px;width:95%}}@media (max-width: 480px){.result-header h1{font-size:1.4rem}.feedback-item{flex-direction:column;gap:10px}.feedback-icon{align-self:flex-start}.score-circle{width:100px;height:100px}.score-inner{width:80px;height:80px}.score-value{font-size:1.6rem}.grade-value{font-size:1.2rem}.performance-message{font-size:1rem}}@media print{.network-result-container{padding:0;background-color:#fff}.result-content{box-shadow:none}.action-buttons{display:none}.score-card,.metric-item{box-shadow:none;border:1px solid #ddd}.score-section,.feedback-section,.learning-tips{page-break-inside:avoid}.feedback-item{break-inside:avoid}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.norm-tutorial{--primary: #1e3a8a;--primary-hover: #1e40af;--primary-light: #eff6ff;--primary-dark: #1e293b;--secondary: #4338ca;--secondary-light: #f3f4f6;--secondary-dark: #312e81;--accent: #ea580c;--accent-light: #fff7ed;--accent-hover: #c2410c;--accent-dark: #9a3412;--success: #059669;--success-light: #f0fdf4;--success-dark: #047857;--warning: #d97706;--warning-light: #fffbeb;--warning-dark: #92400e;--danger: #dc2626;--danger-light: #fef2f2;--danger-dark: #991b1b;--info: #0284c7;--info-light: #f0f9ff;--info-dark: #0369a1;--teal: #0d9488;--teal-light: #f0fdfa;--teal-dark: #0f766e;--table-header: #1e3a8a;--table-header-text: #ffffff;--table-selected: #dbeafe;--table-hover: #f8fafc;--table-redundancy: #fee2e2;--table-partial: #fef3c7;--table-transitive: #f3e8ff;--table-key: #dbeafe;--white: #ffffff;--gray-25: #fefefe;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--black: #000000;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: .375rem;--radius: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:var(--gray-900);max-width:1200px;margin:0 auto;padding:var(--space-8);background:var(--white);min-height:100vh;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:scale(.85);transform-origin:center top}.norm-tutorial *,.norm-tutorial *:before,.norm-tutorial *:after{box-sizing:border-box}.norm-tutorial .header{text-align:center;margin-bottom:var(--space-8);background:var(--white);padding:var(--space-10);border-radius:var(--radius-xl);border:2px solid var(--gray-200);box-shadow:var(--shadow-lg);position:relative}.norm-tutorial .header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:var(--radius-xl) var(--radius-xl) 0 0}.norm-tutorial .header-content{display:inline-flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;justify-content:center}.norm-tutorial .header h1{font-size:clamp(var(--text-2xl),5vw,var(--text-4xl));font-weight:800;color:var(--gray-900);margin:0;letter-spacing:-.025em}.norm-tutorial .subtitle{color:var(--gray-700);font-size:var(--text-lg);font-weight:500;max-width:600px;margin:0 auto;line-height:1.6}.norm-tutorial .how-to-use-button{display:flex;justify-content:center;margin-bottom:var(--space-8);animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}.norm-tutorial .tutorial-button{display:flex;align-items:center;gap:var(--space-3);background:linear-gradient(135deg,var(--primary),var(--accent));color:var(--white);border:none;padding:var(--space-4) var(--space-8);border-radius:var(--radius-xl);font-size:var(--text-lg);font-weight:800;cursor:pointer;box-shadow:var(--shadow-lg);transition:all .3s var(--ease-out);position:relative;overflow:hidden;letter-spacing:-.025em}.norm-tutorial .tutorial-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .8s ease}.norm-tutorial .tutorial-button:hover:before{left:100%}.norm-tutorial .tutorial-button:hover{transform:translateY(-3px) scale(1.05);box-shadow:var(--shadow-xl)}.norm-tutorial .tutorial-button:active{transform:translateY(-1px) scale(1.02)}.norm-tutorial .tutorial-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease-out}.norm-tutorial .tutorial-modal{background:var(--white);border-radius:var(--radius-2xl);max-width:800px;max-height:90vh;overflow:auto;position:relative;border:3px solid var(--primary);box-shadow:var(--shadow-xl);animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.norm-tutorial .tutorial-header{background:linear-gradient(90deg,var(--primary),var(--accent));color:var(--white);padding:var(--space-6);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;position:relative}.norm-tutorial .tutorial-close{position:absolute;top:var(--space-4);right:var(--space-4);background:#fff3;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--white);font-size:var(--text-lg);transition:all .2s ease}.norm-tutorial .tutorial-close:hover{background:#ffffff4d;transform:scale(1.1)}.norm-tutorial .tutorial-content{padding:var(--space-8)}.norm-tutorial .tutorial-step{margin-bottom:var(--space-8);padding:var(--space-6);border:2px solid var(--gray-200);border-radius:var(--radius-xl);background:var(--gray-50);transition:all .3s var(--ease-out)}.norm-tutorial .tutorial-step:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--primary)}.norm-tutorial .tutorial-step:last-child{margin-bottom:0}.norm-tutorial .tutorial-step-header{display:flex;align-items:flex-start;gap:var(--space-5);margin-bottom:var(--space-4)}.norm-tutorial .tutorial-step-icon{color:var(--primary);background:var(--primary-light);padding:var(--space-3);border-radius:var(--radius-lg);border:2px solid var(--primary);flex-shrink:0}.norm-tutorial .tutorial-step-title{margin:0 0 var(--space-2) 0;font-size:var(--text-xl);font-weight:800;color:var(--gray-900);letter-spacing:-.025em}.norm-tutorial .tutorial-step-description{margin:0;color:var(--gray-700);font-size:var(--text-base);line-height:1.6;font-weight:600}.norm-tutorial .tutorial-tips{background:var(--white);padding:var(--space-4);border-radius:var(--radius-lg);border:2px solid var(--primary);margin-top:var(--space-4)}.norm-tutorial .tutorial-tips-header{margin:0 0 var(--space-3) 0;font-size:var(--text-base);font-weight:800;color:var(--primary);display:flex;align-items:center;gap:var(--space-2)}.norm-tutorial .tutorial-tips ul{margin:0;padding-left:var(--space-5)}.norm-tutorial .tutorial-tips li{margin-bottom:var(--space-2);color:var(--gray-800);font-size:var(--text-sm);line-height:1.5;font-weight:600}.norm-tutorial .tutorial-tips li:last-child{margin-bottom:0}.norm-tutorial .tutorial-cta{background:linear-gradient(135deg,var(--success),var(--teal));color:var(--white);padding:var(--space-6);border-radius:var(--radius-xl);text-align:center;margin-top:var(--space-8)}.norm-tutorial .tutorial-cta-title{margin:0 0 var(--space-2) 0;font-size:var(--text-2xl);font-weight:800;letter-spacing:-.025em}.norm-tutorial .tutorial-cta-description{margin:0 0 var(--space-5) 0;font-size:var(--text-base);opacity:.9;line-height:1.6}.norm-tutorial .tutorial-cta-button{background:var(--white);color:var(--success);border:none;padding:var(--space-3) var(--space-8);border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:800;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow)}.norm-tutorial .tutorial-cta-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.norm-tutorial .progress-container{margin-bottom:var(--space-8);background:var(--white);border-radius:var(--radius-lg);padding:var(--space-6);border:2px solid var(--gray-200);box-shadow:var(--shadow)}.norm-tutorial .progress-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);flex-wrap:wrap;gap:var(--space-2)}.norm-tutorial .progress-label,.norm-tutorial .progress-count{font-size:var(--text-sm);font-weight:700;color:var(--gray-900)}.norm-tutorial .progress-bar{width:100%;background:var(--gray-200);border-radius:var(--radius-full);height:12px;overflow:hidden;position:relative;border:1px solid var(--gray-300)}.norm-tutorial .progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:var(--radius-full);transition:width .8s var(--ease-out)}.norm-tutorial .step-nav{margin-bottom:var(--space-8)}.norm-tutorial .step-buttons{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}.norm-tutorial .step-btn{padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);border:2px solid var(--gray-400);font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:all .3s var(--ease-out);background:var(--white);color:var(--gray-900);min-width:140px;text-align:center}.norm-tutorial .step-active{background:var(--primary);color:var(--white);border-color:var(--primary);box-shadow:0 4px 15px #1e3a8a4d;transform:translateY(-2px)}.norm-tutorial .step-completed{background:var(--success);color:var(--white);border-color:var(--success);box-shadow:0 4px 15px #0596694d}.norm-tutorial .step-inactive{background:var(--gray-100);color:var(--gray-600);border-color:var(--gray-300)}.norm-tutorial .step-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--primary)}.norm-tutorial .content-card{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--space-12);margin-bottom:var(--space-8);border:2px solid var(--gray-200);position:relative}.norm-tutorial .content-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:var(--radius-xl) var(--radius-xl) 0 0}.norm-tutorial .content-title{font-size:var(--text-3xl);font-weight:800;color:var(--gray-900);margin-bottom:var(--space-6);letter-spacing:-.025em}.norm-tutorial .practice-mode{background:var(--white);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-lg);border:3px solid var(--primary);margin:var(--space-8) 0}.norm-tutorial .practice-header{margin-bottom:var(--space-8)}.norm-tutorial .practice-title{text-align:center;margin-bottom:var(--space-6)}.norm-tutorial .practice-title h3{font-size:var(--text-2xl);font-weight:800;color:var(--primary);margin-bottom:var(--space-2);letter-spacing:-.025em}.norm-tutorial .practice-title p{color:var(--gray-700);font-size:var(--text-base);font-weight:600;line-height:1.6}.norm-tutorial .practice-stats{display:flex;justify-content:center;gap:var(--space-8);flex-wrap:wrap;margin-bottom:var(--space-6)}.norm-tutorial .stat-item{display:flex;align-items:center;gap:var(--space-2);background:var(--primary-light);padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);font-size:var(--text-sm);font-weight:700;color:var(--primary);border:2px solid var(--primary)}.norm-tutorial .problem-selector{display:flex;justify-content:center;gap:var(--space-3);flex-wrap:wrap}.norm-tutorial .problem-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border:2px solid var(--gray-400);background:var(--white);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:all .3s var(--ease-out);color:var(--gray-900)}.norm-tutorial .problem-btn.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary);box-shadow:0 4px 15px #1e3a8a4d;transform:translateY(-2px)}.norm-tutorial .problem-btn.completed{border-color:var(--success);background:var(--success-light);color:var(--success);box-shadow:0 4px 15px #0596694d}.norm-tutorial .problem-btn:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--primary)}.norm-tutorial .problem-info{background:var(--primary-light);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm);border:3px solid var(--primary)}.norm-tutorial .problem-info h4{font-size:var(--text-xl);font-weight:800;color:var(--primary);margin-bottom:var(--space-2);letter-spacing:-.025em}.norm-tutorial .problem-info p{color:var(--gray-800);margin-bottom:var(--space-4);line-height:1.6;font-size:var(--text-base);font-weight:600}.norm-tutorial .task-progress{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4)}.norm-tutorial .task-indicator{font-size:var(--text-sm);font-weight:700;color:var(--primary);background:var(--white);padding:var(--space-2) var(--space-4);border-radius:var(--radius);border:2px solid var(--primary);box-shadow:var(--shadow-sm);flex:1;min-width:200px}.norm-tutorial .progress-dots{display:flex;gap:var(--space-2)}.norm-tutorial .progress-dot{width:12px;height:12px;border-radius:50%;transition:all .3s var(--ease-out);border:2px solid var(--gray-300)}.norm-tutorial .progress-dot.completed{background:var(--success);border-color:var(--success);transform:scale(1.2)}.norm-tutorial .progress-dot.active{background:var(--primary);border-color:var(--primary);transform:scale(1.4)}.norm-tutorial .progress-dot.pending{background:var(--gray-300);border-color:var(--gray-400)}.norm-tutorial .instruction-box{background:var(--white);padding:var(--space-6);border-radius:var(--radius-lg);margin-bottom:var(--space-6);border:3px solid var(--primary);box-shadow:var(--shadow)}.norm-tutorial .instruction-content{display:flex;align-items:flex-start;gap:var(--space-4)}.norm-tutorial .instruction-content h5{font-size:var(--text-lg);font-weight:800;color:var(--primary);margin-bottom:var(--space-2);letter-spacing:-.025em}.norm-tutorial .instruction-content p{color:var(--gray-800);margin:0;line-height:1.6;font-size:var(--text-base);font-weight:600}.norm-tutorial .hint-box{display:flex;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3);background:var(--warning-light);border-radius:var(--radius);border:2px solid var(--warning);box-shadow:var(--shadow-sm)}.norm-tutorial .hint-box span{font-size:var(--text-sm);color:var(--gray-900);line-height:1.5;font-weight:600}.norm-tutorial .practice-table-container{background:var(--white);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-lg);overflow-x:auto;border:3px solid var(--gray-300)}.norm-tutorial .practice-table{width:100%;border-collapse:collapse;border-radius:var(--radius-lg);overflow:hidden;min-width:700px;box-shadow:var(--shadow-sm);border:2px solid var(--gray-400)}.norm-tutorial .practice-table th,.norm-tutorial .practice-table td{padding:var(--space-4);text-align:left;border:2px solid var(--gray-300);cursor:pointer;transition:all .3s var(--ease-out);position:relative;font-weight:600;color:var(--gray-900)}.norm-tutorial .practice-table th{background:var(--table-header);color:var(--table-header-text);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;font-weight:800;-webkit-user-select:none;user-select:none}.norm-tutorial .practice-table td{font-size:var(--text-sm);background:var(--white);font-weight:600}.norm-tutorial .practice-header.selected,.norm-tutorial .practice-table .selected{background:var(--table-selected)!important;color:var(--primary)!important;font-weight:800;box-shadow:0 4px 15px #1e3a8a4d;border:3px solid var(--primary)!important;transform:scale(1.02);z-index:10}.norm-tutorial .practice-header.disabled{cursor:not-allowed;opacity:.6;filter:grayscale(50%)}.norm-tutorial .practice-table th:hover:not(.disabled){background:var(--primary-hover);transform:translateY(-2px);box-shadow:var(--shadow);z-index:5}.norm-tutorial .practice-table td:hover{background:var(--table-hover);border-color:var(--primary)}.norm-tutorial .selected-icon{position:absolute;top:var(--space-2);right:var(--space-2);color:var(--success);font-weight:800;z-index:20}.norm-tutorial .practice-controls{display:flex;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap}.norm-tutorial .practice-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-lg);font-weight:700;cursor:pointer;transition:all .3s var(--ease-out);font-size:var(--text-sm);border:2px solid transparent;min-width:140px;justify-content:center}.norm-tutorial .practice-btn.primary{background:var(--primary);color:var(--white);border-color:var(--primary)}.norm-tutorial .practice-btn.primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 8px 25px #1e3a8a66}.norm-tutorial .practice-btn.secondary{background:var(--gray-600);color:var(--white);border-color:var(--gray-600)}.norm-tutorial .practice-btn.secondary:hover:not(:disabled){background:var(--gray-700);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.norm-tutorial .practice-btn.info{background:var(--warning);color:var(--white);border-color:var(--warning)}.norm-tutorial .practice-btn.info:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 8px 25px #ea580c66}.norm-tutorial .practice-btn.warning{background:var(--info);color:var(--white);border-color:var(--info)}.norm-tutorial .practice-btn.warning:hover:not(:disabled){background:var(--info-dark);transform:translateY(-2px);box-shadow:0 8px 25px #0284c766}.norm-tutorial .practice-btn:disabled{background:var(--gray-400);color:var(--gray-600);cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.norm-tutorial .problem-completed{background:var(--success-light);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center;border:3px solid var(--success);margin-bottom:var(--space-6);box-shadow:var(--shadow)}.norm-tutorial .completion-message{margin-bottom:var(--space-6)}.norm-tutorial .completion-message h4{font-size:var(--text-2xl);font-weight:800;color:var(--success);margin-bottom:var(--space-2);letter-spacing:-.025em}.norm-tutorial .completion-message p{color:var(--gray-800);font-size:var(--text-base);line-height:1.6;font-weight:600}.norm-tutorial .completion-controls{display:flex;justify-content:center;gap:var(--space-4);flex-wrap:wrap}.norm-tutorial .all-completed{background:var(--accent-light);padding:var(--space-8);border-radius:var(--radius-xl);text-align:center;border:3px solid var(--accent);box-shadow:var(--shadow-lg)}.norm-tutorial .all-completed h4{font-size:var(--text-2xl);font-weight:800;color:var(--accent-hover);margin-bottom:var(--space-2);letter-spacing:-.025em}.norm-tutorial .all-completed p{color:var(--gray-800);font-size:var(--text-base);font-weight:600;line-height:1.6}.norm-tutorial .feedback-message{padding:var(--space-4);border-radius:var(--radius-lg);text-align:center;font-weight:700;font-size:var(--text-base);margin-top:var(--space-4);border:3px solid;box-shadow:var(--shadow)}.norm-tutorial .feedback-message.success{background:var(--success-light);color:var(--success-dark);border-color:var(--success)}.norm-tutorial .feedback-message.error{background:var(--danger-light);color:var(--danger-dark);border-color:var(--danger)}.norm-tutorial .feedback-message.info{background:var(--info-light);color:var(--info-dark);border-color:var(--info)}.norm-tutorial .visual-playground{background:var(--white);border-radius:var(--radius-2xl);padding:var(--space-8);margin:var(--space-8) 0;border:3px solid var(--primary);box-shadow:var(--shadow-xl);position:relative}.norm-tutorial .visual-playground:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.norm-tutorial .playground-header{text-align:center;margin-bottom:var(--space-8)}.norm-tutorial .playground-header h2{font-size:var(--text-3xl);font-weight:800;margin-bottom:var(--space-2);color:var(--gray-900);letter-spacing:-.025em}.norm-tutorial .playground-header p{color:var(--gray-700);font-size:var(--text-lg);max-width:600px;margin:0 auto;line-height:1.6;font-weight:600}.norm-tutorial .visual-controls{background:var(--white);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-8);box-shadow:var(--shadow);border:2px solid var(--gray-300)}.norm-tutorial .step-indicators{display:flex;justify-content:center;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap}.norm-tutorial .step-indicator{padding:var(--space-3) var(--space-4);border:2px solid var(--gray-400);background:var(--white);border-radius:var(--radius-lg);font-size:var(--text-xs);font-weight:700;cursor:pointer;transition:all .3s var(--ease-out);text-align:center;min-width:100px;color:var(--gray-900)}.norm-tutorial .step-indicator.active{border-color:var(--primary);background:var(--primary);color:var(--white);box-shadow:0 4px 15px #1e3a8a66;transform:translateY(-2px)}.norm-tutorial .step-indicator:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--primary)}.norm-tutorial .playback-controls{display:flex;justify-content:center;gap:var(--space-4);flex-wrap:wrap}.norm-tutorial .control-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-lg);font-weight:700;cursor:pointer;transition:all .3s var(--ease-out);font-size:var(--text-sm);border:2px solid transparent;min-width:120px;justify-content:center}.norm-tutorial .control-btn.primary{background:var(--primary);color:var(--white);border-color:var(--primary)}.norm-tutorial .control-btn.secondary{background:var(--gray-600);color:var(--white);border-color:var(--gray-600)}.norm-tutorial .control-btn.danger{background:var(--danger);color:var(--white);border-color:var(--danger)}.norm-tutorial .control-btn.info{background:var(--teal);color:var(--white);border-color:var(--teal)}.norm-tutorial .control-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg)}.norm-tutorial .control-btn:disabled{background:var(--gray-400);color:var(--gray-600);cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.norm-tutorial .visualization-area{margin-bottom:var(--space-8)}.norm-tutorial .visual-table-container{background:var(--white);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-xl);border:2px solid var(--gray-300);position:relative;overflow:hidden;margin-bottom:var(--space-6)}.norm-tutorial .visual-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);flex-wrap:wrap;gap:var(--space-4)}.norm-tutorial .visual-table-header h3{font-size:var(--text-2xl);font-weight:800;color:var(--gray-900);margin:0;letter-spacing:-.025em}.norm-tutorial .nf-badge{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-weight:800;font-size:var(--text-sm);color:var(--white);box-shadow:var(--shadow-sm);border:2px solid}.norm-tutorial .badge-unnormalized{background:var(--gray-600);border-color:var(--gray-700)}.norm-tutorial .badge-1nf{background:var(--warning);border-color:var(--warning-dark)}.norm-tutorial .badge-2nf{background:var(--teal);border-color:var(--teal-dark)}.norm-tutorial .badge-3nf{background:var(--success);border-color:var(--success-dark)}.norm-tutorial .table-wrapper{overflow-x:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow);border:2px solid var(--gray-400)}.norm-tutorial .visual-table{width:100%;border-collapse:collapse;border-radius:var(--radius-lg);overflow:hidden;min-width:800px;position:relative}.norm-tutorial .visual-table th,.norm-tutorial .visual-table td{padding:var(--space-4);text-align:left;border:2px solid var(--gray-300);transition:all .3s var(--ease-out);position:relative}.norm-tutorial .visual-table th{background:var(--table-header);font-weight:800;color:var(--table-header-text);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em}.norm-tutorial .visual-table td{font-size:var(--text-sm);color:var(--gray-900);background:var(--white);font-weight:600}.norm-tutorial .visual-column{transition:all .4s var(--ease-out)}.norm-tutorial .visual-column.column-moving{background:var(--warning-light)!important;color:var(--warning-dark)!important;font-weight:800;box-shadow:0 4px 15px #d9770666;transform:scale(1.02);border:3px solid var(--warning)!important}.norm-tutorial .problem-redundancy{background:var(--table-redundancy)!important;color:var(--danger-dark)!important;font-weight:800;box-shadow:0 2px 8px #dc26264d;border:3px solid var(--danger)!important}.norm-tutorial .problem-partial{background:var(--table-partial)!important;color:var(--warning-dark)!important;font-weight:800;box-shadow:0 2px 8px #d977064d;border:3px solid var(--warning)!important}.norm-tutorial .problem-transitive{background:var(--table-transitive)!important;color:var(--secondary-dark)!important;font-weight:800;box-shadow:0 2px 8px #4338ca4d;border:3px solid var(--secondary)!important}.norm-tutorial .highlight-key{background:var(--table-key)!important;color:var(--primary-dark)!important;font-weight:800;position:relative;box-shadow:0 2px 8px #1e3a8a4d;border:3px solid var(--primary)!important}.norm-tutorial .highlight-key:after{content:"⭐";position:absolute;top:var(--space-2);right:var(--space-2);font-size:var(--text-base);color:var(--primary);font-weight:800}.norm-tutorial .key-indicator{text-align:center;margin-top:var(--space-4);padding:var(--space-3);background:var(--primary-light);border-radius:var(--radius);font-size:var(--text-sm);font-weight:700;color:var(--primary);box-shadow:var(--shadow-sm);border:2px solid var(--primary)}.norm-tutorial .problems-panel{background:var(--danger-light);border-radius:var(--radius-lg);padding:var(--space-6);margin-top:var(--space-6);border:3px solid var(--danger);box-shadow:var(--shadow)}.norm-tutorial .problems-panel h4{font-size:var(--text-xl);font-weight:800;color:var(--danger);margin-bottom:var(--space-4);letter-spacing:-.025em}.norm-tutorial .problem-list{display:flex;flex-direction:column;gap:var(--space-4)}.norm-tutorial .problem-item{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius);border:2px solid;box-shadow:var(--shadow-sm);transition:all .3s var(--ease-out)}.norm-tutorial .problem-item:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.norm-tutorial .problem-item.redundancy{background:var(--table-redundancy);border-color:var(--danger)}.norm-tutorial .problem-item.partial{background:var(--table-partial);border-color:var(--warning)}.norm-tutorial .problem-item.transitive{background:var(--table-transitive);border-color:var(--secondary)}.norm-tutorial .problem-icon{font-size:var(--text-2xl);flex-shrink:0;margin-top:var(--space-1)}.norm-tutorial .problem-details{font-size:var(--text-sm);color:var(--gray-900);line-height:1.6;font-weight:600}.norm-tutorial .multiple-tables-container{background:var(--white);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-xl);border:2px solid var(--gray-300);position:relative;overflow:hidden}.norm-tutorial .tables-grid-2nf,.norm-tutorial .tables-grid-3nf{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6);margin-bottom:var(--space-8)}.norm-tutorial .tables-grid-3nf{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.norm-tutorial .mini-visual-table{background:var(--white);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow);border:3px solid;position:relative;transition:all .3s var(--ease-out);overflow:hidden}.norm-tutorial .mini-visual-table:hover{transform:translateY(-5px) scale(1.02);box-shadow:var(--shadow-xl)}.norm-tutorial .table-project{border-color:var(--primary);color:var(--primary)}.norm-tutorial .table-employee{border-color:var(--secondary);color:var(--secondary)}.norm-tutorial .table-assignment{border-color:var(--teal);color:var(--teal)}.norm-tutorial .table-job{border-color:var(--success);color:var(--success)}.norm-tutorial .mini-table-header{text-align:center;margin-bottom:var(--space-4)}.norm-tutorial .mini-table-header h4{font-size:var(--text-lg);font-weight:800;color:var(--gray-900);margin-bottom:var(--space-2);letter-spacing:-.025em}.norm-tutorial .table-type{font-size:var(--text-xs);font-weight:700;color:var(--gray-700);background:var(--gray-100);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--gray-400)}.norm-tutorial .mini-table{width:100%;border-collapse:collapse;border-radius:var(--radius);overflow:hidden;margin-bottom:var(--space-4);box-shadow:var(--shadow-sm);border:2px solid var(--gray-400)}.norm-tutorial .mini-table th{background:var(--table-header);padding:var(--space-3);font-size:var(--text-xs);font-weight:800;color:var(--table-header-text);border:1px solid var(--gray-300);text-transform:uppercase;letter-spacing:.05em}.norm-tutorial .mini-table td{padding:var(--space-3);font-size:var(--text-xs);color:var(--gray-900);border:1px solid var(--gray-300);background:var(--white);font-weight:600}.norm-tutorial .table-explanation{font-size:var(--text-xs);color:var(--gray-800);line-height:1.5;text-align:center;padding:var(--space-3);background:var(--gray-100);border-radius:var(--radius);border:2px solid var(--gray-300);font-weight:600}.norm-tutorial .new-table-badge{position:absolute;top:-10px;right:-10px;background:var(--success);color:var(--white);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:800;box-shadow:var(--shadow);z-index:10;border:2px solid var(--success-dark)}.norm-tutorial .nf-explanation{background:var(--success-light);padding:var(--space-6);border-radius:var(--radius-lg);margin-bottom:var(--space-6);border:3px solid var(--success);box-shadow:var(--shadow-sm)}.norm-tutorial .nf-explanation h5{font-size:var(--text-lg);font-weight:800;color:var(--success);margin-bottom:var(--space-4);letter-spacing:-.025em}.norm-tutorial .nf-explanation ul{list-style:none;padding:0;margin:0}.norm-tutorial .nf-explanation li{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3);font-size:var(--text-sm);color:var(--gray-900);line-height:1.6;font-weight:600}.norm-tutorial .nf-explanation li:before{content:"✅";flex-shrink:0;margin-top:var(--space-1);font-size:var(--text-base)}.norm-tutorial .remaining-problem{text-align:center;margin-top:var(--space-6);padding:var(--space-4);background:var(--warning-light);border-radius:var(--radius);border:2px solid var(--warning);box-shadow:var(--shadow-sm)}.norm-tutorial .warning-text{font-size:var(--text-sm);font-weight:700;color:var(--warning-dark)}.norm-tutorial .final-explanation{background:var(--primary-light);padding:var(--space-8);border-radius:var(--radius-lg);margin-bottom:var(--space-6);border:3px solid var(--primary);box-shadow:var(--shadow)}.norm-tutorial .final-explanation h5{font-size:var(--text-xl);font-weight:800;color:var(--primary);margin-bottom:var(--space-6);text-align:center;letter-spacing:-.025em}.norm-tutorial .benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.norm-tutorial .benefit-item{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4);background:var(--white);border-radius:var(--radius);border:2px solid var(--gray-300);box-shadow:var(--shadow-sm);transition:all .3s var(--ease-out)}.norm-tutorial .benefit-item:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--primary)}.norm-tutorial .benefit-icon{font-size:var(--text-2xl);flex-shrink:0;margin-top:var(--space-1)}.norm-tutorial .benefit-item div{font-size:var(--text-sm);color:var(--gray-900);line-height:1.6;font-weight:600}.norm-tutorial .benefit-item strong{color:var(--primary);font-weight:800;display:block;margin-bottom:var(--space-1)}.norm-tutorial .success-message{text-align:center;margin-top:var(--space-8);padding:var(--space-6);background:var(--success-light);border-radius:var(--radius-lg);border:3px solid var(--success);box-shadow:var(--shadow)}.norm-tutorial .success-text{font-size:var(--text-lg);font-weight:800;color:var(--success-dark)}.norm-tutorial .step-explanation{background:var(--white);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow);border:2px solid var(--gray-300);position:relative}.norm-tutorial .step-explanation:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:var(--radius-xl) var(--radius-xl) 0 0}.norm-tutorial .explanation-box h4{font-size:var(--text-2xl);font-weight:800;color:var(--gray-900);margin-bottom:var(--space-4);letter-spacing:-.025em}.norm-tutorial .explanation-box p{color:var(--gray-800);margin-bottom:var(--space-4);line-height:1.6;font-size:var(--text-base);font-weight:600}.norm-tutorial .explanation-details{background:var(--gray-100);padding:var(--space-6);border-radius:var(--radius-lg);margin:var(--space-4) 0;border:2px solid var(--primary);box-shadow:var(--shadow-sm)}.norm-tutorial .explanation-details h5{font-size:var(--text-lg);font-weight:800;color:var(--primary);margin-bottom:var(--space-4);letter-spacing:-.025em}.norm-tutorial .explanation-details ul{list-style:none;padding:0;margin:0}.norm-tutorial .explanation-details li{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);font-size:var(--text-sm);color:var(--gray-900);line-height:1.6;font-weight:600}.norm-tutorial .explanation-details li:before{content:"▶";color:var(--primary);flex-shrink:0;margin-top:var(--space-1);font-size:var(--text-xs);font-weight:800}.norm-tutorial .content-section{display:flex;flex-direction:column;gap:var(--space-8)}.norm-tutorial .content-section h3{font-size:var(--text-2xl);font-weight:800;color:var(--gray-900);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2);letter-spacing:-.025em}.norm-tutorial .content-section h4{font-size:var(--text-xl);font-weight:800;color:var(--gray-900);margin-bottom:var(--space-3);letter-spacing:-.025em}.norm-tutorial .content-section h5{font-size:var(--text-lg);font-weight:800;color:var(--primary);margin-bottom:var(--space-4);letter-spacing:-.025em}.norm-tutorial .content-section p{color:var(--gray-800);line-height:1.6;margin-bottom:var(--space-4);font-weight:600;font-size:var(--text-base)}.norm-tutorial .content-section ul{list-style:none;padding:0;margin:0}.norm-tutorial .content-section li{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3);font-size:var(--text-sm);color:var(--gray-900);line-height:1.6;font-weight:600}.norm-tutorial .info-box{padding:var(--space-8);border-radius:var(--radius-xl);border:3px solid;position:relative;overflow:hidden;box-shadow:var(--shadow);transition:all .3s var(--ease-out)}.norm-tutorial .info-box:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.norm-tutorial .info-primary{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.norm-tutorial .info-warning{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.norm-tutorial .info-danger{background:var(--danger-light);border-color:var(--danger);color:var(--danger)}.norm-tutorial .info-success{background:var(--success-light);border-color:var(--success);color:var(--success)}.norm-tutorial .nf-journey{display:flex;align-items:center;justify-content:center;gap:var(--space-4);flex-wrap:wrap;margin:var(--space-6) 0}.norm-tutorial .nf-step{text-align:center;padding:var(--space-4);background:var(--white);border-radius:var(--radius-lg);border:2px solid var(--gray-400);min-width:140px;box-shadow:var(--shadow-sm);transition:all .3s var(--ease-out)}.norm-tutorial .nf-step:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--primary)}.norm-tutorial .nf-indicator{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:var(--text-sm);color:var(--white);margin:0 auto var(--space-2);box-shadow:var(--shadow);border:2px solid}.norm-tutorial .nf-0{background:var(--gray-600);border-color:var(--gray-700)}.norm-tutorial .nf-1{background:var(--warning);border-color:var(--warning-dark)}.norm-tutorial .nf-2{background:var(--teal);border-color:var(--teal-dark)}.norm-tutorial .nf-3{background:var(--success);border-color:var(--success-dark)}.norm-tutorial .nf-label{font-size:var(--text-sm);font-weight:800;color:var(--gray-900);margin-bottom:var(--space-2);display:block}.norm-tutorial .nf-desc{font-size:var(--text-xs);color:var(--gray-700);line-height:1.5;margin:0;font-weight:600}.norm-tutorial .anomaly-examples{display:flex;flex-direction:column;gap:var(--space-6)}.norm-tutorial .anomaly-example{background:var(--white);border-radius:var(--radius-lg);padding:var(--space-6);border:2px solid var(--danger);box-shadow:var(--shadow-sm);transition:all .3s var(--ease-out)}.norm-tutorial .anomaly-example:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.norm-tutorial .subtitle-danger{font-size:var(--text-xl);font-weight:800;color:var(--danger);margin-bottom:var(--space-3);letter-spacing:-.025em}.norm-tutorial .example-case{background:var(--gray-100);padding:var(--space-4);border-radius:var(--radius);margin:var(--space-3) 0;font-size:var(--text-sm);color:var(--gray-900);line-height:1.6;border:2px solid var(--gray-300);font-weight:600}.norm-tutorial .cost-comparison{margin:var(--space-8) 0}.norm-tutorial .comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);margin-top:var(--space-6)}.norm-tutorial .comparison-bad,.norm-tutorial .comparison-good{padding:var(--space-6);border-radius:var(--radius-lg);border:3px solid;box-shadow:var(--shadow);transition:all .3s var(--ease-out)}.norm-tutorial .comparison-bad:hover,.norm-tutorial .comparison-good:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.norm-tutorial .comparison-bad{background:var(--danger-light);border-color:var(--danger)}.norm-tutorial .comparison-good{background:var(--success-light);border-color:var(--success)}.norm-tutorial .comparison-bad h4{color:var(--danger);font-size:var(--text-xl);font-weight:800;margin-bottom:var(--space-4);letter-spacing:-.025em}.norm-tutorial .comparison-good h4{color:var(--success);font-size:var(--text-xl);font-weight:800;margin-bottom:var(--space-4);letter-spacing:-.025em}.norm-tutorial .comparison-bad ul,.norm-tutorial .comparison-good ul{list-style:none;padding:0;margin:0}.norm-tutorial .comparison-bad li,.norm-tutorial .comparison-good li{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);font-size:var(--text-sm);line-height:1.6;color:var(--gray-900);font-weight:600}.norm-tutorial .comparison-bad li:before{content:"❌";flex-shrink:0;margin-top:var(--space-1);font-size:var(--text-base)}.norm-tutorial .comparison-good li:before{content:"✅";flex-shrink:0;margin-top:var(--space-1);font-size:var(--text-base)}.norm-tutorial .summary-header{text-align:center;margin-bottom:var(--space-8)}.norm-tutorial .summary-title{font-size:var(--text-3xl);font-weight:800;margin-bottom:var(--space-4);color:var(--success);letter-spacing:-.025em}.norm-tutorial .journey-summary{display:flex;justify-content:center;gap:var(--space-6);margin:var(--space-8) 0;flex-wrap:wrap}.norm-tutorial .journey-item{display:flex;align-items:center;gap:var(--space-4);background:var(--white);padding:var(--space-6);border-radius:var(--radius-lg);border:3px solid var(--primary);max-width:280px;box-shadow:var(--shadow);transition:all .3s var(--ease-out)}.norm-tutorial .journey-item:hover{transform:translateY(-5px) scale(1.02);box-shadow:var(--shadow-lg)}.norm-tutorial .journey-details h4{font-size:var(--text-lg);font-weight:800;color:var(--primary);margin-bottom:var(--space-2);letter-spacing:-.025em}.norm-tutorial .journey-details p{font-size:var(--text-sm);color:var(--gray-700);margin:0;line-height:1.5;font-weight:600}.norm-tutorial .benefits-comparison{display:grid;gap:var(--space-8);margin:var(--space-8) 0}.norm-tutorial .subtitle-success{font-size:var(--text-xl);font-weight:800;color:var(--success);margin-bottom:var(--space-4);letter-spacing:-.025em}.norm-tutorial .subtitle-warning{font-size:var(--text-xl);font-weight:800;color:var(--warning);margin-bottom:var(--space-4);letter-spacing:-.025em}.norm-tutorial .final-cta{background:var(--accent-light);border-radius:var(--radius-xl);padding:var(--space-8);margin:var(--space-8) 0;border:3px solid var(--accent);box-shadow:var(--shadow-lg)}.norm-tutorial .cta-content{display:flex;align-items:center;gap:var(--space-6);text-align:center;justify-content:center;flex-wrap:wrap}.norm-tutorial .cta-text h4{font-size:var(--text-2xl);font-weight:800;color:var(--primary);margin-bottom:var(--space-2);letter-spacing:-.025em}.norm-tutorial .cta-text p{color:var(--gray-800);margin:0;font-size:var(--text-base);line-height:1.6;font-weight:600}.norm-tutorial .next-steps{display:flex;flex-direction:column;gap:var(--space-2)}.norm-tutorial .next-step{display:flex;align-items:flex-start;gap:var(--space-2);color:var(--gray-800);line-height:1.6;font-weight:600;font-size:var(--text-sm)}.norm-tutorial .navigation{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);background:var(--white);padding:var(--space-6);border-radius:var(--radius-xl);box-shadow:var(--shadow);border:2px solid var(--gray-300);flex-wrap:wrap;position:relative}.norm-tutorial .navigation:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--success));border-radius:var(--radius-xl) var(--radius-xl) 0 0}.norm-tutorial .nav-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);border:none;border-radius:var(--radius-lg);font-weight:700;cursor:pointer;transition:all .3s var(--ease-out);font-size:var(--text-sm);border:2px solid transparent;min-width:140px;justify-content:center}.norm-tutorial .nav-primary{background:var(--primary);color:var(--white);border-color:var(--primary)}.norm-tutorial .nav-secondary{background:var(--gray-600);color:var(--white);border-color:var(--gray-600)}.norm-tutorial .nav-disabled{background:var(--gray-400);color:var(--gray-600);cursor:not-allowed;box-shadow:none;opacity:.6}.norm-tutorial .nav-btn:hover:not(.nav-disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg)}.norm-tutorial .nav-info{text-align:center;flex:1;min-width:200px}.norm-tutorial .nav-text{font-size:var(--text-sm);font-weight:700;color:var(--gray-800);background:var(--gray-100);padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);border:2px solid var(--gray-300);box-shadow:var(--shadow-sm)}@media (max-width: 1024px){.norm-tutorial{padding:var(--space-6)}.norm-tutorial .header{padding:var(--space-8)}.norm-tutorial .header h1{font-size:var(--text-3xl)}.norm-tutorial .content-card{padding:var(--space-8)}}@media (max-width: 768px){.norm-tutorial{padding:var(--space-4)}.norm-tutorial .header{padding:var(--space-6)}.norm-tutorial .header h1{font-size:var(--text-2xl)}.norm-tutorial .content-card{padding:var(--space-6)}.norm-tutorial .tables-grid-2nf,.norm-tutorial .tables-grid-3nf{grid-template-columns:1fr}.norm-tutorial .nf-journey{flex-direction:column;gap:var(--space-4)}.norm-tutorial .comparison-grid,.norm-tutorial .benefits-grid{grid-template-columns:1fr}.norm-tutorial .journey-summary{flex-direction:column;align-items:center}.norm-tutorial .navigation{flex-direction:column;text-align:center;gap:var(--space-4)}.norm-tutorial .cta-content{flex-direction:column;text-align:center}.norm-tutorial .practice-stats{gap:var(--space-4)}.norm-tutorial .visual-controls .playback-controls,.norm-tutorial .step-indicators{gap:var(--space-2)}.norm-tutorial .step-indicator{min-width:80px;font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}}@media (max-width: 480px){.norm-tutorial{padding:var(--space-3)}.norm-tutorial .header h1{font-size:var(--text-xl)}.norm-tutorial .content-title{font-size:var(--text-2xl)}.norm-tutorial .step-indicators{gap:var(--space-1)}.norm-tutorial .step-indicator{font-size:10px;padding:var(--space-2);min-width:70px}.norm-tutorial .practice-table,.norm-tutorial .visual-table{min-width:500px}.norm-tutorial .practice-controls{gap:var(--space-2)}.norm-tutorial .practice-btn,.norm-tutorial .control-btn{padding:var(--space-2) var(--space-4);font-size:var(--text-xs);min-width:100px}}.norm-tutorial .step-btn:focus,.norm-tutorial .problem-btn:focus,.norm-tutorial .practice-btn:focus,.norm-tutorial .control-btn:focus,.norm-tutorial .nav-btn:focus,.norm-tutorial .step-indicator:focus,.norm-tutorial .tutorial-button:focus,.norm-tutorial .tutorial-close:focus,.norm-tutorial .tutorial-cta-button:focus{outline:4px solid var(--primary);outline-offset:2px;z-index:100}.norm-tutorial .practice-table th:focus,.norm-tutorial .practice-table td:focus{outline:3px solid var(--primary);outline-offset:1px;z-index:50}@media (prefers-contrast: high){.norm-tutorial{--primary: #0000cc;--success: #008800;--danger: #cc0000;--warning: #cc8800;--gray-400: #666666;--gray-600: #333333;--gray-700: #222222;--gray-800: #111111;--gray-900: #000000}.norm-tutorial .practice-table th,.norm-tutorial .practice-table td,.norm-tutorial .visual-table th,.norm-tutorial .visual-table td{border:3px solid #000000}}@media (prefers-reduced-motion: reduce){.norm-tutorial *,.norm-tutorial *:before,.norm-tutorial *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.norm-tutorial .how-to-use-button{animation:none}}.norm-tutorial{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.norm-tutorial ::selection{background:#1e3a8a33;color:var(--gray-900)}.norm-tutorial ::-moz-selection{background:#1e3a8a33;color:var(--gray-900)}.norm-tutorial ::-webkit-scrollbar{width:8px;height:8px}.norm-tutorial ::-webkit-scrollbar-track{background:var(--gray-200);border-radius:var(--radius-sm)}.norm-tutorial ::-webkit-scrollbar-thumb{background:var(--gray-500);border-radius:var(--radius-sm);border:1px solid var(--gray-400)}.norm-tutorial ::-webkit-scrollbar-thumb:hover{background:var(--gray-600)}.norm-tutorial{scrollbar-width:thin;scrollbar-color:var(--gray-500) var(--gray-200)}.norm-tutorial .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.norm-tutorial .code-like{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,Source Code Pro,monospace;background:var(--gray-100);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:.9em;font-weight:700;color:var(--gray-900);border:2px solid var(--gray-300)}.norm-tutorial .loading-spinner{width:24px;height:24px;border:3px solid var(--gray-300);border-top:3px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.norm-tutorial .interactive-element{border:2px solid transparent;transition:all .3s var(--ease-out);position:relative}.norm-tutorial .interactive-element:hover{border-color:var(--primary);box-shadow:0 0 0 3px #1e3a8a1a}.norm-tutorial .interactive-element:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #1e3a8a4d}.norm-tutorial .error-state{border:3px solid var(--danger);background:var(--danger-light);color:var(--danger-dark);font-weight:700}.norm-tutorial .success-state{border:3px solid var(--success);background:var(--success-light);color:var(--success-dark);font-weight:700}.norm-tutorial .warning-state{border:3px solid var(--warning);background:var(--warning-light);color:var(--warning-dark);font-weight:700}.norm-tutorial .info-state{border:3px solid var(--info);background:var(--info-light);color:var(--info-dark);font-weight:700}@media print{.norm-tutorial{background:#fff;box-shadow:none;color:#000;max-width:100%;padding:var(--space-4);font-size:12pt;transform:none}.norm-tutorial .step-nav,.norm-tutorial .visual-controls,.norm-tutorial .practice-controls,.norm-tutorial .navigation,.norm-tutorial .playback-controls,.norm-tutorial .tutorial-button,.norm-tutorial .how-to-use-button{display:none}.norm-tutorial .practice-mode{page-break-before:always}.norm-tutorial .header h1{color:#000;font-size:24pt}.norm-tutorial .practice-table,.norm-tutorial .visual-table{border:2px solid black}.norm-tutorial .practice-table th,.norm-tutorial .practice-table td,.norm-tutorial .visual-table th,.norm-tutorial .visual-table td{border:1px solid black;color:#000}}.norm-tutorial .practice-table th,.norm-tutorial .practice-table td,.norm-tutorial .visual-column,.norm-tutorial .mini-visual-table,.norm-tutorial .step-btn,.norm-tutorial .problem-btn,.norm-tutorial .practice-btn,.norm-tutorial .control-btn,.norm-tutorial .step-indicator,.norm-tutorial .tutorial-button,.norm-tutorial .tutorial-modal{will-change:transform;transform:translateZ(0)}.norm-tutorial .header{z-index:200;position:relative}.norm-tutorial .step-nav{z-index:190;position:relative}.norm-tutorial .content-card{z-index:180;position:relative}.norm-tutorial .visual-playground{z-index:170;position:relative}.norm-tutorial .practice-mode{z-index:160;position:relative}.norm-tutorial .new-table-badge{z-index:150}.norm-tutorial .selected-icon{z-index:140}.norm-tutorial .tutorial-overlay{z-index:1000}.norm-tutorial .content-spacing{margin-bottom:var(--space-8)}.norm-tutorial .content-spacing:last-child{margin-bottom:0}.norm-tutorial .text-center{text-align:center}.norm-tutorial .text-left{text-align:left}.norm-tutorial .text-right{text-align:right}.norm-tutorial .full-width{width:100%}.norm-tutorial .no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.norm-tutorial{scroll-behavior:smooth}@supports (container-type: inline-size){.norm-tutorial{container-type:inline-size}@container (max-width: 768px){.norm-tutorial .tables-grid-2nf,.norm-tutorial .tables-grid-3nf{grid-template-columns:1fr}}}.norm-tutorial[dir=rtl]{direction:rtl}.norm-tutorial[dir=rtl] .step-buttons,.norm-tutorial[dir=rtl] .navigation{flex-direction:row-reverse}@media (forced-colors: active){.norm-tutorial{forced-color-adjust:auto}.norm-tutorial .practice-table th,.norm-tutorial .practice-table td{border:2px solid}.norm-tutorial .step-btn,.norm-tutorial .practice-btn,.norm-tutorial .control-btn,.norm-tutorial .tutorial-button{border:3px solid}}.eight-puzzle-wrapper{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.eight-puzzle-wrapper .ep-eight-puzzle-container{max-width:1000px;margin:0 auto;padding:30px;background:linear-gradient(to bottom,#f8f9fa,#e9ecef);border-radius:16px;box-shadow:0 8px 30px #0000001a;position:relative}.eight-puzzle-wrapper .ep-puzzle-header{text-align:center;margin-bottom:25px}.eight-puzzle-wrapper .ep-puzzle-header h1{font-size:2.8rem;font-weight:700;color:#1f2937;margin-bottom:15px;text-shadow:1px 1px 2px rgba(0,0,0,.1);background:linear-gradient(to right,#3b82f6,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.eight-puzzle-wrapper .ep-puzzle-description{font-size:1.1rem;color:#4b5563;max-width:700px;margin:0 auto 15px;line-height:1.6}.eight-puzzle-wrapper .ep-puzzle-buttons-top{display:flex;justify-content:center;gap:15px;margin:20px 0}.eight-puzzle-wrapper .ep-control-button{padding:12px 24px;font-size:1rem;font-weight:600;color:#fff;background-color:#3b82f6;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #0000001a;min-width:150px;text-align:center}.eight-puzzle-wrapper .ep-control-button:hover{transform:translateY(-3px);box-shadow:0 6px 12px #00000026;background-color:#2563eb}.eight-puzzle-wrapper .ep-info-button{background-color:#4b5563}.eight-puzzle-wrapper .ep-info-button:hover{background-color:#374151}.eight-puzzle-wrapper .ep-game-controls{display:flex;justify-content:center;gap:20px;margin:25px 0}.eight-puzzle-wrapper .ep-new-game{background:linear-gradient(135deg,#3b82f6,#2563eb)}.eight-puzzle-wrapper .ep-new-game:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.eight-puzzle-wrapper .ep-reset{background:linear-gradient(135deg,#f59e0b,#d97706)}.eight-puzzle-wrapper .ep-reset:hover{background:linear-gradient(135deg,#d97706,#b45309)}.eight-puzzle-wrapper .ep-hint{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.eight-puzzle-wrapper .ep-hint:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9)}.eight-puzzle-wrapper .ep-puzzle-rules{background-color:#fff;border-radius:16px;padding:25px;margin-bottom:25px;box-shadow:0 4px 12px #0000000d;animation:ep-fadeIn .3s ease-in-out;border-left:5px solid #3b82f6}.eight-puzzle-wrapper .ep-puzzle-rules h3{color:#1f2937;font-size:1.4rem;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #e5e7eb}.eight-puzzle-wrapper .ep-rule-section{margin-bottom:15px}.eight-puzzle-wrapper .ep-rule-section h4{color:#4b5563;font-size:1.1rem;margin-bottom:8px}.eight-puzzle-wrapper .ep-rule-section p,.eight-puzzle-wrapper .ep-rule-section ul{color:#6b7280;line-height:1.5;margin-bottom:8px}.eight-puzzle-wrapper .ep-rule-section ul{padding-left:25px}.eight-puzzle-wrapper .ep-rule-section li{margin-bottom:5px}.eight-puzzle-wrapper .ep-solution-steps{background-color:#fff;border-radius:16px;padding:25px;margin:20px 0;box-shadow:0 4px 12px #0000000d;animation:ep-fadeIn .3s ease-in-out;border-left:5px solid #8b5cf6}.eight-puzzle-wrapper .ep-solution-steps h3{color:#1f2937;font-size:1.4rem;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #e5e7eb}.eight-puzzle-wrapper .ep-steps-content{color:#4b5563}.eight-puzzle-wrapper .ep-steps-content ol{padding-left:25px;margin-bottom:15px}.eight-puzzle-wrapper .ep-steps-content li{margin-bottom:10px;line-height:1.5}.eight-puzzle-wrapper .ep-advanced-tip{background-color:#f3f4f6;padding:15px;border-radius:12px;margin-top:15px;border-left:3px solid #8b5cf6}.eight-puzzle-wrapper .ep-advanced-tip h4{margin-bottom:8px;color:#1f2937}.eight-puzzle-wrapper .ep-tutorial-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;animation:ep-fadeIn .3s ease-in-out}.eight-puzzle-wrapper .ep-tutorial-content{background-color:#fff;border-radius:16px;padding:30px;max-width:500px;box-shadow:0 8px 30px #00000026}.eight-puzzle-wrapper .ep-tutorial-content h3{color:#1f2937;font-size:1.6rem;margin-bottom:15px;background:linear-gradient(to right,#3b82f6,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.eight-puzzle-wrapper .ep-tutorial-content p{color:#4b5563;line-height:1.6;margin-bottom:25px;font-size:1.1rem}.eight-puzzle-wrapper .ep-tutorial-nav{display:flex;justify-content:space-between}.eight-puzzle-wrapper .ep-puzzle-container{display:flex;justify-content:center;gap:60px;margin:25px 0}.eight-puzzle-wrapper .ep-goal-state,.eight-puzzle-wrapper .ep-current-state{display:flex;flex-direction:column;align-items:center}.eight-puzzle-wrapper .ep-goal-state h3,.eight-puzzle-wrapper .ep-current-state h3{margin-bottom:15px;font-size:1.2rem;color:#4b5563;text-align:center;background-color:#fffc;padding:10px 20px;border-radius:30px;box-shadow:0 2px 6px #0000000d}.eight-puzzle-wrapper .ep-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;width:170px;height:170px;background-color:#e5e7eb;padding:10px;border-radius:12px;box-shadow:0 6px 15px #00000014}.eight-puzzle-wrapper .ep-mini-tile{display:flex;justify-content:center;align-items:center;font-size:1.3rem;font-weight:700;color:#1f2937;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d}.eight-puzzle-wrapper .ep-mini-tile.ep-empty{background-color:#e5e7eb}.eight-puzzle-wrapper .ep-puzzle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:340px;height:340px;background-color:#e5e7eb;padding:12px;border-radius:16px;box-shadow:0 8px 25px #0000001a}.eight-puzzle-wrapper .ep-tile{display:flex;justify-content:center;align-items:center;font-size:2.4rem;font-weight:700;color:#1f2937;background:linear-gradient(135deg,#fff,#f5f5f5);border-radius:12px;box-shadow:0 4px 10px #00000014;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none}.eight-puzzle-wrapper .ep-tile:hover{transform:scale(1.02);box-shadow:0 6px 12px #0000001f}.eight-puzzle-wrapper .ep-tile.ep-empty{background:#e5e7eb;box-shadow:inset 0 2px 5px #0000000d;cursor:default}.eight-puzzle-wrapper .ep-tile.ep-empty:hover{transform:none}.eight-puzzle-wrapper .ep-tile.ep-correct{background:linear-gradient(135deg,#dcfce7,#86efac);color:#166534}.eight-puzzle-wrapper .ep-tile.ep-hint{animation:ep-pulse 1.5s infinite;border:2px solid #3b82f6;background:linear-gradient(135deg,#eff6ff,#dbeafe)}@keyframes ep-pulse{0%{box-shadow:0 0 #3b82f6b3}70%{box-shadow:0 0 0 10px #3b82f600}to{box-shadow:0 0 #3b82f600}}.eight-puzzle-wrapper .ep-puzzle-solved-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;animation:ep-fadeIn .3s ease-in-out}.eight-puzzle-wrapper .ep-puzzle-solved{background:linear-gradient(135deg,#dcfce7,#86efac);color:#166534;padding:40px;border-radius:20px;text-align:center;animation:ep-bounceIn .6s ease-in-out;max-width:450px;box-shadow:0 12px 30px #0003}@keyframes ep-bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.95)}to{transform:scale(1);opacity:1}}@keyframes ep-fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.eight-puzzle-wrapper .ep-puzzle-solved h2{font-size:2.2rem;margin-bottom:15px;color:#15803d}.eight-puzzle-wrapper .ep-puzzle-solved p{margin-bottom:25px;font-size:1.2rem}.eight-puzzle-wrapper .ep-success-buttons{display:flex;gap:15px;justify-content:center}.eight-puzzle-wrapper .ep-puzzle-solved .ep-control-button{background:linear-gradient(135deg,#16a34a,#15803d);padding:14px 28px;font-size:1.1rem}.eight-puzzle-wrapper .ep-puzzle-solved .ep-control-button:hover{background:linear-gradient(135deg,#15803d,#166534)}.eight-puzzle-wrapper .ep-puzzle-solved .ep-control-button.ep-secondary{background:linear-gradient(135deg,#6b7280,#4b5563)}.eight-puzzle-wrapper .ep-puzzle-solved .ep-control-button.ep-secondary:hover{background:linear-gradient(135deg,#4b5563,#374151)}.eight-puzzle-wrapper .ep-move-history{background-color:#fff;border-radius:16px;padding:20px;margin:25px auto;box-shadow:0 4px 12px #0000000d;max-width:500px}.eight-puzzle-wrapper .ep-move-history h3{font-size:1.2rem;color:#1f2937;margin-bottom:15px;text-align:center}.eight-puzzle-wrapper .ep-move-list{display:flex;flex-direction:column;gap:10px}.eight-puzzle-wrapper .ep-move-item{padding:12px 15px;background-color:#f9fafb;border-radius:10px;display:flex;align-items:center;border-left:3px solid #3b82f6}.eight-puzzle-wrapper .ep-move-number{font-weight:700;color:#3b82f6;margin-right:10px;min-width:30px}.eight-puzzle-wrapper .ep-move-tile{font-weight:600;color:#4b5563;margin-right:15px}.eight-puzzle-wrapper .ep-move-direction{color:#6b7280;font-style:italic}.eight-puzzle-wrapper .ep-solution-path{background-color:#f3f4f6;border-radius:16px;padding:20px;margin:25px auto;max-width:600px;box-shadow:0 4px 12px #0000000d}.eight-puzzle-wrapper .ep-solution-path h3{font-size:1.2rem;color:#1f2937;margin-bottom:15px;text-align:center}.eight-puzzle-wrapper .ep-solution-path ul{list-style-type:none;padding:0}.eight-puzzle-wrapper .ep-solution-path li{margin-bottom:10px;padding:12px 16px;background-color:#fff;border-radius:10px;color:#4b5563;box-shadow:0 2px 5px #0000000d}.eight-puzzle-wrapper .ep-puzzle-theory{background-color:#fff;padding:30px;border-radius:16px;margin-top:30px;box-shadow:0 4px 12px #0000000d}.eight-puzzle-wrapper .ep-puzzle-theory h3{font-size:1.5rem;color:#1f2937;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #e5e7eb;text-align:center}.eight-puzzle-wrapper .ep-theory-section{margin-bottom:25px;padding:15px;background-color:#f9fafb;border-radius:10px}.eight-puzzle-wrapper .ep-theory-section h4{font-size:1.2rem;color:#3b82f6;margin-bottom:10px}.eight-puzzle-wrapper .ep-theory-section p,.eight-puzzle-wrapper .ep-puzzle-theory p{font-size:1.05rem;color:#4b5563;margin-bottom:15px;line-height:1.6}@media (max-width: 900px){.eight-puzzle-wrapper .ep-puzzle-container{flex-direction:column;align-items:center;gap:30px}.eight-puzzle-wrapper .ep-game-controls{flex-wrap:wrap}}@media (max-width: 768px){.eight-puzzle-wrapper .ep-puzzle-header h1{font-size:2.2rem}.eight-puzzle-wrapper .ep-puzzle-description{font-size:1rem}.eight-puzzle-wrapper .ep-puzzle-grid{width:300px;height:300px}.eight-puzzle-wrapper .ep-tile{font-size:2rem}.eight-puzzle-wrapper .ep-puzzle-buttons-top{flex-wrap:wrap}.eight-puzzle-wrapper .ep-control-button{min-width:120px}}@media (max-width: 576px){.eight-puzzle-wrapper .ep-eight-puzzle-container{padding:20px 15px}.eight-puzzle-wrapper .ep-puzzle-header h1{font-size:1.8rem}.eight-puzzle-wrapper .ep-puzzle-grid{width:280px;height:280px;gap:8px;padding:8px}.eight-puzzle-wrapper .ep-mini-grid{width:150px;height:150px}.eight-puzzle-wrapper .ep-tile{font-size:1.8rem}.eight-puzzle-wrapper .ep-control-button{padding:10px 16px;font-size:.9rem;min-width:100px}.eight-puzzle-wrapper .ep-game-controls{gap:10px}}.missionaries-cannibals-wrapper{--primary: #3b82f6;--primary-dark: #2563eb;--primary-light: #93c5fd;--secondary: #8b5cf6;--secondary-dark: #7c3aed;--danger: #ef4444;--danger-dark: #dc2626;--success: #10b981;--success-dark: #059669;--warning: #f59e0b;--warning-dark: #d97706;--missionary: #3b82f6;--cannibal: #ef4444;--text-light: #f9fafb;--text-dark: #1f2937;--text-muted: #6b7280;--bg-light: #f9fafb;--bg-dark: #1f2937;--card-light: #ffffff;--card-dark: #374151;--border-light: #e5e7eb;--border-dark: #4b5563;--shadow: 0 4px 12px rgba(0, 0, 0, .1);--shadow-dark: 0 4px 12px rgba(0, 0, 0, .3);--river-light: #bae6fd;--river-dark: #0284c7;--terrain-light: #4d7c0f;--terrain-dark: #365314;--sky-light: linear-gradient(to bottom, #7dd3fc, #bae6fd);--sky-dark: linear-gradient(to bottom, #0f172a, #1e293b);--transition: all .3s ease;--animation-slow: all .5s ease;--valid-glow: 0 0 15px rgba(16, 185, 129, .7);--invalid-glow: 0 0 15px rgba(239, 68, 68, .7);font-family:Poppins,sans-serif;background-color:#f0f9ff;color:var(--text-dark);line-height:1.6;transition:var(--transition)}.missionaries-cannibals-wrapper.dark{background-color:#0f172a;color:var(--text-light)}.missionaries-cannibals-wrapper *{margin:0;padding:0;box-sizing:border-box}.missionaries-cannibals-wrapper h1,.missionaries-cannibals-wrapper h2,.missionaries-cannibals-wrapper h3,.missionaries-cannibals-wrapper h4,.missionaries-cannibals-wrapper h5,.missionaries-cannibals-wrapper h6{font-family:Montserrat,sans-serif;font-weight:700;line-height:1.2}.missionaries-cannibals-wrapper button{cursor:pointer;border:none;outline:none;font-family:Poppins,sans-serif}.missionaries-cannibals-wrapper .missionaries-cannibals-container{max-width:1100px;margin:0 auto;padding:0 20px;background-color:var(--bg-light);border-radius:16px;box-shadow:var(--shadow);overflow:hidden;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark{background-color:var(--bg-dark);box-shadow:var(--shadow-dark)}.missionaries-cannibals-wrapper .mc-navbar{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background-color:var(--card-light);border-bottom:1px solid var(--border-light);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-navbar{background-color:var(--card-dark);border-bottom:1px solid var(--border-dark)}.missionaries-cannibals-wrapper .mc-logo{display:flex;align-items:center;gap:12px}.missionaries-cannibals-wrapper .mc-icon{width:40px;height:40px;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%233b82f6" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"/><path fill="%233b82f6" d="M13 7h-2v6h2V7zm0 8h-2v2h2v-2z"/></svg>');background-repeat:no-repeat;background-position:center;background-size:contain}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-icon{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%2393c5fd" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"/><path fill="%2393c5fd" d="M13 7h-2v6h2V7zm0 8h-2v2h2v-2z"/></svg>')}.missionaries-cannibals-wrapper .mc-logo h1{font-size:1.8rem;font-weight:800;color:var(--primary);margin:0;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-logo h1{color:var(--primary-light)}.missionaries-cannibals-wrapper .mc-controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.missionaries-cannibals-wrapper .mc-nav-button{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:transparent;color:var(--text-muted);border-radius:8px;padding:8px 12px;transition:var(--transition);position:relative}.missionaries-cannibals-wrapper .mc-nav-button:hover{background-color:var(--border-light);color:var(--text-dark);transform:translateY(-2px)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-nav-button:hover{background-color:var(--border-dark);color:var(--text-light)}.missionaries-cannibals-wrapper .mc-nav-button .nav-icon{font-size:1.4rem;margin-bottom:4px}.missionaries-cannibals-wrapper .mc-nav-button .nav-text{font-size:.8rem;font-weight:500}.missionaries-cannibals-wrapper .mc-nav-button.theme-toggle{color:var(--warning)}.missionaries-cannibals-wrapper .mc-nav-button.reset{color:var(--danger)}.missionaries-cannibals-wrapper .rule-reminder{display:flex;align-items:center;gap:10px;padding:10px 15px;background-color:#f59e0b1a;border-radius:8px;margin:15px 0;animation:pulse-attention 2s infinite}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .rule-reminder{background-color:#f59e0b33}.missionaries-cannibals-wrapper .rule-reminder .rule-icon{font-size:1.2rem}.missionaries-cannibals-wrapper .rule-reminder .rule-text{font-size:1rem;color:var(--text-dark);text-shadow:1px 1px 2px rgba(0,0,0,.3)}@keyframes pulse-attention{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.missionaries-cannibals-wrapper .mc-stats{display:flex;justify-content:center;gap:25px;padding:10px 0;background-color:var(--card-light);margin:15px 0;border-radius:12px;box-shadow:var(--shadow);transition:var(--transition);flex-wrap:wrap}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-stats{background-color:var(--card-dark);box-shadow:var(--shadow-dark)}.missionaries-cannibals-wrapper .stat-item{display:flex;flex-direction:column;align-items:center;padding:8px 20px;border-radius:12px;transition:var(--animation-slow);position:relative}.missionaries-cannibals-wrapper .stat-item:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:0;height:3px;background-color:var(--primary);transition:var(--animation-slow)}.missionaries-cannibals-wrapper .stat-item:hover:after{width:60%}.missionaries-cannibals-wrapper .stat-item:hover{transform:translateY(-5px)}.missionaries-cannibals-wrapper .stat-label{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-weight:600;margin-bottom:3px;transition:var(--transition)}.missionaries-cannibals-wrapper .stat-value{font-size:1.6rem;font-weight:700;color:var(--primary);text-shadow:1px 1px 2px rgba(0,0,0,.3);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .stat-value{color:var(--primary-light)}.missionaries-cannibals-wrapper .mc-tooltip{position:fixed;z-index:1000;max-width:300px;padding:10px 15px;background-color:#000c;color:#fff;border-radius:5px;font-size:.9rem;pointer-events:none;animation:tooltip-fade .3s ease-in-out}.missionaries-cannibals-wrapper .tooltip-arrow{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid rgba(0,0,0,.8)}@keyframes tooltip-fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.missionaries-cannibals-wrapper .mc-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease-in-out}.missionaries-cannibals-wrapper .mc-modal-content{background-color:var(--card-light);border-radius:16px;padding:30px;max-width:800px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;animation:slideUp .5s cubic-bezier(.16,1,.3,1);position:relative;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-modal-content{background-color:var(--card-dark)}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.missionaries-cannibals-wrapper .modal-close{position:absolute;top:15px;right:15px;width:30px;height:30px;background-color:var(--border-light);color:var(--text-muted);border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:1.5rem;cursor:pointer;transition:var(--transition);z-index:10}.missionaries-cannibals-wrapper .modal-close:hover{background-color:var(--danger);color:#fff;transform:rotate(90deg)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .modal-close{background-color:var(--border-dark)}.missionaries-cannibals-wrapper .how-to-play-content h2{font-size:2rem;color:var(--primary);margin-bottom:20px;text-align:center;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .how-to-play-content h2{color:var(--primary-light)}.missionaries-cannibals-wrapper .game-objective{margin-bottom:25px}.missionaries-cannibals-wrapper .game-objective h3{font-size:1.5rem;color:var(--primary);margin-bottom:15px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .game-objective h3{color:var(--primary-light)}.missionaries-cannibals-wrapper .game-objective p{font-size:1.1rem;line-height:1.6;margin-bottom:15px}.missionaries-cannibals-wrapper .objective-warning{display:flex;background-color:#f59e0b1a;border-left:4px solid var(--warning);padding:15px;border-radius:0 8px 8px 0;align-items:center;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .objective-warning{background-color:#f59e0b0d}.missionaries-cannibals-wrapper .objective-warning .rule-icon{font-size:2rem;margin-right:15px}.missionaries-cannibals-wrapper .objective-warning .rule-text{font-size:1rem;color:var(--text-dark);line-height:1.5;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .objective-warning .rule-text{color:var(--text-light)}.missionaries-cannibals-wrapper .game-instructions{margin-bottom:25px}.missionaries-cannibals-wrapper .game-instructions h3{font-size:1.5rem;color:var(--primary);margin-bottom:15px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .game-instructions h3{color:var(--primary-light)}.missionaries-cannibals-wrapper .game-instructions ol{margin-left:20px;margin-bottom:15px}.missionaries-cannibals-wrapper .game-instructions li{font-size:1.05rem;margin-bottom:12px;line-height:1.5;position:relative;padding-left:10px;transition:var(--transition)}.missionaries-cannibals-wrapper .game-instructions li::marker{color:var(--primary);font-weight:700;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .game-instructions li::marker{color:var(--primary-light)}.missionaries-cannibals-wrapper .button-group{display:flex;gap:15px;justify-content:center;margin-top:30px;flex-wrap:wrap}.missionaries-cannibals-wrapper .info-panel h2{font-size:2rem;color:var(--primary);margin-bottom:15px;text-align:center;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .info-panel h2{color:var(--primary-light)}.missionaries-cannibals-wrapper .info-panel>p{font-size:1.1rem;margin-bottom:25px;text-align:center;line-height:1.6;transition:var(--transition)}.missionaries-cannibals-wrapper .theory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin:30px 0}.missionaries-cannibals-wrapper .theory-card{background-color:var(--bg-light);padding:25px;border-radius:12px;text-align:center;box-shadow:var(--shadow);transition:var(--animation-slow);position:relative;overflow:hidden}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .theory-card{background-color:var(--bg-dark);box-shadow:var(--shadow-dark)}.missionaries-cannibals-wrapper .theory-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:5px;background-color:var(--primary);transform:scaleX(0);transform-origin:left;transition:var(--animation-slow)}.missionaries-cannibals-wrapper .theory-card:hover:before{transform:scaleX(1)}.missionaries-cannibals-wrapper .theory-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0000001a}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .theory-card:hover{box-shadow:0 15px 30px #0000004d}.missionaries-cannibals-wrapper .theory-icon{font-size:2.5rem;margin-bottom:15px;color:var(--primary);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .theory-icon{color:var(--primary-light)}.missionaries-cannibals-wrapper .theory-card h4{font-size:1.2rem;color:var(--text-dark);margin-bottom:10px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .theory-card h4{color:var(--text-light)}.missionaries-cannibals-wrapper .theory-card p{font-size:.95rem;color:var(--text-muted);margin-bottom:0;transition:var(--transition)}.missionaries-cannibals-wrapper .ai-explanation{margin-top:30px;background-color:var(--bg-light);padding:25px;border-radius:12px;box-shadow:var(--shadow);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .ai-explanation{background-color:var(--bg-dark);box-shadow:var(--shadow-dark)}.missionaries-cannibals-wrapper .ai-explanation h3{font-size:1.5rem;color:var(--primary);margin-bottom:20px;text-align:center;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .ai-explanation h3{color:var(--primary-light)}.missionaries-cannibals-wrapper .ai-explanation ol{margin-left:20px;margin-bottom:20px}.missionaries-cannibals-wrapper .ai-explanation li{font-size:1rem;margin-bottom:12px;line-height:1.5;transition:var(--transition)}.missionaries-cannibals-wrapper .ai-explanation li strong{color:var(--primary);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .ai-explanation li strong{color:var(--primary-light)}.missionaries-cannibals-wrapper .ai-explanation p{font-size:1.05rem;line-height:1.6;transition:var(--transition)}.missionaries-cannibals-wrapper .button-row{display:flex;gap:15px;justify-content:center;margin-top:25px;flex-wrap:wrap}.missionaries-cannibals-wrapper .mc-game-area{position:relative;height:450px;margin-bottom:30px;background-color:transparent;border-radius:16px;overflow:hidden;box-shadow:var(--shadow);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-game-area{box-shadow:var(--shadow-dark)}.missionaries-cannibals-wrapper .mc-game-area.valid-move{box-shadow:var(--valid-glow);animation:valid-move-pulse .5s ease-in-out}.missionaries-cannibals-wrapper .mc-game-area.invalid-move{box-shadow:var(--invalid-glow);animation:invalid-move-pulse .5s ease-in-out}@keyframes valid-move-pulse{0%,to{box-shadow:var(--shadow)}50%{box-shadow:var(--valid-glow)}}@keyframes invalid-move-pulse{0%,to{box-shadow:var(--shadow)}50%{box-shadow:var(--invalid-glow)}}.missionaries-cannibals-wrapper .person.valid-move-indicator{animation:valid-person-pulse 1.5s infinite}@keyframes valid-person-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1);box-shadow:var(--valid-glow)}}.missionaries-cannibals-wrapper .mc-sky{position:absolute;top:0;left:0;right:0;height:200px;background:var(--sky-light);z-index:1;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-sky{background:var(--sky-dark)}.missionaries-cannibals-wrapper .sun{position:absolute;top:30px;right:80px;width:60px;height:60px;background:radial-gradient(circle,#fcd34d,#f59e0b);border-radius:50%;box-shadow:0 0 30px #fcd34db3;animation:sun-pulse 3s infinite alternate;transition:var(--transition);opacity:1}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .sun{opacity:0}.missionaries-cannibals-wrapper .moon{position:absolute;top:40px;right:100px;width:40px;height:40px;background-color:#e2e8f0;border-radius:50%;box-shadow:0 0 20px #e2e8f0b3;animation:moon-pulse 4s infinite alternate;transition:var(--transition);opacity:0}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .moon{opacity:1}@keyframes sun-pulse{0%{transform:scale(1);box-shadow:0 0 20px #fcd34db3}to{transform:scale(1.1);box-shadow:0 0 40px #fcd34de6}}@keyframes moon-pulse{0%{transform:scale(1);box-shadow:0 0 20px #e2e8f0b3}to{transform:scale(1.05);box-shadow:0 0 25px #e2e8f0e6}}.missionaries-cannibals-wrapper .stars{position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .stars{opacity:1}.missionaries-cannibals-wrapper .star{position:absolute;width:2px;height:2px;background-color:#fff;border-radius:50%;animation:twinkle 2s infinite alternate}@keyframes twinkle{0%{opacity:.2;transform:scale(1)}to{opacity:1;transform:scale(1.5)}}.missionaries-cannibals-wrapper .cloud{position:absolute;background-color:#fff;border-radius:50px;box-shadow:0 5px 10px #0000001a;opacity:.9;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .cloud{opacity:.5}.missionaries-cannibals-wrapper .cloud:before,.missionaries-cannibals-wrapper .cloud:after{content:"";position:absolute;background-color:#fff;border-radius:50%}.missionaries-cannibals-wrapper .cloud1{top:50px;left:100px;width:100px;height:40px;animation:cloud-move 30s linear infinite}.missionaries-cannibals-wrapper .cloud1:before{width:50px;height:50px;top:-20px;left:10px}.missionaries-cannibals-wrapper .cloud1:after{width:60px;height:60px;top:-25px;right:15px}.missionaries-cannibals-wrapper .cloud2{top:80px;right:250px;width:70px;height:30px;animation:cloud-move 25s 5s linear infinite}.missionaries-cannibals-wrapper .cloud2:before{width:35px;height:35px;top:-15px;left:5px}.missionaries-cannibals-wrapper .cloud2:after{width:40px;height:40px;top:-20px;right:10px}@keyframes cloud-move{0%{transform:translate(-200px)}to{transform:translate(calc(100vw + 200px))}}.missionaries-cannibals-wrapper .mc-bank{position:absolute;width:200px;height:450px;z-index:2;transition:var(--transition)}.missionaries-cannibals-wrapper .left-bank{left:0}.missionaries-cannibals-wrapper .right-bank{right:0}.missionaries-cannibals-wrapper .bank-terrain{position:absolute;bottom:0;width:100%;height:300px;background-color:var(--terrain-light);clip-path:polygon(0 30%,100% 40%,100% 100%,0 100%);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .bank-terrain{background-color:var(--terrain-dark)}.missionaries-cannibals-wrapper .bank-label{position:absolute;bottom:10px;width:100%;text-align:center;font-size:1.2rem;font-weight:600;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.3);z-index:5}.missionaries-cannibals-wrapper .bank-count{position:absolute;bottom:40px;width:100%;display:flex;justify-content:center;gap:15px;z-index:10}.missionaries-cannibals-wrapper .missionary-count,.missionaries-cannibals-wrapper .cannibal-count{padding:5px 10px;border-radius:50px;font-size:1rem;font-weight:700;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.5);box-shadow:0 2px 4px #0003}.missionaries-cannibals-wrapper .missionary-count{background-color:var(--missionary)}.missionaries-cannibals-wrapper .cannibal-count{background-color:var(--cannibal)}.missionaries-cannibals-wrapper .bank-people{position:absolute;bottom:150px;display:flex;flex-wrap:wrap;justify-content:center;width:100%;padding:10px;z-index:3}.missionaries-cannibals-wrapper .person{width:50px;height:70px;margin:5px;cursor:pointer;position:relative;transition:all .3s ease;z-index:4}.missionaries-cannibals-wrapper .person:hover{transform:translateY(-8px) scale(1.1)}.missionaries-cannibals-wrapper .person-icon{width:100%;height:100%;background-size:contain;background-position:center;background-repeat:no-repeat;transition:var(--transition)}.missionaries-cannibals-wrapper .missionary .person-icon{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%233b82f6" d="M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,14C16.42,14 20,15.79 20,18V20H4V18C4,15.79 7.58,14 12,14Z"/></svg>')}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .missionary .person-icon{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%2393c5fd" d="M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,14C16.42,14 20,15.79 20,18V20H4V18C4,15.79 7.58,14 12,14Z"/></svg>')}.missionaries-cannibals-wrapper .cannibal .person-icon{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23ef4444" d="M12,1C8.14,1,5,4.14,5,8c0,1.38,0.41,2.67,1.11,3.75C6.04,11.89,6,11.95,6,12v0.16c-0.6,0.55-1,1.34-1,2.23 c0,0.89,0.39,1.67,1,2.23V17c0,1.1,0.9,2,2,2h0v3h8v-3h0c1.1,0,2-0.9,2-2v-0.38c0.61-0.55,1-1.34,1-2.23c0-0.89-0.39-1.67-1-2.23 V12c0-0.05-0.04-0.11-0.11-0.25C18.59,10.67,19,9.38,19,8C19,4.14,15.86,1,12,1z M16,15.91L16,16c0,0.55-0.45,1-1,1H9 c-0.55,0-1-0.45-1-1v-0.09c0-0.49-0.42-0.88-0.91-0.88c-0.39,0-0.71-0.32-0.71-0.71c0-0.39,0.32-0.71,0.71-0.71 c0.49,0,0.91-0.39,0.91-0.88V12.5c0-0.13,0.11-0.24,0.24-0.24c0.07,0,0.13,0.03,0.18,0.08c0.92,1.05,2.25,1.65,3.64,1.65 c1.39,0,2.73-0.61,3.65-1.66c0.04-0.05,0.11-0.08,0.17-0.08c0.13,0,0.24,0.11,0.24,0.24v0.22c0,0.49,0.42,0.88,0.91,0.88 c0.39,0,0.71,0.32,0.71,0.71c0,0.39-0.32,0.71-0.71,0.71C16.42,15.03,16,15.42,16,15.91z M10.5,10.5c-0.83,0-1.5-0.67-1.5-1.5 s0.67-1.5,1.5-1.5s1.5,0.67,1.5,1.5S11.33,10.5,10.5,10.5z M13.5,10.5c-0.83,0-1.5-0.67-1.5-1.5s0.67-1.5,1.5-1.5s1.5,0.67,1.5,1.5 S14.33,10.5,13.5,10.5z M4,8c0-0.31,0.02-0.64,0.05-0.95C4.03,7.02,4,7.01,4,7V6h1v1c0,0.01,0.03,0.02,0.05,0.05 C5.37,5.74,6.29,4.93,7.4,4.28C7.15,4.81,7,5.4,7,6h2c0-1.1,0.9-2,2-2s2,0.9,2,2h2c0-1.1,0.9-2,2-2s2,0.9,2,2h2 c0-0.6-0.15-1.19-0.4-1.72c1.11,0.65,2.03,1.46,2.35,2.78C20.98,7.02,21,7.01,21,7V6h1v1c0,0.01-0.03,0.02-0.05,0.05 C21.98,7.36,22,7.68,22,8"/>  <path fill="%23ef4444" d="M9,21.5h6v1.5h-6z"/> <path fill="%23ef4444" d="M8,10C7.44,10,7,9.56,7,9s0.44-1,1-1s1,0.44,1,1S8.56,10,8,10z M16,10c-0.56,0-1-0.44-1-1s0.44-1,1-1s1,0.44,1,1 S16.56,10,16,10z"/></svg>')}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .cannibal .person-icon{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23fca5a5" d="M12,1C8.14,1,5,4.14,5,8c0,1.38,0.41,2.67,1.11,3.75C6.04,11.89,6,11.95,6,12v0.16c-0.6,0.55-1,1.34-1,2.23 c0,0.89,0.39,1.67,1,2.23V17c0,1.1,0.9,2,2,2h0v3h8v-3h0c1.1,0,2-0.9,2-2v-0.38c0.61-0.55,1-1.34,1-2.23c0-0.89-0.39-1.67-1-2.23 V12c0-0.05-0.04-0.11-0.11-0.25C18.59,10.67,19,9.38,19,8C19,4.14,15.86,1,12,1z M16,15.91L16,16c0,0.55-0.45,1-1,1H9 c-0.55,0-1-0.45-1-1v-0.09c0-0.49-0.42-0.88-0.91-0.88c-0.39,0-0.71-0.32-0.71-0.71c0-0.39,0.32-0.71,0.71-0.71 c0.49,0,0.91-0.39,0.91-0.88V12.5c0-0.13,0.11-0.24,0.24-0.24c0.07,0,0.13,0.03,0.18,0.08c0.92,1.05,2.25,1.65,3.64,1.65 c1.39,0,2.73-0.61,3.65-1.66c0.04-0.05,0.11-0.08,0.17-0.08c0.13,0,0.24,0.11,0.24,0.24v0.22c0,0.49,0.42,0.88,0.91,0.88 c0.39,0,0.71,0.32,0.71,0.71c0,0.39-0.32,0.71-0.71,0.71C16.42,15.03,16,15.42,16,15.91z M10.5,10.5c-0.83,0-1.5-0.67-1.5-1.5 s0.67-1.5,1.5-1.5s1.5,0.67,1.5,1.5S11.33,10.5,10.5,10.5z M13.5,10.5c-0.83,0-1.5-0.67-1.5-1.5s0.67-1.5,1.5-1.5s1.5,0.67,1.5,1.5 S14.33,10.5,13.5,10.5z M4,8c0-0.31,0.02-0.64,0.05-0.95C4.03,7.02,4,7.01,4,7V6h1v1c0,0.01,0.03,0.02,0.05,0.05 C5.37,5.74,6.29,4.93,7.4,4.28C7.15,4.81,7,5.4,7,6h2c0-1.1,0.9-2,2-2s2,0.9,2,2h2c0-1.1,0.9-2,2-2s2,0.9,2,2h2 c0-0.6-0.15-1.19-0.4-1.72c1.11,0.65,2.03,1.46,2.35,2.78C20.98,7.02,21,7.01,21,7V6h1v1c0,0.01-0.03,0.02-0.05,0.05 C21.98,7.36,22,7.68,22,8"/>  <path fill="%23fca5a5" d="M9,21.5h6v1.5h-6z"/> <path fill="%23fca5a5" d="M8,10C7.44,10,7,9.56,7,9s0.44-1,1-1s1,0.44,1,1S8.56,10,8,10z M16,10c-0.56,0-1-0.44-1-1s0.44-1,1-1s1,0.44,1,1 S16.56,10,16,10z"/></svg>')}.missionaries-cannibals-wrapper .mc-river{position:absolute;left:200px;right:200px;top:0;bottom:0;background:linear-gradient(to bottom,var(--river-light),var(--river-dark));z-index:2;overflow:hidden;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-river{background:linear-gradient(to bottom,#0f172a,#0c4a6e)}.missionaries-cannibals-wrapper .water-ripple{position:absolute;border-radius:50%;background-color:#ffffff4d;animation:ripple 8s linear infinite}.missionaries-cannibals-wrapper .ripple1{width:200px;height:200px;left:20%;top:30%}.missionaries-cannibals-wrapper .ripple2{width:160px;height:160px;right:25%;top:60%;animation-delay:2s}.missionaries-cannibals-wrapper .ripple3{width:180px;height:180px;left:40%;top:45%;animation-delay:4s}@keyframes ripple{0%{transform:scale(0);opacity:.8}to{transform:scale(2);opacity:0}}.missionaries-cannibals-wrapper .river-flow{position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,255,255,.1) 10px,rgba(255,255,255,.1) 20px);animation:flow 10s linear infinite}@keyframes flow{0%{background-position:0 0}to{background-position:50px 50px}}.missionaries-cannibals-wrapper .mc-boat{position:absolute;width:140px;height:80px;top:50%;margin-top:-40px;transition:left 1.5s ease-in-out;z-index:5}.missionaries-cannibals-wrapper .boat-body{position:relative;width:100%;height:50px;background-color:#92400e;border-radius:25px;display:flex;justify-content:center;align-items:center;cursor:pointer;box-shadow:0 5px 15px #0003;z-index:3;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .boat-body{background-color:#78350f;box-shadow:0 5px 15px #0006}.missionaries-cannibals-wrapper .boat-body:before{content:"";position:absolute;top:-10px;left:10px;right:10px;height:10px;background-color:#b45309;border-radius:5px 5px 0 0;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .boat-body:before{background-color:#92400e}.missionaries-cannibals-wrapper .boat-paddle{position:absolute;top:0;right:10px;width:10px;height:50px;background-color:#92400e;animation:paddle 2s ease-in-out infinite;transform-origin:bottom center;z-index:2;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .boat-paddle{background-color:#78350f}@keyframes paddle{0%,to{transform:rotate(-15deg)}50%{transform:rotate(15deg)}}.missionaries-cannibals-wrapper .boat-left{left:220px}.missionaries-cannibals-wrapper .boat-right{left:calc(100% - 340px)}.missionaries-cannibals-wrapper .moving{animation:boat-rock 1.5s ease-in-out}@keyframes boat-rock{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-10px) rotate(-3deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(-10px) rotate(3deg)}}.missionaries-cannibals-wrapper .hint-boat{animation:hint-glow 1.5s infinite alternate}@keyframes hint-glow{0%{box-shadow:0 0 15px #3b82f680}to{box-shadow:0 0 30px #3b82f6cc}}.missionaries-cannibals-wrapper .boat-passenger{width:35px;height:55px;margin:0 5px;cursor:pointer;position:relative;bottom:30px;transition:all .3s ease}.missionaries-cannibals-wrapper .boat-passenger:hover{transform:translateY(-5px)}.missionaries-cannibals-wrapper .boat-passenger .person-icon{width:100%;height:100%;background-size:contain;background-position:center;background-repeat:no-repeat}.missionaries-cannibals-wrapper .boat-empty-message{font-size:1rem;color:#ffffffb3;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);white-space:nowrap;text-shadow:0 2px 4px rgba(0,0,0,.3);opacity:.7;animation:pulse 2s infinite alternate}.missionaries-cannibals-wrapper .boat-action-indicator{position:absolute;bottom:-30px;left:50%;transform:translate(-50%);background-color:#0009;color:#fff;padding:5px 10px;border-radius:4px;font-size:.8rem;white-space:nowrap;animation:pulse 1.5s infinite alternate}@keyframes pulse{0%{opacity:.5;transform:translate(-50%) scale(.95)}to{opacity:.9;transform:translate(-50%) scale(1.05)}}.missionaries-cannibals-wrapper .mc-action-bar{display:flex;justify-content:center;gap:15px;margin-bottom:30px;flex-wrap:wrap}.missionaries-cannibals-wrapper .mc-button{padding:12px 24px;font-size:1rem;font-weight:600;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow);display:flex;align-items:center;gap:8px}.missionaries-cannibals-wrapper .mc-button:hover:not(:disabled){transform:translateY(-5px);box-shadow:0 10px 20px #00000026}.missionaries-cannibals-wrapper .mc-button:disabled{opacity:.5;cursor:not-allowed}.missionaries-cannibals-wrapper .button-icon{font-size:1.2rem}.missionaries-cannibals-wrapper .undo-btn{background-color:var(--warning)}.missionaries-cannibals-wrapper .undo-btn:hover:not(:disabled){background-color:var(--warning-dark)}.missionaries-cannibals-wrapper .undo-btn.disabled{background-color:#9ca3af;cursor:not-allowed}.missionaries-cannibals-wrapper .hint-btn{background-color:var(--secondary)}.missionaries-cannibals-wrapper .hint-btn:hover:not(:disabled){background-color:var(--secondary-dark)}.missionaries-cannibals-wrapper .solution-btn{background-color:var(--success)}.missionaries-cannibals-wrapper .solution-btn:hover:not(:disabled){background-color:var(--success-dark)}.missionaries-cannibals-wrapper .state-table-btn{background-color:var(--warning)}.missionaries-cannibals-wrapper .state-table-btn:hover:not(:disabled){background-color:var(--warning-dark)}.missionaries-cannibals-wrapper .history-btn{background-color:var(--primary)}.missionaries-cannibals-wrapper .history-btn:hover:not(:disabled){background-color:var(--primary-dark)}.missionaries-cannibals-wrapper .primary-btn{background-color:var(--primary)}.missionaries-cannibals-wrapper .primary-btn:hover:not(:disabled){background-color:var(--primary-dark)}.missionaries-cannibals-wrapper .secondary-btn{background-color:transparent;color:var(--primary);border:2px solid var(--primary)}.missionaries-cannibals-wrapper .secondary-btn:hover:not(:disabled){background-color:var(--primary);color:#fff}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .secondary-btn{color:var(--primary-light);border-color:var(--primary-light)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .secondary-btn:hover:not(:disabled){background-color:var(--primary-light);color:var(--bg-dark)}.missionaries-cannibals-wrapper .mc-solution{background-color:var(--card-light);border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:var(--shadow);animation:fadeIn .5s ease-in-out;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-solution{background-color:var(--card-dark);box-shadow:var(--shadow-dark)}.missionaries-cannibals-wrapper .mc-solution h3{font-size:1.5rem;color:var(--primary);margin-bottom:20px;text-align:center;border-bottom:1px solid var(--border-light);padding-bottom:10px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-solution h3{color:var(--primary-light);border-bottom-color:var(--border-dark)}.missionaries-cannibals-wrapper .solution-steps{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.missionaries-cannibals-wrapper .solution-step{background-color:var(--bg-light);padding:15px;border-radius:8px;box-shadow:0 2px 5px #00000008;font-size:.95rem;transition:var(--animation-slow);display:flex;align-items:center}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .solution-step{background-color:var(--bg-dark);box-shadow:0 2px 5px #0000001a}.missionaries-cannibals-wrapper .solution-step:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 8px 15px #0000000d}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .solution-step:hover{box-shadow:0 8px 15px #0003}.missionaries-cannibals-wrapper .step-number{font-weight:700;color:var(--primary);margin-right:12px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .step-number{color:var(--primary-light)}.missionaries-cannibals-wrapper .solution-step.current-state{background-color:#3b82f61a;border-left:3px solid var(--primary);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .solution-step.current-state{background-color:#3b82f633}.missionaries-cannibals-wrapper .mc-state-table{background-color:var(--card-light);border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:var(--shadow);animation:fadeIn .5s ease-in-out;overflow-x:auto;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-state-table{background-color:var(--card-dark);box-shadow:var(--shadow-dark)}.missionaries-cannibals-wrapper .mc-state-table h3{font-size:1.5rem;color:var(--primary);margin-bottom:20px;text-align:center;border-bottom:1px solid var(--border-light);padding-bottom:10px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-state-table h3{color:var(--primary-light);border-bottom-color:var(--border-dark)}.missionaries-cannibals-wrapper .state-table-container{overflow-x:auto}.missionaries-cannibals-wrapper .state-table{width:100%;border-collapse:collapse;font-size:.95rem;box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.missionaries-cannibals-wrapper .state-table th{padding:15px;text-align:center;font-weight:600;color:#fff}.missionaries-cannibals-wrapper .state-table th.bank-1,.missionaries-cannibals-wrapper .state-table th.bank-2{background-color:#b91c1c}.missionaries-cannibals-wrapper .state-table th.river{background-color:#0284c7}.missionaries-cannibals-wrapper .state-table th.remarks{background-color:#4b5563}.missionaries-cannibals-wrapper .state-table td{padding:15px;text-align:center;transition:var(--transition)}.missionaries-cannibals-wrapper .state-table tr.even-row td{background-color:#1e293b;color:#fff}.missionaries-cannibals-wrapper .state-table tr.odd-row td{background-color:#334155;color:#fff}.missionaries-cannibals-wrapper .state-table tr.goal-state td{background-color:#15803d;color:#fff;font-weight:700}.missionaries-cannibals-wrapper .state-table tr.current-state td{background-color:#1e40af;color:#fff;position:relative}.missionaries-cannibals-wrapper .state-table tr.current-state td:after{content:"▶";position:absolute;left:5px;color:#fcd34d;animation:pulse 1.5s infinite}.missionaries-cannibals-wrapper .mc-history{background-color:var(--card-light);border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:var(--shadow);animation:fadeIn .5s ease-in-out;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-history{background-color:var(--card-dark);box-shadow:var(--shadow-dark)}.missionaries-cannibals-wrapper .mc-history h3{font-size:1.5rem;color:var(--primary);margin-bottom:20px;text-align:center;border-bottom:1px solid var(--border-light);padding-bottom:10px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-history h3{color:var(--primary-light);border-bottom-color:var(--border-dark)}.missionaries-cannibals-wrapper .history-container{max-height:400px;overflow-y:auto;padding-right:10px}.missionaries-cannibals-wrapper .no-history{text-align:center;color:var(--text-muted);padding:30px;font-size:1.1rem;transition:var(--transition)}.missionaries-cannibals-wrapper .history-list{display:flex;flex-direction:column;gap:10px}.missionaries-cannibals-wrapper .history-item{display:flex;align-items:center;gap:15px;background-color:var(--bg-light);padding:15px;border-radius:8px;box-shadow:0 2px 5px #00000008;transition:var(--animation-slow)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .history-item{background-color:var(--bg-dark);box-shadow:0 2px 5px #0000001a}.missionaries-cannibals-wrapper .history-item:hover{transform:translate(5px);box-shadow:0 5px 15px #0000000d}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .history-item:hover{box-shadow:0 5px 15px #0003}.missionaries-cannibals-wrapper .history-icon{width:35px;height:35px;background-color:var(--primary);color:#fff;border-radius:50%;display:flex;justify-content:center;align-items:center;font-weight:700;flex-shrink:0;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .history-icon{background-color:var(--primary-dark)}.missionaries-cannibals-wrapper .history-item.initial .history-icon{background-color:var(--success);font-size:1.2rem}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .history-item.initial .history-icon{background-color:var(--success-dark)}.missionaries-cannibals-wrapper .history-text{flex:1;display:flex;flex-direction:column}.missionaries-cannibals-wrapper .history-title{font-weight:600;color:var(--success);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .history-title{color:var(--success)}.missionaries-cannibals-wrapper .history-move{font-weight:500;color:var(--text-dark);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .history-move{color:var(--text-light)}.missionaries-cannibals-wrapper .history-state{font-size:.85rem;color:var(--text-muted);margin-top:5px;transition:var(--transition)}.missionaries-cannibals-wrapper .status-content{max-width:500px;text-align:center;padding:40px 30px}.missionaries-cannibals-wrapper .win-content{background-color:#ecfdf5;border:3px solid var(--success);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .win-content{background-color:#065f46;border-color:#10b981}.missionaries-cannibals-wrapper .lose-content{background-color:#fef2f2;border:3px solid var(--danger);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .lose-content{background-color:#7f1d1d;border-color:#ef4444}.missionaries-cannibals-wrapper .status-content h2{font-size:2.5rem;margin-bottom:15px;transition:var(--transition)}.missionaries-cannibals-wrapper .win-content h2{color:var(--success)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .win-content h2{color:#a7f3d0}.missionaries-cannibals-wrapper .lose-content h2{color:var(--danger)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .lose-content h2{color:#fca5a5}.missionaries-cannibals-wrapper .status-content p{font-size:1.4rem;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.3);margin-bottom:25px;transition:var(--transition)}.missionaries-cannibals-wrapper .celebration-animation{height:80px;margin:20px 0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 60'%3E%3Cpath fill='%2310b981' d='M30,10 L40,30 L20,30 Z'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='2s' repeatCount='indefinite' begin='0.1s' /%3E%3C/path%3E%3Cpath fill='%233b82f6' d='M70,20 L80,40 L60,40 Z'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='2s' repeatCount='indefinite' begin='0.5s' /%3E%3C/path%3E%3Cpath fill='%23f59e0b' d='M110,10 L120,30 L100,30 Z'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='2s' repeatCount='indefinite' begin='0.9s' /%3E%3C/path%3E%3Cpath fill='%238b5cf6' d='M150,20 L160,40 L140,40 Z'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='2s' repeatCount='indefinite' begin='1.3s' /%3E%3C/path%3E%3Ccircle fill='%23ef4444' cx='30' cy='30' r='5'%3E%3Canimate attributeName='cy' values='30;20;30' dur='1s' repeatCount='indefinite' begin='0.2s' /%3E%3C/circle%3E%3Ccircle fill='%23fcd34d' cx='70' cy='30' r='5'%3E%3Canimate attributeName='cy' values='30;20;30' dur='1s' repeatCount='indefinite' begin='0.6s' /%3E%3C/circle%3E%3Ccircle fill='%2310b981' cx='110' cy='30' r='5'%3E%3Canimate attributeName='cy' values='30;20;30' dur='1s' repeatCount='indefinite' begin='1.0s' /%3E%3C/circle%3E%3Ccircle fill='%23a78bfa' cx='150' cy='30' r='5'%3E%3Canimate attributeName='cy' values='30;20;30' dur='1s' repeatCount='indefinite' begin='1.4s' /%3E%3C/circle%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}.missionaries-cannibals-wrapper .lost-animation{height:100px;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="red"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z" /></svg>');background-repeat:no-repeat;background-position:center;background-size:80px;margin-bottom:20px;animation:shake .5s cubic-bezier(.36,.07,.19,.97) 2}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-10px)}20%,40%,60%,80%{transform:translate(10px)}}.missionaries-cannibals-wrapper .lost-explanation,.missionaries-cannibals-wrapper .state-analysis{background-color:#ef44441a;padding:15px;border-radius:8px;margin-bottom:25px;transition:var(--transition)}.missionaries-cannibals-wrapper .state-analysis{background-color:#3b82f61a}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .lost-explanation{background-color:#ef444433}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .state-analysis{background-color:#3b82f633}.missionaries-cannibals-wrapper .lost-explanation h4,.missionaries-cannibals-wrapper .state-analysis h4{font-size:1.1rem;color:var(--danger);margin-bottom:10px;transition:var(--transition)}.missionaries-cannibals-wrapper .state-analysis h4{color:var(--primary)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .lost-explanation h4{color:#fca5a5}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .state-analysis h4{color:var(--primary-light)}.missionaries-cannibals-wrapper .game-stats{background-color:#ffffff80;border-radius:12px;padding:15px;margin-bottom:20px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .game-stats{background-color:#0003}.missionaries-cannibals-wrapper .stat-row{display:flex;justify-content:space-between;padding:8px 15px;border-bottom:1px solid var(--border-light);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .stat-row{border-bottom-color:var(--border-dark)}.missionaries-cannibals-wrapper .stat-row:last-child{border-bottom:none}.missionaries-cannibals-wrapper .star-rating{margin:20px 0;font-size:2.5rem}.missionaries-cannibals-wrapper .star{color:#d1d5db;margin:0 5px;transition:var(--animation-slow)}.missionaries-cannibals-wrapper .star.filled{color:#f59e0b;transform:scale(1.2);animation:star-pop .5s ease-out}@keyframes star-pop{0%{transform:scale(.5);opacity:0}80%{transform:scale(1.3)}to{transform:scale(1.2);opacity:1}}.missionaries-cannibals-wrapper .achievement{display:flex;flex-direction:column;align-items:center;margin:25px 0}.missionaries-cannibals-wrapper .trophy,.missionaries-cannibals-wrapper .medal{font-size:3rem;margin-bottom:10px;animation:bounce 1s ease infinite alternate}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.missionaries-cannibals-wrapper .achievement-text{font-size:1.2rem;font-weight:700;color:var(--primary);transition:var(--transition)}.missionaries-cannibals-wrapper .achievement-desc{margin-top:5px;font-size:.9rem;color:var(--text-muted)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .achievement-text{color:var(--primary-light)}.missionaries-cannibals-wrapper .mc-footer{background-color:var(--card-light);padding:30px 20px;border-top:1px solid var(--border-light);border-radius:0 0 16px 16px;margin-top:50px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .mc-footer{background-color:var(--card-dark);border-top-color:var(--border-dark)}.missionaries-cannibals-wrapper .footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-bottom:30px}.missionaries-cannibals-wrapper .footer-section h4{font-size:1.4rem;color:var(--primary);margin-bottom:15px;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .footer-section h4{color:var(--primary-light)}.missionaries-cannibals-wrapper .footer-section p{color:var(--text-muted);line-height:1.6;transition:var(--transition)}.missionaries-cannibals-wrapper .footer-section ul{list-style:none;padding:0;margin:0}.missionaries-cannibals-wrapper .footer-section li{margin-bottom:8px;color:var(--text-muted);padding-left:15px;position:relative;transition:var(--transition)}.missionaries-cannibals-wrapper .footer-section li:before{content:"•";position:absolute;left:0;color:var(--primary);transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .footer-section li:before{color:var(--primary-light)}.missionaries-cannibals-wrapper .footer-bottom{text-align:center;padding-top:20px;border-top:1px solid var(--border-light);color:var(--text-muted);font-size:.9rem;transition:var(--transition)}.missionaries-cannibals-wrapper .missionaries-cannibals-container.dark .footer-bottom{border-top-color:var(--border-dark)}@media (max-width: 900px){.missionaries-cannibals-wrapper .mc-navbar{flex-direction:column;gap:15px}.missionaries-cannibals-wrapper .mc-logo,.missionaries-cannibals-wrapper .mc-controls{justify-content:center}.missionaries-cannibals-wrapper .mc-game-area{height:400px}.missionaries-cannibals-wrapper .mc-bank{width:150px}.missionaries-cannibals-wrapper .mc-river{left:150px;right:150px}.missionaries-cannibals-wrapper .boat-left{left:170px}.missionaries-cannibals-wrapper .boat-right{left:calc(100% - 290px)}.missionaries-cannibals-wrapper .state-table th,.missionaries-cannibals-wrapper .state-table td{padding:10px;font-size:.9rem}}@media (max-width: 700px){.missionaries-cannibals-wrapper .mc-game-area{height:350px}.missionaries-cannibals-wrapper .mc-bank{width:120px}.missionaries-cannibals-wrapper .mc-river{left:120px;right:120px}.missionaries-cannibals-wrapper .boat-left{left:140px}.missionaries-cannibals-wrapper .boat-right{left:calc(100% - 260px)}.missionaries-cannibals-wrapper .person,.missionaries-cannibals-wrapper .boat-passenger{width:40px;height:60px;margin:4px}.missionaries-cannibals-wrapper .bank-people{bottom:120px}.missionaries-cannibals-wrapper .mc-action-bar{flex-direction:column;align-items:center}.missionaries-cannibals-wrapper .mc-button{width:100%;justify-content:center}.missionaries-cannibals-wrapper .solution-steps{grid-template-columns:1fr}}@media (max-width: 500px){.missionaries-cannibals-wrapper .mc-logo h1{font-size:1.5rem}.missionaries-cannibals-wrapper .mc-game-area{height:300px}.missionaries-cannibals-wrapper .mc-bank{width:100px}.missionaries-cannibals-wrapper .mc-river{left:100px;right:100px}.missionaries-cannibals-wrapper .boat-left{left:120px}.missionaries-cannibals-wrapper .boat-right{left:calc(100% - 220px)}.missionaries-cannibals-wrapper .person,.missionaries-cannibals-wrapper .boat-passenger{width:35px;height:50px;margin:2px}.missionaries-cannibals-wrapper .bank-people{bottom:100px}.missionaries-cannibals-wrapper .mc-boat{width:100px}.missionaries-cannibals-wrapper .bank-count{bottom:40px}.missionaries-cannibals-wrapper .bank-label{bottom:15px;font-size:.9rem}.missionaries-cannibals-wrapper .mc-stats{flex-wrap:wrap}.missionaries-cannibals-wrapper .stat-item{flex:1;min-width:100px;padding:10px}.missionaries-cannibals-wrapper .stat-value{font-size:1.5rem}.missionaries-cannibals-wrapper .state-table th,.missionaries-cannibals-wrapper .state-table td{padding:8px 5px;font-size:.8rem}.missionaries-cannibals-wrapper .how-to-play-content{padding:15px}.missionaries-cannibals-wrapper .button-group{flex-direction:column}}.water-jug-wrapper{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.water-jug-wrapper .wj-water-jug-container{min-height:100vh;width:100%;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#e0f2fe,#bfdbfe);padding:20px;box-sizing:border-box}.water-jug-wrapper .wj-water-jug-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;width:100%;max-width:1200px;overflow:hidden;display:flex;flex-direction:column;padding:20px}.water-jug-wrapper .wj-problem-header{text-align:center;padding-bottom:15px;border-bottom:1px solid #e5e7eb;margin-bottom:20px;position:relative}.water-jug-wrapper .wj-problem-header h1{font-size:2.2rem;font-weight:800;color:#1e40af;margin:0 0 10px;text-shadow:0 1px 2px rgba(0,0,0,.1)}.water-jug-wrapper .wj-problem-header p{font-size:1.1rem;color:#4b5563;max-width:800px;margin:0 auto 15px;line-height:1.5}.water-jug-wrapper .wj-tutorial-button-wrapper{display:flex;justify-content:center}.water-jug-wrapper .wj-tutorial-button{background-color:#dbeafe;color:#1e40af;border:none;padding:8px 16px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center}.water-jug-wrapper .wj-tutorial-button:hover{background-color:#bfdbfe;transform:translateY(-2px)}.water-jug-wrapper .wj-game-status-bar{display:flex;justify-content:space-between;margin-bottom:20px;background-color:#f9fafb;border-radius:10px;padding:12px}.water-jug-wrapper .wj-status-box{flex:1;text-align:center;padding:8px;border-radius:8px;background-color:#f3f4f6;margin:0 5px;box-shadow:0 2px 5px #0000000d}.water-jug-wrapper .wj-status-label{font-size:.85rem;color:#6b7280;font-weight:600;margin-bottom:5px}.water-jug-wrapper .wj-status-value{font-size:1.1rem;font-weight:700;color:#1e40af}.water-jug-wrapper .wj-game-area{display:flex;gap:20px;flex:1}.water-jug-wrapper .wj-jugs-section{flex:1;display:flex;flex-direction:column}.water-jug-wrapper .wj-controls-section{flex:1;display:flex;flex-direction:column;background-color:#f9fafb;border-radius:12px;padding:15px;box-shadow:0 5px 15px #0000000d}.water-jug-wrapper .wj-controls-header{font-size:1.2rem;font-weight:700;color:#1e40af;margin-bottom:15px;text-align:center;padding-bottom:10px;border-bottom:1px solid #e5e7eb}.water-jug-wrapper .wj-jugs-visualization{display:flex;justify-content:center;gap:60px;padding:20px;flex:1}.water-jug-wrapper .wj-jug-container{display:flex;flex-direction:column;align-items:center}.water-jug-wrapper .wj-jug-label{font-size:1.2rem;font-weight:700;color:#1e40af;margin-bottom:15px;text-align:center}.water-jug-wrapper .wj-jug{position:relative;background-color:#dbeafe4d;border:4px solid #93c5fd;border-radius:10px 10px 20px 20px;overflow:hidden;transition:all .3s ease;box-shadow:0 5px 15px #0000001a}.water-jug-wrapper .wj-jug-large{width:160px;height:280px}.water-jug-wrapper .wj-jug-medium{width:140px;height:240px}.water-jug-wrapper .wj-jug.wj-receiving{box-shadow:0 0 20px #3b82f699;transform:scale(1.05)}.water-jug-wrapper .wj-jug.wj-pouring{transform:rotate(-5deg)}.water-jug-wrapper .wj-jug.wj-target-achieved{box-shadow:0 0 25px #10b981b3;border-color:#10b981}.water-jug-wrapper .wj-jug-scale{position:absolute;left:0;right:0;top:0;bottom:0;pointer-events:none}.water-jug-wrapper .wj-scale-line{position:absolute;left:0;right:0;border-top:1px dashed rgba(107,114,128,.4);display:flex;justify-content:flex-end}.water-jug-wrapper .wj-scale-line span{background-color:#fffc;font-size:.7rem;color:#4b5563;padding:1px 4px;border-radius:3px;margin-right:5px;font-weight:600}.water-jug-wrapper .wj-line-4{top:0%}.water-jug-wrapper .wj-line-3{top:25%}.water-jug-wrapper .wj-line-2{top:50%}.water-jug-wrapper .wj-line-1{top:75%}.water-jug-wrapper .wj-line-0{bottom:0}.water-jug-wrapper .wj-target-line{border-top:2px dashed #10b981}.water-jug-wrapper .wj-target-line span{background-color:#10b981;color:#fff}.water-jug-wrapper .wj-water{position:absolute;bottom:0;width:100%;background:linear-gradient(180deg,#60a5fa,#2563eb);transition:height .5s cubic-bezier(.34,1.56,.64,1)}.water-jug-wrapper .wj-water-waves{position:absolute;top:0;left:0;right:0;height:10px;background:linear-gradient(90deg,#fff0,#ffffff4d,#fff0);animation:wj-wave 2s infinite linear}@keyframes wj-wave{0%{transform:translate(-100%)}to{transform:translate(100%)}}.water-jug-wrapper .wj-jug-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2.5rem;font-weight:800;color:#1e40af;text-shadow:0 0 10px rgba(255,255,255,.7);z-index:2}.water-jug-wrapper .wj-water-stream{position:absolute;background-color:#3b82f6;opacity:.7}.water-jug-wrapper .wj-incoming-stream{width:10px;height:80px;top:-80px;left:50%;transform:translate(-50%);animation:wj-pour-in 1s infinite}.water-jug-wrapper .wj-outgoing-stream{width:10px;height:80px;bottom:-80px;left:50%;transform:translate(-50%);animation:wj-pour-out 1s infinite}@keyframes wj-pour-in{0%{height:0;top:-10px}to{height:80px;top:-80px}}@keyframes wj-pour-out{0%{height:0;bottom:-10px}to{height:80px;bottom:-80px}}.water-jug-wrapper .wj-progress-container{margin-top:20px;padding:12px 15px;background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d}.water-jug-wrapper .wj-progress-label{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.95rem;color:#6b7280;font-weight:600}.water-jug-wrapper .wj-progress-bar-wrapper{height:10px;background-color:#e5e7eb;border-radius:5px;overflow:hidden}.water-jug-wrapper .wj-progress-bar-fill{height:100%;background:linear-gradient(to right,#3b82f6,#10b981);border-radius:5px;transition:width .5s ease}.water-jug-wrapper .wj-operations-grid{display:flex;flex-direction:column;gap:15px;flex:1}.water-jug-wrapper .wj-operation-group{background-color:#fff;border-radius:10px;padding:12px;box-shadow:0 2px 8px #0000000d}.water-jug-wrapper .wj-group-label{font-size:1rem;font-weight:700;color:#4b5563;margin-bottom:10px;padding-bottom:5px;border-bottom:1px solid #e5e7eb}.water-jug-wrapper .wj-group-buttons{display:flex;gap:10px}.water-jug-wrapper .wj-operation-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 10px;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;position:relative;box-shadow:0 3px 10px #0000001a;border:none}.water-jug-wrapper .wj-operation-btn:hover:not(.wj-disabled){transform:translateY(-3px);box-shadow:0 5px 15px #00000026}.water-jug-wrapper .wj-operation-btn.wj-disabled{opacity:.5;cursor:not-allowed}.water-jug-wrapper .wj-operation-btn.wj-selected{box-shadow:0 0 0 3px #3b82f680}.water-jug-wrapper .wj-operation-btn.wj-hint{animation:wj-hint-pulse 1.5s infinite}.water-jug-wrapper .wj-fill-btn{background-color:#ecfdf5;color:#065f46;border:2px solid #10b981}.water-jug-wrapper .wj-fill-btn:hover:not(.wj-disabled){background-color:#d1fae5}.water-jug-wrapper .wj-pour-btn{background-color:#eff6ff;color:#1e40af;border:2px solid #3b82f6}.water-jug-wrapper .wj-pour-btn:hover:not(.wj-disabled){background-color:#dbeafe}.water-jug-wrapper .wj-empty-btn{background-color:#fff7ed;color:#9a3412;border:2px solid #f97316}.water-jug-wrapper .wj-empty-btn:hover:not(.wj-disabled){background-color:#ffedd5}@keyframes wj-hint-pulse{0%{box-shadow:0 0 #8b5cf6b3}70%{box-shadow:0 0 0 10px #8b5cf600}to{box-shadow:0 0 #8b5cf600}}.water-jug-wrapper .wj-btn-icon{font-size:1.8rem;margin-bottom:10px}.water-jug-wrapper .wj-btn-text{font-weight:600;text-align:center;font-size:.9rem}.water-jug-wrapper .wj-hint-indicator{position:absolute;top:-10px;right:-10px;font-size:1.2rem;background-color:#fff;border-radius:50%;width:25px;height:25px;display:flex;justify-content:center;align-items:center;box-shadow:0 2px 5px #0003}.water-jug-wrapper .wj-utility-buttons{display:flex;gap:10px;margin-top:20px}.water-jug-wrapper .wj-utility-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:10px 15px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 3px 10px #0000001a}.water-jug-wrapper .wj-utility-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #00000026}.water-jug-wrapper .wj-utility-btn:disabled{opacity:.6;cursor:not-allowed}.water-jug-wrapper .wj-utility-icon{margin-right:8px;font-size:1.1rem}.water-jug-wrapper .wj-hint-btn{background-color:#8b5cf6;color:#fff}.water-jug-wrapper .wj-hint-btn:hover:not(:disabled){background-color:#7c3aed}.water-jug-wrapper .wj-solution-btn{background-color:#10b981;color:#fff}.water-jug-wrapper .wj-solution-btn:hover{background-color:#059669}.water-jug-wrapper .wj-rules-btn{background-color:#3b82f6;color:#fff}.water-jug-wrapper .wj-rules-btn:hover{background-color:#2563eb}.water-jug-wrapper .wj-reset-btn{background-color:#ef4444;color:#fff}.water-jug-wrapper .wj-reset-btn:hover:not(:disabled){background-color:#dc2626}.water-jug-wrapper .wj-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:100;animation:wj-fadeIn .3s ease}@keyframes wj-fadeIn{0%{opacity:0}to{opacity:1}}.water-jug-wrapper .wj-modal-content{background-color:#fff;border-radius:15px;max-width:800px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 15px 50px #0003;animation:wj-pop-in .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes wj-pop-in{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.water-jug-wrapper .wj-modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb;border-radius:15px 15px 0 0}.water-jug-wrapper .wj-modal-header h3{font-size:1.5rem;color:#1e40af;margin:0}.water-jug-wrapper .wj-close-modal{background:none;border:none;font-size:1.8rem;color:#6b7280;cursor:pointer;transition:color .2s ease;line-height:1}.water-jug-wrapper .wj-close-modal:hover{color:#1e40af}.water-jug-wrapper .wj-modal-body{padding:20px;overflow-y:auto;flex:1}.water-jug-wrapper .wj-tutorial-section{margin-bottom:20px}.water-jug-wrapper .wj-tutorial-section h4{color:#1e40af;font-size:1.2rem;margin:0 0 10px}.water-jug-wrapper .wj-tutorial-section p{font-size:1rem;line-height:1.6;color:#4b5563;margin:0 0 10px}.water-jug-wrapper .wj-tutorial-list{list-style-type:none;padding:0;margin:0}.water-jug-wrapper .wj-tutorial-list li{padding:8px 0;display:flex;align-items:center;gap:10px}.water-jug-wrapper .wj-tutorial-action{padding:3px 8px;border-radius:5px;font-weight:600;font-size:.9rem}.water-jug-wrapper .wj-tutorial-action.wj-fill{background-color:#ecfdf5;color:#065f46;border:1px solid #10b981}.water-jug-wrapper .wj-tutorial-action.wj-pour{background-color:#eff6ff;color:#1e40af;border:1px solid #3b82f6}.water-jug-wrapper .wj-tutorial-action.wj-empty{background-color:#fff7ed;color:#9a3412;border:1px solid #f97316}.water-jug-wrapper .wj-start-game-btn{margin-top:20px;padding:12px 25px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:block;margin-left:auto;margin-right:auto}.water-jug-wrapper .wj-start-game-btn:hover{background-color:#2563eb;transform:translateY(-2px);box-shadow:0 5px 15px #00000026}.water-jug-wrapper .wj-solution-steps{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}.water-jug-wrapper .wj-solution-step{display:flex;align-items:center;padding:15px;background-color:#f9fafb;border-radius:10px;position:relative;transition:all .2s ease;box-shadow:0 2px 5px #0000000d}.water-jug-wrapper .wj-solution-step:hover{transform:translateY(-2px);box-shadow:0 5px 15px #00000014}.water-jug-wrapper .wj-step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background-color:#e5e7eb;color:#4b5563;font-weight:600;border-radius:50%;margin-right:12px;font-size:.9rem}.water-jug-wrapper .wj-step-content{flex:1}.water-jug-wrapper .wj-step-state{font-size:1rem;font-weight:700;color:#1e40af;margin-bottom:5px}.water-jug-wrapper .wj-step-description{font-size:.9rem;color:#6b7280}.water-jug-wrapper .wj-current-step{background-color:#dbeafe;border-left:4px solid #3b82f6}.water-jug-wrapper .wj-current-step .wj-step-number{background-color:#3b82f6;color:#fff}.water-jug-wrapper .wj-completed-step{background-color:#f0fdf4;border-left:4px solid #10b981}.water-jug-wrapper .wj-completed-step .wj-step-number{background-color:#10b981;color:#fff}.water-jug-wrapper .wj-current-marker{position:absolute;right:10px;font-size:1.2rem;color:#3b82f6;animation:wj-marker-pulse 1s infinite alternate}@keyframes wj-marker-pulse{0%{transform:translate(0)}to{transform:translate(3px)}}.water-jug-wrapper .wj-rules-modal .wj-modal-body{padding:0}.water-jug-wrapper .wj-rules-table{width:100%;border-collapse:collapse;font-size:.9rem}.water-jug-wrapper .wj-rules-table th{background-color:#f3f4f6;color:#1e40af;font-weight:600;text-align:left;padding:12px 15px;position:sticky;top:0;z-index:1}.water-jug-wrapper .wj-rules-table td{border-top:1px solid #e5e7eb;padding:12px 15px;color:#4b5563}.water-jug-wrapper .wj-rules-table tr:hover td{background-color:#f9fafb}.water-jug-wrapper .wj-success-modal .wj-modal-body{text-align:center;padding:25px}.water-jug-wrapper .wj-success-icon{font-size:4rem;margin:10px 0 20px;animation:wj-bounce 1s infinite alternate}@keyframes wj-bounce{0%{transform:scale(1)}to{transform:scale(1.2)}}.water-jug-wrapper .wj-success-message p{font-size:1.3rem;color:#065f46;margin-bottom:25px}.water-jug-wrapper .wj-success-details{background-color:#f9fafb;border-radius:10px;padding:20px;margin-bottom:25px;text-align:left;box-shadow:0 2px 8px #0000000d inset}.water-jug-wrapper .wj-detail-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e5e7eb}.water-jug-wrapper .wj-detail-item:last-child{border-bottom:none}.water-jug-wrapper .wj-detail-label{font-weight:600;color:#4b5563}.water-jug-wrapper .wj-detail-value{font-weight:700;color:#1e40af}.water-jug-wrapper .wj-success-rating{font-size:2.5rem;color:#d1d5db;margin:20px 0}.water-jug-wrapper .wj-rating-star{margin:0 5px;transition:all .5s ease}.water-jug-wrapper .wj-rating-star:not(.wj-inactive){color:#f59e0b;transform:scale(1.2)}.water-jug-wrapper .wj-play-again-btn{padding:12px 30px;background-color:#10b981;color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 3px 10px #0000001a}.water-jug-wrapper .wj-play-again-btn:hover{background-color:#059669;transform:translateY(-3px);box-shadow:0 6px 15px #00000026}@media (max-width: 992px){.water-jug-wrapper .wj-game-area{flex-direction:column}.water-jug-wrapper .wj-jugs-visualization{gap:30px}.water-jug-wrapper .wj-group-buttons{flex-wrap:wrap}.water-jug-wrapper .wj-operation-btn{min-width:120px}}@media (max-width: 576px){.water-jug-wrapper .wj-status-box{padding:5px}.water-jug-wrapper .wj-status-value{font-size:.9rem}.water-jug-wrapper .wj-jug-large{width:120px;height:220px}.water-jug-wrapper .wj-jug-medium{width:100px;height:180px}.water-jug-wrapper .wj-jug-value{font-size:2rem}.water-jug-wrapper .wj-utility-btn{font-size:.9rem;padding:8px 10px}.water-jug-wrapper .wj-utility-btn span:not(.wj-utility-icon){display:none}.water-jug-wrapper .wj-operation-btn{padding:8px}.water-jug-wrapper .wj-btn-icon{font-size:1.4rem}}.block-world-wrapper{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.block-world-wrapper .bw-block-world-container{max-width:1000px;margin:0 auto;padding:30px;background:linear-gradient(to bottom,#f8f9fa,#e9ecef);border-radius:16px;box-shadow:0 8px 30px #0000001a;position:relative}.block-world-wrapper .bw-puzzle-header{text-align:center;margin-bottom:25px}.block-world-wrapper .bw-puzzle-header h1{font-size:2.8rem;font-weight:700;color:#1f2937;margin-bottom:15px;text-shadow:1px 1px 2px rgba(0,0,0,.1);background:linear-gradient(to right,#3b82f6,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.block-world-wrapper .bw-puzzle-description{font-size:1.1rem;color:#4b5563;max-width:700px;margin:0 auto 15px;line-height:1.6}.block-world-wrapper .bw-puzzle-buttons-top,.block-world-wrapper .bw-game-controls{display:flex;justify-content:center;gap:15px;margin:20px 0}.block-world-wrapper .bw-control-button{padding:12px 24px;font-size:1rem;font-weight:600;color:#fff;background-color:#3b82f6;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #0000001a;min-width:150px;text-align:center;position:relative;overflow:hidden}.block-world-wrapper .bw-control-button:hover{transform:translateY(-3px);box-shadow:0 6px 15px #00000026;background-color:#2563eb}.block-world-wrapper .bw-control-button:active{transform:translateY(-1px);box-shadow:0 3px 8px #0000001f}.block-world-wrapper .bw-control-button:after{content:"";position:absolute;top:50%;left:50%;width:5px;height:5px;background:#fff6;opacity:0;border-radius:100%;transform:scale(1) translate(-50%);transform-origin:50% 50%}.block-world-wrapper .bw-control-button:focus:not(:active):after{animation:bw-ripple 1s ease-out}@keyframes bw-ripple{0%{transform:scale(0);opacity:.5}20%{transform:scale(25);opacity:.3}to{opacity:0;transform:scale(40)}}.block-world-wrapper .bw-info-button{background-color:#4b5563}.block-world-wrapper .bw-info-button:hover{background-color:#374151}.block-world-wrapper .bw-new-game{background:linear-gradient(135deg,#3b82f6,#2563eb)}.block-world-wrapper .bw-new-game:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.block-world-wrapper .bw-reset{background:linear-gradient(135deg,#f59e0b,#d97706)}.block-world-wrapper .bw-reset:hover{background:linear-gradient(135deg,#d97706,#b45309)}.block-world-wrapper .bw-hint{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.block-world-wrapper .bw-hint:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9)}.block-world-wrapper .bw-puzzle-rules,.block-world-wrapper .bw-solution-steps,.block-world-wrapper .bw-solution-path,.block-world-wrapper .bw-puzzle-theory{background-color:#fff;border-radius:16px;padding:25px;margin:20px 0;box-shadow:0 4px 12px #0000000d;animation:bw-fadeIn .3s ease-in-out}.block-world-wrapper .bw-puzzle-rules h3,.block-world-wrapper .bw-solution-steps h3,.block-world-wrapper .bw-solution-path h3,.block-world-wrapper .bw-puzzle-theory h3{color:#1f2937;font-size:1.4rem;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #e5e7eb}.block-world-wrapper .bw-rule-section,.block-world-wrapper .bw-steps-content,.block-world-wrapper .bw-theory-section{margin-bottom:15px}.block-world-wrapper .bw-rule-section h4,.block-world-wrapper .bw-steps-content h4,.block-world-wrapper .bw-theory-section h4{color:#4b5563;font-size:1.1rem;margin-bottom:8px}.block-world-wrapper .bw-rule-section p,.block-world-wrapper .bw-rule-section ul,.block-world-wrapper .bw-steps-content p,.block-world-wrapper .bw-steps-content ul,.block-world-wrapper .bw-theory-section p{color:#6b7280;line-height:1.5;margin-bottom:8px}.block-world-wrapper .bw-rule-section ul,.block-world-wrapper .bw-steps-content ul{padding-left:25px}.block-world-wrapper .bw-rule-section li,.block-world-wrapper .bw-steps-content li{margin-bottom:5px}.block-world-wrapper .bw-advanced-tip{background-color:#f3f4f6;padding:15px;border-radius:12px;margin-top:15px;border-left:3px solid #8b5cf6}.block-world-wrapper .bw-advanced-tip h4{margin-bottom:8px;color:#1f2937}.block-world-wrapper .bw-tutorial-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;animation:bw-fadeIn .3s ease-in-out}.block-world-wrapper .bw-tutorial-content{background-color:#fff;border-radius:16px;padding:30px;max-width:500px;box-shadow:0 8px 30px #00000026}.block-world-wrapper .bw-tutorial-content h3{color:#1f2937;font-size:1.6rem;margin-bottom:15px;background:linear-gradient(to right,#3b82f6,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.block-world-wrapper .bw-tutorial-content p{color:#4b5563;line-height:1.6;margin-bottom:25px;font-size:1.1rem}.block-world-wrapper .bw-tutorial-nav{display:flex;justify-content:space-between}.block-world-wrapper .bw-puzzle-container{display:flex;justify-content:center;gap:60px;margin:25px 0}.block-world-wrapper .bw-goal-state,.block-world-wrapper .bw-current-state{display:flex;flex-direction:column;align-items:center}.block-world-wrapper .bw-goal-state h3,.block-world-wrapper .bw-current-state h3{margin-bottom:15px;font-size:1.2rem;color:#4b5563;text-align:center;background-color:#fffc;padding:10px 20px;border-radius:30px;box-shadow:0 2px 6px #0000000d}.block-world-wrapper .bw-alternating-goal-grid,.block-world-wrapper .bw-alternating-current-grid{display:flex;flex-direction:column;gap:10px;padding:20px;background-color:#f3f4f6;border-radius:12px;box-shadow:0 4px 12px #00000014;margin-top:20px}.block-world-wrapper .bw-alternating-goal-row,.block-world-wrapper .bw-alternating-current-row{display:flex;gap:10px}.block-world-wrapper .bw-alternating-goal-cell{width:80px;height:80px;background-color:#fff;border-radius:8px;display:flex;justify-content:center;align-items:center;font-size:2rem;font-weight:700;box-shadow:0 2px 4px #0000001a}.block-world-wrapper .bw-alternating-current-cell{width:100px;height:100px;background-color:#fff;border-radius:8px;display:flex;justify-content:center;align-items:center;box-shadow:0 2px 4px #0000001a;transition:all .3s ease}.block-world-wrapper .bw-alternating-current-cell.bw-match{background-color:#10b98126;box-shadow:0 0 10px #10b98166}.block-world-wrapper .bw-alternating-current-block{width:80px;height:80px;border-radius:8px;display:flex;justify-content:center;align-items:center;font-size:2.5rem;font-weight:700;color:#fff;box-shadow:0 4px 8px #0003;transition:all .3s ease;cursor:pointer}.block-world-wrapper .bw-alternating-current-block:hover{transform:scale(1.05);box-shadow:0 6px 12px #0000004d}.block-world-wrapper .bw-goal-visualization{display:flex;justify-content:center;gap:20px;margin-top:20px;padding:20px;background-color:#f9fafbe6;border-radius:12px;box-shadow:0 4px 12px #00000014;border:1px solid #e5e7eb;width:100%;max-width:400px}.block-world-wrapper .bw-goal-stack{position:relative;width:90px;height:200px;display:flex;flex-direction:column;align-items:center}.block-world-wrapper .bw-goal-blocks{position:relative;height:170px;width:100%}.block-world-wrapper .bw-goal-block{position:absolute;left:5px;width:80px;height:60px;display:flex;justify-content:center;align-items:center;font-size:1.8rem;font-weight:700;color:#fff;border-radius:8px;box-shadow:0 4px 8px #0003;text-shadow:1px 1px 1px rgba(0,0,0,.3);border:2px solid rgba(255,255,255,.4)}.block-world-wrapper .bw-goal-base{position:absolute;bottom:25px;width:80%;height:8px;background-color:#4b5563;border-radius:4px;box-shadow:0 2px 4px #0000001a}.block-world-wrapper .bw-goal-label{position:absolute;bottom:0;text-align:center;font-size:.9rem;color:#6b7280;font-weight:600;width:100%}.block-world-wrapper .bw-block-world-grid{display:flex;justify-content:center;gap:20px;background-color:#f3f4f6;padding:20px;border-radius:12px;box-shadow:0 6px 15px #00000014;width:100%;max-width:400px;margin:0 auto}.block-world-wrapper .bw-stack-column{position:relative;width:100px;height:350px}.block-world-wrapper .bw-block-stack{position:relative;width:100px;height:350px;background-color:#ffffff4d;border-radius:12px;transition:all .2s ease;cursor:pointer}.block-world-wrapper .bw-block-stack:hover{background-color:#3b82f614}.block-world-wrapper .bw-stack-blocks{position:relative;height:320px;width:100%;display:flex;flex-direction:column-reverse;justify-content:flex-start;align-items:center}.block-world-wrapper .bw-block{position:absolute;left:10px;width:80px;height:60px;font-size:2rem;font-weight:700;display:flex;justify-content:center;align-items:center;color:#fff;border-radius:8px;box-shadow:0 4px 8px #0003,0 2px 4px #0000001a inset;transition:all .3s ease;cursor:pointer;text-shadow:0 1px 2px rgba(0,0,0,.3);border:2px solid rgba(255,255,255,.3)}.block-world-wrapper .bw-block:hover{transform:translateY(-5px);box-shadow:0 6px 12px #0000004d}.block-world-wrapper .bw-stack-base{position:absolute;bottom:30px;left:10px;width:80%;height:8px;background-color:#3182ce;border-radius:4px;box-shadow:0 2px 4px #0003}.block-world-wrapper .bw-stack-label{position:absolute;bottom:0;text-align:center;font-size:.9rem;color:#4b5563;font-weight:600;width:100%}.block-world-wrapper .bw-selected-stack{background-color:#3b82f626;border-radius:8px;box-shadow:0 0 0 2px #3b82f64d}.block-world-wrapper .bw-selected-block{transform:translateY(-10px);box-shadow:0 10px 25px #0000004d,0 0 0 3px #f6e05e;animation:bw-float 1s infinite alternate ease-in-out;z-index:10!important}.block-world-wrapper .bw-hint-source{animation:bw-pulse 1.5s infinite;border:2px solid #10b981;box-shadow:0 0 10px #10b981;transform:translateY(-8px);z-index:100!important}.block-world-wrapper .bw-hint-target{animation:bw-glow 1.5s infinite alternate;background-color:#10b981}@keyframes bw-glow{0%{box-shadow:0 0 5px #10b981}to{box-shadow:0 0 20px #10b981}}.block-world-wrapper .bw-invalid-move{animation:bw-shake .5s;background-color:#ef444426}@keyframes bw-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@keyframes bw-float{0%{transform:translateY(-10px)}to{transform:translateY(-15px)}}@keyframes bw-pulse{0%{box-shadow:0 0 #10b981b3}70%{box-shadow:0 0 0 10px #10b98100}to{box-shadow:0 0 #10b98100}}.block-world-wrapper .bw-solution-path{background-color:#f8fafc;border-radius:16px;padding:20px;margin:25px auto;max-width:600px;box-shadow:0 4px 15px #0000000d;border:1px solid #e2e8f0}.block-world-wrapper .bw-solution-path h3{font-size:1.3rem;color:#0f172a;margin-bottom:15px;text-align:center;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.block-world-wrapper .bw-hint-message{background-color:#fff;padding:15px;border-radius:10px;box-shadow:0 2px 6px #0000000d}.block-world-wrapper .bw-hint-step{color:#334155;font-size:1.1rem;line-height:1.6;font-weight:500;text-align:center;margin:0;padding:5px 0}.block-world-wrapper .bw-hint-visual{margin-top:20px;display:flex;justify-content:center}.block-world-wrapper .bw-hint-arrow{display:flex;flex-direction:column;align-items:center;padding:15px}.block-world-wrapper .bw-arrow-label{font-size:.9rem;color:#64748b;margin:5px 0;font-weight:600}.block-world-wrapper .bw-arrow-body{display:flex;align-items:center;margin:8px 0}.block-world-wrapper .bw-arrow-shaft{width:80px;height:4px;background-color:#10b981;position:relative}.block-world-wrapper .bw-arrow-head{width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid #10b981;margin-left:-2px}.block-world-wrapper .bw-puzzle-solved-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;animation:bw-fadeIn .3s ease-in-out}.block-world-wrapper .bw-puzzle-solved{background:linear-gradient(135deg,#dcfce7,#86efac);color:#166534;padding:40px;border-radius:20px;text-align:center;animation:bw-bounceIn .6s ease-in-out;max-width:450px;box-shadow:0 12px 30px #0003}@keyframes bw-bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.95)}to{transform:scale(1);opacity:1}}@keyframes bw-fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.block-world-wrapper .bw-puzzle-solved h2{font-size:2.2rem;margin-bottom:15px;color:#15803d}.block-world-wrapper .bw-puzzle-solved p{margin-bottom:25px;font-size:1.2rem}.block-world-wrapper .bw-success-buttons{display:flex;gap:15px;justify-content:center}.block-world-wrapper .bw-puzzle-solved .bw-control-button{background:linear-gradient(135deg,#16a34a,#15803d);padding:14px 28px;font-size:1.1rem}.block-world-wrapper .bw-puzzle-solved .bw-control-button:hover{background:linear-gradient(135deg,#15803d,#166534)}.block-world-wrapper .bw-puzzle-solved .bw-control-button.bw-secondary{background:linear-gradient(135deg,#6b7280,#4b5563)}.block-world-wrapper .bw-puzzle-solved .bw-control-button.bw-secondary:hover{background:linear-gradient(135deg,#4b5563,#374151)}.block-world-wrapper .bw-move-history{background-color:#fff;border-radius:16px;padding:20px;margin:25px auto;box-shadow:0 4px 12px #0000000d;max-width:500px}.block-world-wrapper .bw-move-history h3{font-size:1.2rem;color:#1f2937;margin-bottom:15px;text-align:center}.block-world-wrapper .bw-move-list{display:flex;flex-direction:column;gap:10px}.block-world-wrapper .bw-move-item{padding:12px 15px;background-color:#f9fafb;border-radius:10px;display:flex;align-items:center;border-left:3px solid #3b82f6}.block-world-wrapper .bw-move-number{font-weight:700;color:#3b82f6;margin-right:10px;min-width:30px}.block-world-wrapper .bw-move-tile{font-weight:600;color:#4b5563;margin-right:15px}.block-world-wrapper .bw-move-direction{color:#6b7280;font-style:italic}.block-world-wrapper .bw-goal-description{margin-top:10px;margin-bottom:20px;text-align:center;padding:10px 20px;background-color:#f3f4f6;border-radius:50px;color:#4b5563;font-weight:600;font-size:1rem;box-shadow:0 2px 4px #0000000d;max-width:90%}@media (max-width: 900px){.block-world-wrapper .bw-puzzle-container{flex-direction:column;align-items:center;gap:30px}.block-world-wrapper .bw-game-controls{flex-wrap:wrap}}@media (max-width: 768px){.block-world-wrapper .bw-puzzle-header h1{font-size:2.2rem}.block-world-wrapper .bw-puzzle-description{font-size:1rem}.block-world-wrapper .bw-alternating-goal-cell,.block-world-wrapper .bw-alternating-current-block{width:70px;height:70px;font-size:1.8rem}.block-world-wrapper .bw-alternating-current-cell{width:80px;height:80px}.block-world-wrapper .bw-block{width:70px;height:50px;font-size:1.8rem}.block-world-wrapper .bw-puzzle-buttons-top{flex-wrap:wrap}.block-world-wrapper .bw-control-button{min-width:120px}.block-world-wrapper .bw-goal-block{width:70px;height:50px;font-size:1.6rem}}@media (max-width: 576px){.block-world-wrapper .bw-block-world-container{padding:20px 15px}.block-world-wrapper .bw-puzzle-header h1{font-size:1.8rem}.block-world-wrapper .bw-alternating-goal-grid,.block-world-wrapper .bw-alternating-current-grid{gap:5px;padding:10px}.block-world-wrapper .bw-alternating-goal-cell{width:60px;height:60px;font-size:1.5rem}.block-world-wrapper .bw-alternating-current-cell{width:70px;height:70px}.block-world-wrapper .bw-alternating-current-block{width:60px;height:60px;font-size:1.6rem}.block-world-wrapper .bw-block-world-grid{width:100%;gap:15px;padding:15px}.block-world-wrapper .bw-stack-column,.block-world-wrapper .bw-block-stack{width:80px}.block-world-wrapper .bw-block{width:65px;height:45px;font-size:1.6rem;left:7.5px}.block-world-wrapper .bw-control-button{padding:10px 16px;font-size:.9rem;min-width:100px}.block-world-wrapper .bw-game-controls{gap:10px}.block-world-wrapper .bw-goal-visualization{flex-wrap:wrap;gap:10px;padding:10px}.block-world-wrapper .bw-goal-stack{width:70px}.block-world-wrapper .bw-goal-block{width:60px;height:40px;font-size:1.4rem}}:root{--theme-main: #4CAF50;--theme-secondary: #C8E6C9;--theme-top: #66BB6A;--theme-new: #43A047;--top-indicator: #81C784;--bg-color: #f9f9f9;--card-bg: #ffffff;--border-radius: 6px;--shadow: 0 4px 12px rgba(0, 0, 0, .08);--animation-duration: 1s}.stack-component{font-family:Arial,sans-serif;background-color:var(--bg-color);padding:20px;max-width:100%;margin:0 auto}.stack-component-header-container{text-align:center;margin-bottom:20px}.stack-component-page-title{font-weight:700;margin-bottom:5px;font-size:2rem;color:var(--theme-main)}.stack-component-page-subtitle{font-size:1rem;color:#666;margin-top:0}.stack-component-top-section{display:flex;gap:20px;margin-bottom:20px}.stack-component-visualization-section{flex:3}.stack-component-controls-section{flex:2}.stack-component-stack-container{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);overflow:hidden;height:100%}.stack-component-container-header{background-color:var(--theme-main);color:#fff;padding:12px 15px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.stack-component-container-header h4{margin:0;font-size:1.1rem}.stack-component-container-body{padding:20px}.stack-component-stack-elements{min-height:350px;display:flex;flex-direction:column;justify-content:flex-start;position:relative;border:1px solid #eee;border-radius:var(--border-radius);padding:15px;overflow:visible}.stack-component-empty-stack-message{border:2px dashed #e0e0e0;border-radius:var(--border-radius);padding:20px;text-align:center;color:#9e9e9e;font-style:italic;margin:40px 0}.stack-component-stack-element{background-color:var(--theme-main);color:#fff;padding:12px 15px;border-radius:4px;text-align:center;font-weight:600;position:relative;box-shadow:0 3px 6px #0003;transition:all .3s ease;height:35px;display:flex;align-items:center;justify-content:center;width:85%;margin:24px auto;border-left:10px solid rgba(0,0,0,.3);border-right:10px solid rgba(255,255,255,.2);border-bottom:6px solid rgba(0,0,0,.3)}.stack-component-stack-element:hover{box-shadow:0 5px 10px #00000040;transform:translateY(-2px)}.stack-component-stack-element.stack-component-top-element{background-color:var(--theme-top);box-shadow:0 4px 8px #0000004d}.stack-component-stack-element.stack-component-push-animation{background-color:var(--theme-new);animation:push-effect var(--animation-duration) cubic-bezier(.34,1.56,.64,1)}.stack-component-stack-element.stack-component-pop-animation{animation:pop-effect var(--animation-duration) cubic-bezier(.34,1.56,.64,1)}.stack-component-stack-element.stack-component-peek-animation{animation:peek-effect var(--animation-duration) ease}@keyframes push-effect{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes pop-effect{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-30px)}}@keyframes peek-effect{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.stack-component-stack-element-content{display:flex;justify-content:center;align-items:center;width:100%;position:relative;font-size:1.2rem}.stack-component-stack-element-index{position:absolute;left:-55px;font-size:.85rem;color:#000000b3;background-color:#e0e0e0;padding:4px 8px;border-radius:3px;border:1px solid #bdbdbd}.stack-component-stack-pointer{position:absolute;right:-98px;top:50%;transform:translateY(-50%);color:#fff;font-weight:700;display:flex;align-items:center;background-color:var(--top-indicator);padding:6px 12px;border-radius:4px;box-shadow:0 2px 4px #0003}.stack-component-stack-pointer-arrow{margin-right:8px;font-size:20px}.stack-component-stack-stats{display:flex;justify-content:space-between;background-color:var(--theme-secondary);border-radius:var(--border-radius);padding:15px;margin-top:20px}.stack-component-stat-item{text-align:center;flex:1}.stack-component-stat-value{font-size:1.5rem;font-weight:700;color:var(--theme-main)}.stack-component-stat-label{font-size:.75rem;text-transform:uppercase;color:#666}.stack-component-control-panel{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);height:100%;overflow:hidden}.stack-component-push-controls{display:flex;gap:10px;margin-bottom:15px}.stack-component-push-input{flex:1}.stack-component-input-field{padding:10px 15px;border-radius:var(--border-radius);border:1px solid #ddd;transition:all .2s ease;font-size:1rem;width:100%;box-sizing:border-box}.stack-component-input-field:focus{outline:none;border-color:var(--theme-main);box-shadow:0 0 0 2px #4caf5026}.stack-component-push-button{min-width:80px}.stack-component-controls-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:15px}.stack-component-operation-btn{padding:10px 15px;border-radius:var(--border-radius);transition:all .2s ease;position:relative;font-weight:500;border:none;cursor:pointer}.stack-component-operation-btn:hover{opacity:.9;transform:translateY(-1px)}.stack-component-operation-btn:active{transform:translateY(1px)}.stack-component-operation-btn:disabled{opacity:.6;cursor:not-allowed}.stack-component-operation-btn.stack-component-primary{background-color:var(--theme-main);color:#fff}.stack-component-operation-btn.stack-component-secondary{background-color:#6c757d;color:#fff}.stack-component-operation-btn.stack-component-danger{background-color:#dc3545;color:#fff}.stack-component-operation-btn.stack-component-info{background-color:#17a2b8;color:#fff}.stack-component-operation-btn.stack-component-outline{background-color:transparent;border:1px solid #ddd;color:#555}.stack-component-operation-btn.stack-component-outline:hover{background-color:#f8f9fa}.stack-component-history-controls{display:flex;gap:10px;margin-bottom:15px}.stack-component-history-btn{flex:1}.stack-component-message{padding:12px 15px;border-radius:var(--border-radius);margin-top:15px;display:flex;align-items:center;animation:fadeIn .3s ease}.stack-component-message-icon{margin-right:10px;font-size:1.1rem;font-weight:700}.stack-component-message.stack-component-success{background-color:#d4edda;color:#155724;border-left:3px solid #28a745}.stack-component-message.stack-component-warning{background-color:#fff3cd;color:#856404;border-left:3px solid #ffc107}.stack-component-message.stack-component-danger{background-color:#f8d7da;color:#721c24;border-left:3px solid #dc3545}.stack-component-message.stack-component-info{background-color:#d1ecf1;color:#0c5460;border-left:3px solid #17a2b8}.stack-component-fullscreen-btn{background:transparent;border:none;color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px}.stack-component-fullscreen-btn:hover{text-decoration:underline}.stack-component-study-material-section{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);margin-top:40px;overflow:hidden}.stack-component-section-header{background-color:var(--theme-main);color:#fff;padding:20px;text-align:center}.stack-component-section-header h2{margin:0;font-size:1.6rem;font-weight:700}.stack-component-section-description{margin:10px 0 0;font-size:1rem;opacity:.9}.stack-component-study-tabs{display:flex;background-color:var(--theme-secondary);border-bottom:1px solid rgba(0,0,0,.1)}.stack-component-tab-button{padding:15px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-weight:600;color:var(--theme-main);transition:all .2s ease;flex:1;text-align:center}.stack-component-tab-button:hover{background-color:#ffffff80}.stack-component-tab-button.stack-component-active{border-bottom:3px solid var(--theme-main);background-color:#fffc}.stack-component-tab-content{padding:25px;min-height:400px;position:relative}.stack-component-tab-pane{animation:fadeIn .3s ease;width:100%;height:100%;overflow:auto;position:relative}.stack-component-tab-pane h3{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:10px;margin-bottom:20px}.stack-component-tab-pane p{line-height:1.6;margin-bottom:20px}.stack-component-info-card{background-color:var(--theme-secondary);border-radius:var(--border-radius);padding:20px;margin:20px 0}.stack-component-info-card h4{margin-top:0;color:var(--theme-main)}.stack-component-info-card ul{margin:0;padding-left:20px}.stack-component-info-card li{margin-bottom:10px;line-height:1.5}.stack-component-info-card li:last-child{margin-bottom:0}.stack-component-stack-diagram{display:flex;margin:30px 0;gap:30px}.stack-component-stack-image{flex:1;display:flex;justify-content:center;align-items:center}.stack-component-stack-representation{width:250px;position:relative}.stack-component-stack-element-rep{background-color:var(--theme-main);color:#fff;padding:12px;margin-bottom:5px;border-radius:4px;text-align:center;box-shadow:0 2px 4px #0000001a;border-left:8px solid rgba(0,0,0,.2);position:relative}.stack-component-stack-element-rep.stack-component-top{background-color:var(--theme-top)}.stack-component-pointer{position:absolute;right:-70px;background-color:var(--top-indicator);padding:4px 8px;border-radius:3px;font-size:.8rem;box-shadow:0 2px 4px #0000001a}.stack-component-stack-base{height:10px;background-color:#555;border-radius:0 0 5px 5px}.stack-component-stack-explanation{flex:2}.stack-component-stack-explanation h4{margin-top:0;color:var(--theme-main)}.stack-component-operations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:30px 0}.stack-component-operation-card{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 2px 8px #00000014;padding:20px;border:1px solid #eee}.stack-component-operation-card h4{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:8px;margin-bottom:15px}.stack-component-operation-animation{display:flex;flex-direction:column;align-items:center;margin-bottom:15px;min-height:150px}.stack-component-anim-element{background-color:var(--theme-top);color:#fff;padding:8px 16px;border-radius:4px;margin-bottom:10px;font-weight:700}.stack-component-arrow{font-size:24px;margin:5px 0;color:var(--theme-main);font-weight:700}.stack-component-stack-rep{width:120px;border:2px solid #ddd;border-radius:var(--border-radius);overflow:hidden}.stack-component-rep-item{background-color:var(--theme-main);color:#fff;padding:8px;text-align:center;border-bottom:1px solid rgba(255,255,255,.3);font-size:.9rem}.stack-component-rep-item.stack-component-highlight{background-color:var(--theme-top);animation:pulse 1.5s infinite}.stack-component-peek-arrow{font-size:24px;margin-bottom:10px;color:var(--theme-main)}.stack-component-empty-rep{width:120px;height:120px;border:2px dashed #ddd;border-radius:var(--border-radius);display:flex;justify-content:center;align-items:center;padding:10px}.stack-component-empty-message{text-align:center;color:#999;font-size:.9rem;font-style:italic}.stack-component-operation-description{margin-top:15px}.stack-component-operation-description p{margin:10px 0;font-size:.95rem}.stack-component-code-container{margin:25px 0;border-radius:var(--border-radius);overflow:hidden;border:1px solid #ddd}.stack-component-code-header{background-color:var(--theme-secondary);padding:10px 15px;border-bottom:1px solid #ddd}.stack-component-code-header h4{margin:0;font-size:1.1rem;color:var(--theme-main)}.stack-component-code-block{background-color:#f5f5f5;padding:15px;margin:0;overflow-x:auto;font-family:monospace;line-height:1.5;font-size:.9rem}.stack-component-implementation-comparison{margin:30px 0}.stack-component-implementation-comparison h4{color:var(--theme-main);margin-bottom:15px}.stack-component-comparison-table{width:100%;border-collapse:collapse;background-color:#fff;box-shadow:0 2px 8px #0000000d}.stack-component-comparison-table th,.stack-component-comparison-table td{padding:12px 15px;text-align:left;border:1px solid #eee}.stack-component-comparison-table th{background-color:var(--theme-secondary);color:var(--theme-main);font-weight:600}.stack-component-comparison-table tr:nth-child(2n){background-color:#f9f9f9}.stack-component-applications-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.stack-component-application-card{background-color:#fff;border-radius:var(--border-radius);padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid #eee;display:flex;flex-direction:column;align-items:center;text-align:center}.stack-component-app-icon{width:50px;height:50px;background-color:var(--theme-secondary);border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:15px}.stack-component-material-icon{font-size:24px}.stack-component-application-card h4{color:var(--theme-main);margin:10px 0}.stack-component-application-card p{margin:0;font-size:.9rem;line-height:1.5}.stack-component-example-section{margin:30px 0}.stack-component-example-section h4{color:var(--theme-main);margin-bottom:15px}.stack-component-browser-example{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}.stack-component-browser-ui{flex:3;min-width:300px;border:1px solid #ddd;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 8px #00000014}.stack-component-browser-controls{background-color:#f5f5f5;padding:10px;display:flex;align-items:center;border-bottom:1px solid #ddd}.stack-component-browser-button{background-color:#e0e0e0;border:none;width:30px;height:30px;border-radius:50%;margin-right:10px;cursor:pointer;display:flex;justify-content:center;align-items:center;font-size:12px}.stack-component-browser-button:hover{background-color:#d0d0d0}.stack-component-browser-address{flex:1;background-color:#fff;padding:8px 12px;border-radius:15px;border:1px solid #ddd;font-size:.9rem;color:#333;font-family:monospace}.stack-component-browser-content{background-color:#fff;height:200px;display:flex;justify-content:center;align-items:center}.stack-component-browser-page{font-size:1.2rem;color:#333}.stack-component-browser-stack{flex:1;min-width:150px}.stack-component-stack-title{font-weight:700;color:var(--theme-main);margin-bottom:10px;text-align:center}.stack-component-browser-stack-item{background-color:var(--theme-main);color:#fff;padding:10px;margin-bottom:5px;border-radius:4px;text-align:center;box-shadow:0 2px 4px #0000001a}.stack-component-browser-stack-base{height:8px;background-color:#555;border-radius:0 0 4px 4px}.stack-component-browser-explanation{flex:2;min-width:250px}.stack-component-browser-explanation p{margin-top:0}.stack-component-browser-explanation ul{padding-left:20px}.stack-component-browser-explanation li{margin-bottom:8px}@media (max-width: 1100px){.stack-component-operations-grid,.stack-component-applications-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 992px){.stack-component-top-section{flex-direction:column}.stack-component-visualization-section,.stack-component-controls-section{width:100%}.stack-component-stack-elements{min-height:250px}.stack-component-stack-diagram{flex-direction:column;align-items:center}.stack-component-stack-explanation{text-align:center}}@media (max-width: 768px){.stack-component-controls-grid{grid-template-columns:1fr}.stack-component-push-controls{flex-direction:column}.stack-component-operations-grid,.stack-component-applications-grid{grid-template-columns:1fr}.stack-component-study-tabs{flex-wrap:wrap}.stack-component-tab-button{flex-basis:50%}}:root{--theme-main: #00BFA5;--theme-secondary: #C8E6C9;--theme-top: #009688;--theme-new: #00796B;--top-indicator: #80CBC4;--bg-color: #f9f9f9;--card-bg: #ffffff;--border-radius: 6px;--shadow: 0 4px 12px rgba(0, 0, 0, .08);--animation-duration: 1s}.queue-component{font-family:Arial,sans-serif;background-color:var(--bg-color);padding:20px;max-width:100%;margin:0 auto}.queue-component-header-container{text-align:center;margin-bottom:20px}.queue-component-page-title{font-weight:700;margin-bottom:5px;font-size:2rem;color:var(--theme-main)}.queue-component-page-subtitle{font-size:1rem;color:#666;margin-top:0}.queue-component-top-section{display:flex;gap:20px;margin-bottom:20px}.queue-component-visualization-section{flex:3}.queue-component-controls-section{flex:2}.queue-component-queue-container{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);overflow:hidden;height:100%}.queue-component-container-header{background-color:var(--theme-main);color:#fff;padding:12px 15px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.queue-component-container-header h4{margin:0;font-size:1.1rem}.queue-component-container-body{padding:20px}.queue-component-queue-elements{min-height:350px;display:flex;flex-direction:row;justify-content:flex-start;position:relative;border:1px solid #eee;border-radius:var(--border-radius);padding:165px;overflow:visible;gap:5px}.queue-component-empty-queue-message{border:2px dashed #e0e0e0;border-radius:var(--border-radius);padding:10px;text-align:center;color:#9e9e9e;font-style:italic;margin:40px 0}.queue-component-queue-element{background-color:var(--theme-main);color:#fff;padding:12px 15px;margin:2px -40px;border-radius:4px;text-align:center;font-weight:600;position:relative;box-shadow:0 3px 6px #0003;transition:all .3s ease;height:35px;display:flex;align-items:center;justify-content:center;width:80px;border-left:10px solid rgba(0,0,0,.3);border-right:10px solid rgba(255,255,255,.2);border-bottom:6px solid rgba(0,0,0,.3)}.queue-component-queue-element:hover{box-shadow:0 5px 10px #00000040;transform:translateY(-2px)}.queue-component-queue-element.queue-component-enqueue-animation{background-color:var(--theme-new);animation:queue-component-enqueue-effect var(--animation-duration) cubic-bezier(.34,1.56,.64,1)}.queue-component-queue-element.queue-component-dequeue-animation{animation:queue-component-dequeue-effect var(--animation-duration) cubic-bezier(.34,1.56,.64,1)}@keyframes queue-component-enqueue-effect{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes queue-component-dequeue-effect{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-20px)}}.queue-component-queue-element-content{display:flex;justify-content:center;align-items:center;width:100%;position:relative;font-size:1.2rem}.queue-component-queue-element-index{position:absolute;left:-55px;font-size:.85rem;color:#000000b3;background-color:#e0e0e0;padding:4px 8px;border-radius:3px;border:1px solid #bdbdbd}.queue-component-queue-pointer{position:absolute;top:-50px;left:50%;transform:translate(-50%);color:#fff;font-weight:700;display:flex;align-items:center;background-color:var(--top-indicator);padding:6px 12px;border-radius:4px;box-shadow:0 2px 4px #0003}.queue-component-rear-pointer{top:auto;bottom:-60px}.queue-component-queue-stats{display:flex;justify-content:space-between;background-color:var(--theme-secondary);border-radius:var(--border-radius);padding:15px;margin-top:20px}.queue-component-stat-item{text-align:center;flex:1}.queue-component-stat-value{font-size:1.5rem;font-weight:700;color:var(--theme-main)}.queue-component-stat-label{font-size:.75rem;text-transform:uppercase;color:#666}.queue-component-control-panel{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);height:100%;overflow:hidden}.queue-component-enqueue-controls{display:flex;gap:10px;margin-bottom:15px}.queue-component-enqueue-input{flex:1}.queue-component-input-field{padding:10px 15px;border-radius:var(--border-radius);border:1px solid #ddd;transition:all .2s ease;font-size:1rem;width:100%;box-sizing:border-box}.queue-component-input-field:focus{outline:none;border-color:var(--theme-main);box-shadow:0 0 0 2px #00bfa526}.queue-component-enqueue-button{min-width:80px}.queue-component-controls-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:15px}.queue-component-operation-btn{padding:10px 15px;border-radius:var(--border-radius);transition:all .2s ease;position:relative;font-weight:500;border:none;cursor:pointer}.queue-component-operation-btn:hover{opacity:.9;transform:translateY(-1px)}.queue-component-operation-btn:active{transform:translateY(1px)}.queue-component-operation-btn:disabled{opacity:.6;cursor:not-allowed}.queue-component-operation-btn.queue-component-primary{background-color:var(--theme-main);color:#fff}.queue-component-operation-btn.queue-component-secondary{background-color:#6c757d;color:#fff}.queue-component-operation-btn.queue-component-danger{background-color:#dc3545;color:#fff}.queue-component-operation-btn.queue-component-info{background-color:#17a2b8;color:#fff}.queue-component-operation-btn.queue-component-outline{background-color:transparent;border:1px solid #ddd;color:#555}.queue-component-operation-btn.queue-component-outline:hover{background-color:#f8f9fa}.queue-component-history-controls{display:flex;gap:10px;margin-bottom:15px}.queue-component-history-btn{flex:1}.queue-component-message{padding:12px 15px;border-radius:var(--border-radius);margin-top:15px;display:flex;align-items:center;animation:queue-component-fadeIn .3s ease}.queue-component-message-icon{margin-right:10px;font-size:1.1rem;font-weight:700}.queue-component-message.queue-component-success{background-color:#d4edda;color:#155724;border-left:3px solid #28a745}.queue-component-message.queue-component-warning{background-color:#fff3cd;color:#856404;border-left:3px solid #ffc107}.queue-component-message.queue-component-danger{background-color:#f8d7da;color:#721c24;border-left:3px solid #dc3545}.queue-component-message.queue-component-info{background-color:#d1ecf1;color:#0c5460;border-left:3px solid #17a2b8}.queue-component-fullscreen-btn{background:transparent;border:none;color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px}.queue-component-fullscreen-btn:hover{text-decoration:underline}.queue-component-study-material-section{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);margin-top:40px;overflow:hidden}.queue-component-section-header{background-color:var(--theme-main);color:#fff;padding:20px;text-align:center}.queue-component-section-header h2{margin:0;font-size:1.6rem;font-weight:700}.queue-component-section-description{margin:10px 0 0;font-size:1rem;opacity:.9}.queue-component-study-tabs{display:flex;background-color:var(--theme-secondary);border-bottom:1px solid rgba(0,0,0,.1)}.queue-component-tab-button{padding:15px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-weight:600;color:var(--theme-main);transition:all .2s ease;flex:1;text-align:center}.queue-component-tab-button:hover{background-color:#ffffff80}.queue-component-tab-button.queue-component-active{border-bottom:3px solid var(--theme-main);background-color:#fffc}.queue-component-tab-content{padding:25px;min-height:400px;position:relative}.queue-component-tab-pane{animation:queue-component-fadeIn .3s ease;width:100%;height:100%;overflow:auto;position:relative}.queue-component-tab-pane h3{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:10px;margin-bottom:20px}.queue-component-tab-pane p{line-height:1.6;margin-bottom:20px}.queue-component-info-card{background-color:var(--theme-secondary);border-radius:var(--border-radius);padding:20px;margin:20px 0}.queue-component-info-card h4{margin-top:0;color:var(--theme-main)}.queue-component-info-card ul{margin:0;padding-left:20px}.queue-component-info-card li{margin-bottom:10px;line-height:1.5}.queue-component-info-card li:last-child{margin-bottom:0}.queue-component-queue-diagram{display:flex;margin:30px 0;gap:30px}.queue-component-queue-image{flex:1;display:flex;justify-content:center;align-items:center}.queue-component-queue-representation{width:250px;position:relative}.queue-component-queue-element-rep{background-color:var(--theme-main);color:#fff;padding:12px;margin-bottom:5px;border-radius:4px;text-align:center;box-shadow:0 2px 4px #0000001a;border-left:8px solid rgba(0,0,0,.2);position:relative}.queue-component-queue-element-rep.queue-component-front{background-color:var(--theme-top)}.queue-component-pointer{position:absolute;left:-70px;background-color:var(--top-indicator);padding:4px 8px;border-radius:3px;font-size:.8rem;box-shadow:0 2px 4px #0000001a}.queue-component-queue-base{height:10px;background-color:#555;border-radius:0 0 5px 5px}.queue-component-queue-explanation{flex:2}.queue-component-queue-explanation h4{margin-top:0;color:var(--theme-main)}.queue-component-operations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:30px 0}.queue-component-operation-card{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 2px 8px #00000014;padding:20px;border:1px solid #eee}.queue-component-operation-card h4{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:8px;margin-bottom:15px}.queue-component-operation-animation{display:flex;flex-direction:column;align-items:center;margin-bottom:15px;min-height:150px}.queue-component-anim-element{background-color:var(--theme-top);color:#fff;padding:8px 16px;border-radius:4px;margin-bottom:10px;font-weight:700}.queue-component-arrow{font-size:24px;margin:5px 0;color:var(--theme-main);font-weight:700}.queue-component-queue-rep{width:120px;border:2px solid #ddd;border-radius:var(--border-radius);overflow:hidden}.queue-component-rep-item{background-color:var(--theme-main);color:#fff;padding:8px;text-align:center;border-bottom:1px solid rgba(255,255,255,.3);font-size:.9rem}.queue-component-rep-item.queue-component-highlight{background-color:var(--theme-top);animation:queue-component-pulse 1.5s infinite}.queue-component-peek-arrow{font-size:24px;margin-bottom:10px;color:var(--theme-main)}.queue-component-empty-rep{width:120px;height:120px;border:2px dashed #ddd;border-radius:var(--border-radius);display:flex;justify-content:center;align-items:center;padding:10px}.queue-component-empty-message{text-align:center;color:#999;font-size:.9rem;font-style:italic}.queue-component-operation-description{margin-top:15px}.queue-component-operation-description p{margin:10px 0;font-size:.95rem}.queue-component-code-container{margin:25px 0;border-radius:var(--border-radius);overflow:hidden;border:1px solid #ddd}.queue-component-code-header{background-color:var(--theme-secondary);padding:10px 15px;border-bottom:1px solid #ddd}.queue-component-code-header h4{margin:0;font-size:1.1rem;color:var(--theme-main)}.queue-component-code-block{background-color:#f5f5f5;padding:15px;margin:0;overflow-x:auto;font-family:monospace;line-height:1.5;font-size:.9rem}.queue-component-implementation-comparison{margin:30px 0}.queue-component-implementation-comparison h4{color:var(--theme-main);margin-bottom:15px}.queue-component-comparison-table{width:100%;border-collapse:collapse;background-color:#fff;box-shadow:0 2px 8px #0000000d}.queue-component-comparison-table th,.queue-component-comparison-table td{padding:12px 15px;text-align:left;border:1px solid #eee}.queue-component-comparison-table th{background-color:var(--theme-secondary);color:var(--theme-main);font-weight:600}.queue-component-comparison-table tr:nth-child(2n){background-color:#f9f9f9}.queue-component-applications-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.queue-component-application-card{background-color:#fff;border-radius:var(--border-radius);padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid #eee;display:flex;flex-direction:column;align-items:center;text-align:center}.queue-component-app-icon{width:50px;height:50px;background-color:var(--theme-secondary);border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:15px}.queue-component-material-icon{font-size:24px}.queue-component-application-card h4{color:var(--theme-main);margin:10px 0}.queue-component-application-card p{margin:0;font-size:.9rem;line-height:1.5}.queue-component-example-section{margin:30px 0}.queue-component-example-section h4{color:var(--theme-main);margin-bottom:15px}.queue-component-customer-service-example{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}.queue-component-customer-service-ui{flex:3;min-width:300px;border:1px solid #ddd;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 8px #00000014}.queue-component-customer-service-controls{background-color:#f5f5f5;padding:10px;display:flex;align-items:center;border-bottom:1px solid #ddd}.queue-component-customer-service-button{background-color:#e0e0e0;border:none;width:30px;height:30px;border-radius:50%;margin-right:10px;cursor:pointer;display:flex;justify-content:center;align-items:center;font-size:12px}.queue-component-customer-service-button:hover{background-color:#d0d0d0}.queue-component-customer-service-address{flex:1;background-color:#fff;padding:8px 12px;border-radius:15px;border:1px solid #ddd;font-size:.9rem;color:#333;font-family:monospace}.queue-component-customer-service-content{background-color:#fff;height:200px;display:flex;justify-content:center;align-items:center}.queue-component-customer-service-queue{font-size:1.2rem;color:#333}.queue-component-customer-service-queue-base{height:8px;background-color:#555;border-radius:0 0 4px 4px}.queue-component-customer-service-explanation{flex:2;min-width:250px}.queue-component-customer-service-explanation p{margin-top:0}.queue-component-customer-service-explanation ul{padding-left:20px}.queue-component-customer-service-explanation li{margin-bottom:8px}@keyframes queue-component-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes queue-component-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@media (max-width: 1100px){.queue-component-operations-grid,.queue-component-applications-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 992px){.queue-component-top-section{flex-direction:column}.queue-component-visualization-section,.queue-component-controls-section{width:100%}.queue-component-queue-elements,.queue-component-queue-diagram{flex-direction:column;align-items:center}.queue-component-queue-explanation{text-align:center}}@media (max-width: 768px){.queue-component-controls-grid{grid-template-columns:1fr}.queue-component-enqueue-controls{flex-direction:column}.queue-component-operations-grid,.queue-component-applications-grid{grid-template-columns:1fr}.queue-component-study-tabs{flex-wrap:wrap}.queue-component-tab-button{flex-basis:50%}}:root{--theme-main: #FF5722;--theme-secondary: #FFCCBC;--theme-top: #FF9800;--theme-new: #FF6F61;--top-indicator: #FFAB91;--bg-color: #f9f9f9;--card-bg: #ffffff;--border-radius: 6px;--shadow: 4px 12px rgba(0, 0, 0, .08);--animation-duration: 1s}.circular-queue-page{font-family:Arial,sans-serif;background-color:var(--bg-color);padding:20px;max-width:100%;margin:0 auto}.circular-queue-header-container{text-align:center;margin-bottom:20px}.circular-queue-page-title{font-weight:700;margin-bottom:5px;font-size:2rem;color:var(--theme-main)}.circular-queue-page-subtitle{font-size:1rem;color:#666;margin-top:0}.circular-queue-top-section{display:flex;gap:20px;margin-bottom:20px}.circular-queue-visualization-section{flex:3}.circular-queue-controls-section{flex:2}.circular-queue-circular-queue-container{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);overflow:hidden;height:100%}.circular-queue-container-header{background-color:var(--theme-main);color:#fff;padding:12px 15px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.circular-queue-container-header h4{margin:0;font-size:1.1rem}.circular-queue-container-body{padding:20px;margin-bottom:70px}.circular-queue-queue-stats{display:flex;justify-content:space-around;background-color:var(--theme-secondary);border-radius:var(--border-radius);padding:15px;margin-bottom:20px}.circular-queue-queue-stat{text-align:center}.circular-queue-queue-stat-value{font-size:1.5rem;font-weight:700;color:var(--theme-main)}.circular-queue-queue-stat-label{font-size:.75rem;text-transform:uppercase;color:#666}.circular-queue-circular-queue-elements{display:flex;justify-content:center;align-items:center;position:relative;padding:20px}.circular-queue-circular-queue-circle{width:230px;height:230px;border:3px dashed #ccc;border-radius:500%;position:relative;margin:0 auto}.circular-queue-queue-element{background-color:var(--theme-main);color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;position:absolute;transition:all .3s ease}.circular-queue-queue-element:hover{box-shadow:0 5px 10px #00000040;transform:translateY(-2px)}.circular-queue-queue-element.circular-queue-enqueue-animation{background-color:var(--theme-new);animation:circular-queue-scale-in var(--animation-duration) cubic-bezier(.34,1.56,.64,1)}.circular-queue-queue-element.circular-queue-dequeue-animation{animation:circular-queue-scale-out var(--animation-duration) cubic-bezier(.34,1.56,.64,1)}@keyframes circular-queue-scale-in{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes circular-queue-scale-out{0%{transform:scale(1);opacity:1}to{transform:scale(0);opacity:0}}.circular-queue-pointer{position:absolute;background-color:var(--top-indicator);color:#fff;padding:3px 8px;border-radius:12px;font-size:.8rem;font-weight:700;z-index:10}.circular-queue-front-pointer{margin-top:-39px;color:var(--theme-main);border:2px solid var(--theme-main);background-color:#fff}.circular-queue-rear-pointer{margin-top:auto;color:var(--theme-main);border:2px solid var(--theme-main);background-color:#fff;margin-left:-89px}.circular-queue-element-index{position:absolute;font-size:.7rem;color:#666;font-weight:700}.circular-queue-control-panel{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);height:100%;overflow:hidden}.circular-queue-enqueue-controls{display:flex;gap:10px;margin-bottom:15px}.circular-queue-enqueue-input{flex:1}.circular-queue-input-field{padding:10px 15px;border-radius:var(--border-radius);border:1px solid #ddd;transition:all .2s ease;font-size:1rem;width:100%;box-sizing:border-box}.circular-queue-input-field:focus{outline:none;border-color:var(--theme-main);box-shadow:0 0 0 2px #ff572226}.circular-queue-enqueue-button{min-width:80px}.circular-queue-controls-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:15px}.circular-queue-operation-btn{padding:10px 15px;border-radius:var(--border-radius);transition:all .2s ease;position:relative;font-weight:500;border:none;cursor:pointer}.circular-queue-operation-btn:hover{opacity:.9;transform:translateY(-1px)}.circular-queue-operation-btn:active{transform:translateY(1px)}.circular-queue-operation-btn:disabled{opacity:.6;cursor:not-allowed}.circular-queue-operation-btn.circular-queue-primary{background-color:var(--theme-main);color:#fff}.circular-queue-operation-btn.circular-queue-secondary{background-color:#6c757d;color:#fff}.circular-queue-operation-btn.circular-queue-danger{background-color:#dc3545;color:#fff}.circular-queue-operation-btn.circular-queue-info{background-color:#17a2b8;color:#fff}.circular-queue-operation-btn.circular-queue-outline{background-color:transparent;border:1px solid #ddd;color:#555}.circular-queue-operation-btn.circular-queue-outline:hover{background-color:#f8f9fa}.circular-queue-history-controls{display:flex;gap:10px;margin-bottom:15px}.circular-queue-history-btn{flex:1}.circular-queue-message{padding:12px 15px;border-radius:var(--border-radius);margin-top:15px;display:flex;align-items:center;animation:circular-queue-fadeIn .3s ease}.circular-queue-message-icon{margin-right:10px;font-size:1.1rem;font-weight:700}.circular-queue-message.circular-queue-success{background-color:#d4edda;color:#155724;border-left:3px solid #28a745}.circular-queue-message.circular-queue-warning{background-color:#fff3cd;color:#856404;border-left:3px solid #ffc107}.circular-queue-message.circular-queue-danger{background-color:#f8d7da;color:#721c24;border-left:3px solid #dc3545}.circular-queue-message.circular-queue-info{background-color:#d1ecf1;color:#0c5460;border-left:3px solid #17a2b8}.circular-queue-fullscreen-btn{background:transparent;border:none;color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px}.circular-queue-fullscreen-btn:hover{text-decoration:underline}.circular-queue-study-material-section{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);margin-top:40px;overflow:hidden}.circular-queue-section-header{background-color:var(--theme-main);color:#fff;padding:20px;text-align:center}.circular-queue-section-header h2{margin:0;font-size:1.6rem;font-weight:700}.circular-queue-section-description{margin:10px 0 0;font-size:1rem;opacity:.9}.circular-queue-study-tabs{display:flex;background-color:var(--theme-secondary);border-bottom:1px solid rgba(0,0,0,.1)}.circular-queue-tab-button{padding:15px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-weight:600;color:var(--theme-main);transition:all .2s ease;flex:1;text-align:center}.circular-queue-tab-button:hover{background-color:#ffffff80}.circular-queue-tab-button.circular-queue-active{border-bottom:3px solid var(--theme-main);background-color:#fffc}.circular-queue-tab-content{padding:25px;min-height:400px;position:relative}.circular-queue-tab-pane{animation:circular-queue-fadeIn .3s ease;width:100%;height:100%;overflow:auto;position:relative}.circular-queue-tab-pane h3{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:10px;margin-bottom:20px}.circular-queue-tab-pane p{line-height:1.6;margin-bottom:20px}.circular-queue-info-card{background-color:var(--theme-secondary);border-radius:var(--border-radius);padding:20px;margin:20px 0}.circular-queue-info-card h4{margin-top:0;color:var(--theme-main)}.circular-queue-info-card ul{margin:0;padding-left:20px}.circular-queue-info-card li{margin-bottom:10px;line-height:1.5}.circular-queue-info-card li:last-child{margin-bottom:0}.circular-queue-circular-queue-diagram{display:flex;margin:30px 0;gap:30px}.circular-queue-circular-queue-image{flex:1;display:flex;justify-content:center;align-items:center}.circular-queue-circular-queue-representation{width:250px;position:relative}.circular-queue-circular-queue-element-rep{background-color:var(--theme-main);color:#fff;padding:12px;margin-bottom:5px;border-radius:4px;text-align:center;box-shadow:0 2px 4px #0000001a;border-left:8px solid rgba(0,0,0,.2);position:relative}.circular-queue-circular-queue-element-rep.circular-queue-front{background-color:var(--theme-top)}.circular-queue-pointer{position:absolute;left:-70px;background-color:var(--top-indicator);padding:4px 8px;border-radius:3px;font-size:.8rem;box-shadow:0 2px 4px #0000001a}.circular-queue-circular-queue-base{height:10px;background-color:#555;border-radius:0 0 5px 5px}.circular-queue-circular-queue-explanation{flex:2}.circular-queue-circular-queue-explanation h4{margin-top:0;color:var(--theme-main)}.circular-queue-operations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:30px 0}.circular-queue-operation-card{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 2px 8px #00000014;padding:20px;border:1px solid #eee}.circular-queue-operation-card h4{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:8px;margin-bottom:15px}.circular-queue-operation-animation{display:flex;flex-direction:column;align-items:center;margin-bottom:15px;min-height:150px}.circular-queue-anim-element{background-color:var(--theme-top);color:#fff;padding:8px 16px;border-radius:4px;margin-bottom:10px;font-weight:700}.circular-queue-arrow{font-size:24px;margin:5px 0;color:var(--theme-main);font-weight:700}.circular-queue-queue-rep{width:120px;border:2px solid #ddd;border-radius:var(--border-radius);overflow:hidden}.circular-queue-rep-item{background-color:var(--theme-main);color:#fff;padding:8px;text-align:center;border-bottom:1px solid rgba(255,255,255,.3);font-size:.9rem}.circular-queue-rep-item.circular-queue-highlight{background-color:var(--theme-top);animation:circular-queue-pulse 1.5s infinite}.circular-queue-peek-arrow{font-size:24px;margin-bottom:10px;color:var(--theme-main)}.circular-queue-empty-rep{width:120px;height:120px;border:2px dashed #ddd;border-radius:var(--border-radius);display:flex;justify-content:center;align-items:center;padding:10px}.circular-queue-empty-message{text-align:center;color:#999;font-size:.9rem;font-style:italic}.circular-queue-operation-description{margin-top:15px}.circular-queue-operation-description p{margin:10px 0;font-size:.95rem}.circular-queue-code-container{margin:25px 0;border-radius:var(--border-radius);overflow:hidden;border:1px solid #ddd}.circular-queue-code-header{background-color:var(--theme-secondary);padding:10px 15px;border-bottom:1px solid #ddd}.circular-queue-code-header h4{margin:0;font-size:1.1rem;color:var(--theme-main)}.circular-queue-code-block{background-color:#f5f5f5;padding:15px;margin:0;overflow-x:auto;font-family:monospace;line-height:1.5;font-size:.9rem}.circular-queue-implementation-comparison{margin:30px 0}.circular-queue-implementation-comparison h4{color:var(--theme-main);margin-bottom:15px}.circular-queue-comparison-table{width:100%;border-collapse:collapse;background-color:#fff;box-shadow:0 2px 8px #0000000d}.circular-queue-comparison-table th,.circular-queue-comparison-table td{padding:12px 15px;text-align:left;border:1px solid #eee}.circular-queue-comparison-table th{background-color:var(--theme-secondary);color:var(--theme-main);font-weight:600}.circular-queue-comparison-table tr:nth-child(2n){background-color:#f9f9f9}.circular-queue-applications-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.circular-queue-application-card{background-color:#fff;border-radius:var(--border-radius);padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid #eee;display:flex;flex-direction:column;align-items:center;text-align:center}.circular-queue-app-icon{width:50px;height:50px;background-color:var(--theme-secondary);border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:15px}.circular-queue-material-icon{font-size:24px}.circular-queue-application-card h4{color:var(--theme-main);margin:10px 0}.circular-queue-application-card p{margin:0;font-size:.9rem;line-height:1.5}.circular-queue-example-section{margin:30px 0}.circular-queue-example-section h4{color:var(--theme-main);margin-bottom:15px}.circular-queue-round-robin-example{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}.circular-queue-round-robin-ui{flex:3;min-width:300px;border:1px solid #ddd;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 8px #00000014}.circular-queue-round-robin-controls{background-color:#f5f5f5;padding:10px;display:flex;align-items:center;border-bottom:1px solid #ddd}.circular-queue-round-robin-button{background-color:#e0e0e0;border:none;width:30px;height:30px;border-radius:50%;margin-right:10px;cursor:pointer;display:flex;justify-content:center;align-items:center;font-size:12px}.circular-queue-round-robin-button:hover{background-color:#d0d0d0}.circular-queue-round-robin-address{flex:1;background-color:#fff;padding:8px 12px;border-radius:15px;border:1px solid #ddd;font-size:.9rem;color:#333;font-family:monospace}.circular-queue-round-robin-content{background-color:#fff;height:200px;display:flex;justify-content:center;align-items:center}.circular-queue-round-robin-queue{font-size:1.2rem;color:#333}.circular-queue-round-robin-queue-base{height:8px;background-color:#555;border-radius:0 0 4px 4px}.circular-queue-round-robin-explanation{flex:2;min-width:250px}.circular-queue-round-robin-explanation p{margin-top:0}.circular-queue-round-robin-explanation ul{padding-left:20px}.circular-queue-round-robin-explanation li{margin-bottom:8px}@keyframes circular-queue-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes circular-queue-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@media (max-width: 1100px){.circular-queue-operations-grid,.circular-queue-applications-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 992px){.circular-queue-top-section{flex-direction:column}.circular-queue-visualization-section,.circular-queue-controls-section{width:100%}.circular-queue-circular-queue-elements{min-height:250px}.circular-queue-circular-queue-diagram{flex-direction:column;align-items:center}.circular-queue-circular-queue-explanation{text-align:center}}@media (max-width: 768px){.circular-queue-controls-grid{grid-template-columns:1fr}.circular-queue-enqueue-controls{flex-direction:column}.circular-queue-operations-grid,.circular-queue-applications-grid{grid-template-columns:1fr}.circular-queue-study-tabs{flex-wrap:wrap}.circular-queue-tab-button{flex-basis:50%}}:root{--theme-main: #2196F3;--theme-secondary: #BBDEFB;--theme-top: #0D47A1;--theme-new: #0277BD;--top-indicator: #42A5F5;--bg-color: #f9f9f9;--card-bg: #ffffff;--border-radius: 6px;--shadow: 0 4px 12px rgba(0, 0, 0, .08);--animation-duration: 1s}.linked-list-page{font-family:Arial,sans-serif;background-color:var(--bg-color);padding:20px;max-width:100%;margin:0 auto}.linked-list-header-container{text-align:center;margin-bottom:20px}.linked-list-page-title{font-weight:700;margin-bottom:5px;font-size:2rem;color:var(--theme-main)}.linked-list-page-subtitle{font-size:1rem;color:#666;margin-top:0}.linked-list-top-section{display:flex;gap:20px;margin-bottom:20px}.linked-list-visualization-section{flex:3}.linked-list-controls-section{flex:2}.linked-list-linked-list-container{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);overflow:hidden;height:100%}.linked-list-container-header{background-color:var(--theme-main);color:#fff;padding:12px 15px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.linked-list-container-header h4{margin:0;font-size:1.1rem}.linked-list-container-body{padding:20px}.linked-list-head-pointer{color:var(--theme-main);font-weight:700;margin-bottom:10px}.linked-list-list-info{margin-bottom:15px;background-color:var(--theme-secondary);padding:10px;border-radius:5px;text-align:center;color:var(--theme-main)}.linked-list-linked-list-elements{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;padding:10px 0}.linked-list-list-node{display:flex;align-items:center;margin:10px 0}.linked-list-node-content{background-color:var(--theme-main);color:#fff;width:50px;height:50px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-weight:700;position:relative;transition:all .3s ease}.linked-list-node-content:hover{box-shadow:0 5px 10px #00000040;transform:translateY(-2px)}.linked-list-node-index{position:absolute;top:-60px;font-size:12px;background-color:#f1f1f1;color:#666;padding:2px 5px;border-radius:3px}.linked-list-node-pointer{display:flex;align-items:center;padding:65px 15px;color:#666}.linked-list-pointer-arrow{font-size:24px;margin:0 5px}.linked-list-null-pointer{background-color:#e0e0e0;color:#666;padding:5px 10px;border-radius:5px;font-style:italic;font-size:14px}.linked-list-list-node.linked-list-insert-animation .linked-list-node-content{animation:linked-list-insert-effect var(--animation-duration) cubic-bezier(.34,1.56,.64,1)}.linked-list-list-node.linked-list-delete-animation .linked-list-node-content{animation:linked-list-delete-effect var(--animation-duration) cubic-bezier(.34,1.56,.64,1)}@keyframes linked-list-insert-effect{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes linked-list-delete-effect{0%{transform:scale(1);opacity:1}to{transform:scale(0);opacity:0}}.linked-list-control-panel{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);height:100%;overflow:hidden}.linked-list-operations-group{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:15px}.linked-list-operations-divider{width:100%;height:1px;background-color:#e0e0e0;margin:15px 0}.linked-list-operation-btn{padding:10px 15px;margin:5px;font-size:.85rem;border-radius:var(--border-radius);transition:all .2s ease;position:relative;font-weight:500;border:none;cursor:pointer}.linked-list-operation-btn:hover{opacity:.9;transform:translateY(-1px)}.linked-list-operation-btn:active{transform:translateY(1px)}.linked-list-operation-btn:disabled{opacity:.6;cursor:not-allowed}.linked-list-operation-btn.primary{background-color:var(--theme-main);color:#fff}.linked-list-operation-btn.secondary{background-color:#6c757d;color:#fff}.linked-list-operation-btn.danger{background-color:#dc3545;color:#fff}.linked-list-operation-btn.info{background-color:#17a2b8;color:#fff}.linked-list-operation-btn.outline{background-color:transparent;border:1px solid #ddd;color:#555}.linked-list-operation-btn.outline:hover{background-color:#f8f9fa}.linked-list-message{padding:12px 15px;border-radius:var(--border-radius);margin-top:15px;display:flex;align-items:center;animation:linked-list-fadeIn .3s ease}.linked-list-message-icon{margin-right:10px;font-size:1.1rem;font-weight:700}.linked-list-message.success{background-color:#d4edda;color:#155724;border-left:3px solid #28a745}.linked-list-message.warning{background-color:#fff3cd;color:#856404;border-left:3px solid #ffc107}.linked-list-message.danger{background-color:#f8d7da;color:#721c24;border-left:3px solid #dc3545}.linked-list-message.info{background-color:#d1ecf1;color:#0c5460;border-left:3px solid #17a2b8}.linked-list-fullscreen-btn{background:transparent;border:none;color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px}.linked-list-fullscreen-btn:hover{text-decoration:underline}.linked-list-study-material-section{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);margin-top:40px;overflow:hidden}.linked-list-section-header{background-color:var(--theme-main);color:#fff;padding:20px;text-align:center}.linked-list-section-header h2{margin:0;font-size:1.6rem;font-weight:700}.linked-list-section-description{margin:10px 0 0;font-size:1rem;opacity:.9}.linked-list-study-tabs{display:flex;background-color:var(--theme-secondary);border-bottom:1px solid rgba(0,0,0,.1)}.linked-list-tab-button{padding:15px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-weight:600;color:var(--theme-main);transition:all .2s ease;flex:1;text-align:center}.linked-list-tab-button:hover{background-color:#ffffff80}.linked-list-tab-button.linked-list-active{border-bottom:3px solid var(--theme-main);background-color:#fffc}.linked-list-tab-content{padding:25px;min-height:400px;position:relative}.linked-list-tab-pane{animation:linked-list-fadeIn .3s ease;width:100%;height:100%;overflow:auto;position:relative}.linked-list-tab-pane h3{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:10px;margin-bottom:20px}.linked-list-tab-pane p{line-height:1.6;margin-bottom:20px}.linked-list-info-card{background-color:var(--theme-secondary);border-radius:var(--border-radius);padding:20px;margin:20px 0}.linked-list-info-card h4{margin-top:0;color:var(--theme-main)}.linked-list-info-card ul{margin:0;padding-left:20px}.linked-list-info-card li{margin-bottom:10px;line-height:1.5}.linked-list-info-card li:last-child{margin-bottom:0}.linked-list-operations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:30px 0}.linked-list-operation-card{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 2px 8px #00000014;padding:20px;border:1px solid #eee}.linked-list-operation-card h4{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:8px;margin-bottom:15px}.linked-list-operation-animation{display:flex;flex-direction:column;align-items:center;margin-bottom:15px;min-height:150px}.linked-list-anim-element{background-color:var(--theme-top);color:#fff;padding:8px 16px;border-radius:4px;margin-bottom:10px;font-weight:700}.linked-list-arrow{font-size:24px;margin:5px 0;color:var(--theme-main);font-weight:700}.linked-list-list-rep{width:120px;border:2px solid #ddd;border-radius:var(--border-radius);overflow:hidden}.linked-list-rep-item{background-color:var(--theme-main);color:#fff;padding:8px;text-align:center;border-bottom:1px solid rgba(255,255,255,.3);font-size:.9rem}.linked-list-rep-item.linked-list-highlight{background-color:var(--theme-top);animation:linked-list-pulse 1.5s infinite}.linked-list-operation-description{margin-top:15px}.linked-list-operation-description p{margin:10px 0;font-size:.95rem}.linked-list-code-container{margin:25px 0;border-radius:var(--border-radius);overflow:hidden;border:1px solid #ddd}.linked-list-code-header{background-color:var(--theme-secondary);padding:10px 15px;border-bottom:1px solid #ddd}.linked-list-code-header h4{margin:0;font-size:1.1rem;color:var(--theme-main)}.linked-list-code-block{background-color:#f5f5f5;padding:15px;margin:0;overflow-x:auto;font-family:monospace;line-height:1.5;font-size:.9rem}.linked-list-applications-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.linked-list-application-card{background-color:#fff;border-radius:var(--border-radius);padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid #eee;display:flex;flex-direction:column;align-items:center;text-align:center}.linked-list-app-icon{width:50px;height:50px;background-color:var(--theme-secondary);border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:15px}.linked-list-material-icon{font-size:24px}.linked-list-application-card h4{color:var(--theme-main);margin:10px 0}.linked-list-application-card p{margin:0;font-size:.9rem;line-height:1.5}@keyframes linked-list-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes linked-list-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@media (max-width: 1100px){.linked-list-operations-grid,.linked-list-applications-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 992px){.linked-list-top-section{flex-direction:column}.linked-list-visualization-section,.linked-list-controls-section{width:100%}.linked-list-linked-list-elements{min-height:250px}}@media (max-width: 768px){.linked-list-operations-group{flex-direction:column}.linked-list-operations-grid,.linked-list-applications-grid{grid-template-columns:1fr}.linked-list-study-tabs{flex-wrap:wrap}.linked-list-tab-button{flex-basis:50%}}.doubly-linked-page-wrapper{--theme-main: #9C27B0;--theme-secondary: #D1C4E9;--theme-top: #800080;--theme-new: #BB86FC;--top-indicator: #C77DFF;--bg-color: #f9f9f9;--card-bg: #ffffff;--border-radius: 6px;--shadow: 0 4px 12px rgba(0, 0, 0, .08);--animation-duration: 1s}body{margin:0;padding:0;background-color:var(--bg-color)}.doubly-linked-page-wrapper{font-family:Arial,sans-serif;background-color:var(--bg-color);padding:20px;max-width:100%;margin:0 auto}.header-container{text-align:center;margin-bottom:20px}.page-title{font-weight:700;margin-bottom:5px;font-size:2rem;color:var(--theme-main)}.page-subtitle{font-size:1rem;color:#666;margin-top:0}.top-section{display:flex;gap:20px;margin-bottom:20px}.visualization-section{flex:3}.controls-section{flex:2}.doubly-linked-container{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);overflow:hidden;height:100%}.container-header{background-color:var(--theme-main);color:#fff;padding:12px 15px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.container-header h4{margin:0;font-size:1.1rem}.container-body{padding:20px}.list-info{background:linear-gradient(145deg,#f1e6f8,#e6dbef);padding:20px;border-radius:12px;margin-bottom:25px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 5px 15px #0000000d;border:1px solid rgba(156,39,176,.1)}.info-item{font-size:1.2rem;color:#673ab7;margin-bottom:10px;font-weight:500}.info-tag{font-style:italic;color:#666;margin-top:5px;background-color:#ffffffb3;padding:3px 10px;border-radius:10px}.pointer-indicators{display:flex;justify-content:space-around;width:100%;margin-top:15px;gap:20px}.pointer-label{background:linear-gradient(145deg,#9c27b0,#8e24aa);color:#fff;padding:10px 18px;border-radius:25px;font-size:1rem;display:inline-block;font-weight:700;box-shadow:0 4px 8px #9c27b04d;transition:transform .3s ease,box-shadow .3s ease}.pointer-label:hover{transform:translateY(-2px);box-shadow:0 6px 12px #9c27b066}.pointer-label.head{background:linear-gradient(145deg,#8e24aa,#6a1b9a)}.pointer-label.tail{background:linear-gradient(145deg,#ab47bc,#9c27b0)}.doubly-linked-elements{min-height:200px;padding:20px;border:1px solid #eee;border-radius:var(--border-radius);background-color:#fcfcfc;display:flex;justify-content:center;align-items:center;overflow-x:auto}.empty-list-message{border:2px dashed #e0e0e0;border-radius:var(--border-radius);padding:30px;text-align:center;color:#9e9e9e;font-style:italic;width:100%}.nodes-container{display:flex;flex-wrap:nowrap;align-items:center;padding:10px 0;min-height:150px;width:fit-content;margin:0 auto;position:relative}.nodes-container:before{content:"";position:absolute;top:50%;left:40px;right:40px;height:8px;background-color:#9c27b033;transform:translateY(-50%);z-index:0;border-radius:4px}.node-wrapper{display:flex;align-items:center;margin:0 5px;padding:5px;border-radius:var(--border-radius);transition:all .3s ease;position:relative}.node-content{background-color:var(--theme-main);color:#fff;width:60px;height:60px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 15px;box-shadow:0 3px 6px #0003;position:relative;transition:all .3s ease;z-index:1}.node-content:hover{transform:translateY(-5px);box-shadow:0 6px 12px #0000004d}.node-value{font-weight:700;font-size:1.2rem}.node-index{position:absolute;top:-25px;font-size:.8rem;background-color:#f5f5f5;color:#333;padding:2px 6px;border-radius:3px;border:1px solid #ddd;white-space:nowrap}.pointer{font-size:22px;font-weight:700;color:var(--theme-main);margin:0 5px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(145deg,#f0e6f6,#e0d6e6);border-radius:50%;border:1px solid rgba(156,39,176,.3);position:relative;z-index:1;box-shadow:0 3px 5px #0000001a}.pointers-container{display:flex;flex-direction:column;height:75px;justify-content:space-between;margin:0 5px;z-index:1}.prev-pointer,.next-pointer{color:#8e24aa}.null-pointer{background-color:#f5f5f5d9;color:#666;padding:7px 12px;border-radius:12px;font-size:.85rem;margin:0 15px;border:1px solid #ddd;white-space:nowrap;z-index:1;box-shadow:0 2px 4px #0000000d;font-style:italic}.null-pointer.prev{margin-right:5px}.null-pointer.next{margin-left:5px}.node-content.insert-animation{animation:insert-effect var(--animation-duration) cubic-bezier(.34,1.56,.64,1);background-color:var(--theme-new)}.node-content.delete-animation{animation:delete-effect var(--animation-duration) cubic-bezier(.34,1.56,.64,1);background-color:#e57373}@keyframes insert-effect{0%{transform:scale(0);opacity:0}60%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes delete-effect{0%{transform:scale(1);opacity:1}to{transform:scale(0);opacity:0}}.control-panel{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);height:100%;overflow:hidden}.input-group{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.form-group{flex:1;min-width:200px}.form-label{display:block;margin-bottom:5px;font-weight:600;color:#333}.form-control{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:all .2s ease}.form-control:focus{outline:none;border-color:var(--theme-main);box-shadow:0 0 0 2px #9c27b033}.form-control:disabled{background-color:#f5f5f5;cursor:not-allowed}.operations-group{margin-bottom:20px}.operations-title{text-align:center;font-size:1.1rem;color:var(--theme-main);margin-bottom:15px;padding-bottom:5px;border-bottom:1px solid #eee}.operations-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.operations-divider{height:1px;background-color:#eee;margin:20px 0}.utility-buttons{display:flex;justify-content:space-around;gap:10px;margin-top:15px}.operation-btn{padding:10px 15px;border-radius:var(--border-radius);font-weight:500;cursor:pointer;border:none;transition:all .2s ease;min-width:120px;text-align:center}.operation-btn.primary{background-color:var(--theme-main);color:#fff}.operation-btn.danger{background-color:#d32f2f;color:#fff}.operation-btn.secondary{background-color:#757575;color:#fff}.operation-btn.outline{background-color:transparent;border:1px solid #ddd;color:#555}.operation-btn:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 2px 5px #0000001a}.operation-btn:active{transform:translateY(0)}.operation-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.message{padding:12px 15px;border-radius:var(--border-radius);margin-top:20px;display:flex;align-items:center;animation:fadeIn .3s ease}.message-icon{margin-right:10px;font-size:1.1rem;font-weight:700}.message.success{background-color:#d4edda;color:#155724;border-left:3px solid #28a745}.message.warning{background-color:#fff3cd;color:#856404;border-left:3px solid #ffc107}.message.danger{background-color:#f8d7da;color:#721c24;border-left:3px solid #dc3545}.message.info{background-color:#d1ecf1;color:#0c5460;border-left:3px solid #17a2b8}.fullscreen-btn{background:transparent;border:none;color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px}.fullscreen-btn:hover{text-decoration:underline}.study-material-section{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);margin-top:40px;overflow:hidden}.section-header{background-color:var(--theme-main);color:#fff;padding:20px;text-align:center}.section-header h2{margin:0;font-size:1.6rem;font-weight:700}.section-description{margin:10px 0 0;font-size:1rem;opacity:.9}.study-tabs{display:flex;background-color:var(--theme-secondary);border-bottom:1px solid rgba(0,0,0,.1)}.tab-button{padding:15px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-weight:600;color:var(--theme-main);transition:all .2s ease;flex:1;text-align:center}.tab-button:hover{background-color:#ffffff80}.tab-button.active{border-bottom:3px solid var(--theme-main);background-color:#fffc}.tab-content{padding:25px;min-height:400px;position:relative}.tab-pane{animation:fadeIn .3s ease;width:100%;height:100%;overflow:auto;position:relative}.tab-pane h3{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:10px;margin-bottom:20px}.tab-pane p{line-height:1.6;margin-bottom:20px}.tab-pane h4{color:var(--theme-main);margin-top:25px;margin-bottom:15px}.tab-pane ul{padding-left:20px;margin-bottom:20px}.tab-pane li{margin-bottom:8px;line-height:1.5}.info-card{background-color:var(--theme-secondary);border-radius:var(--border-radius);padding:20px;margin:20px 0}.info-card h5{margin-top:0;color:var(--theme-main);margin-bottom:15px}.comparison-table{width:100%;border-collapse:collapse;margin:20px 0;box-shadow:0 2px 5px #0000000d}.comparison-table th,.comparison-table td{padding:12px 15px;text-align:left;border:1px solid #eee}.comparison-table th{background-color:var(--theme-secondary);color:var(--theme-main);font-weight:600}.comparison-table tr:nth-child(2n){background-color:#f9f9f9}.operations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:30px 0}.operation-card{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 2px 8px #00000014;padding:20px;border:1px solid #eee}.operation-card h4{margin-top:0;color:var(--theme-main);border-bottom:2px solid var(--theme-secondary);padding-bottom:8px;margin-bottom:15px}.operation-animation{display:flex;flex-direction:column;align-items:center;margin-bottom:15px;min-height:150px;justify-content:center}.anim-element{background-color:var(--theme-top);color:#fff;padding:8px 16px;border-radius:4px;margin-bottom:10px;font-weight:700}.arrow{font-size:24px;margin:5px 0;color:var(--theme-main);font-weight:700}.list-rep{width:120px;border:2px solid #ddd;border-radius:var(--border-radius);overflow:hidden}.rep-item{background-color:var(--theme-main);color:#fff;padding:8px;text-align:center;border-bottom:1px solid rgba(255,255,255,.3);font-size:.9rem}.rep-item.highlight{background-color:var(--theme-top);animation:pulse 1.5s infinite}.operation-description{margin-top:15px}.operation-description p{margin:10px 0;font-size:.95rem}.code-container{margin:25px 0;border-radius:var(--border-radius);overflow:hidden;border:1px solid #ddd}.code-header{background-color:var(--theme-secondary);padding:10px 15px;border-bottom:1px solid #ddd}.code-header h4{margin:0;font-size:1.1rem;color:var(--theme-main)}.code-block{background-color:#f5f5f5;padding:15px;margin:0;overflow-x:auto;font-family:monospace;line-height:1.5;font-size:.9rem}.applications-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.application-card{background-color:#fff;border-radius:var(--border-radius);padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid #eee;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .3s ease}.application-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001a}.app-icon{width:50px;height:50px;background-color:var(--theme-secondary);border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:15px}.material-icon{font-size:24px}.application-card h4{color:var(--theme-main);margin:10px 0}.application-card p{margin:0;font-size:.9rem;line-height:1.5}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@media (max-width: 1100px){.operations-grid,.applications-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 992px){.top-section{flex-direction:column}.visualization-section,.controls-section{width:100%}.doubly-linked-elements{min-height:250px}.operations-buttons{flex-direction:column}.operation-btn{width:100%}}@media (max-width: 768px){.input-group{flex-direction:column}.operations-grid,.applications-grid{grid-template-columns:1fr}.study-tabs{flex-wrap:wrap}.tab-button{flex-basis:50%}}@media (max-width: 480px){.node-wrapper{transform:scale(.9)}.tab-button{flex-basis:100%}}.app-container{--navbar-height: 60px;--navbar-mobile-height: 55px}.main-content,.page-container,.content-wrapper,[id^=page-],[id*=-page]{padding-top:var(--navbar-height)}.main-content>#home:first-child,.main-content>.hero-hero-sec:first-child{margin-top:calc(-1 * var(--navbar-height))}.main-content:has(>#home:first-child),.main-content:has(>.hero-hero-sec:first-child){padding-top:0}.main-content.no-top-padding{padding-top:0}body>div#root>div:not(.navbar):first-child,#root>div:not(.navbar)>div:first-child:not(.app-container){margin-top:var(--navbar-height)}@media (max-width: 768px){.app-container{--navbar-height: var(--navbar-mobile-height)}}body{scroll-behavior:smooth;width:100vw;overflow-x:hidden;margin:0;padding:0}*{padding:0;margin:0;box-sizing:border-box}
