@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Krub:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;1,200;1,300;1,400;1,500;1,600;1,700&display=swap";.header{background-color:#060b26;height:80px;display:flex;justify-content:start;align-items:center}.card{background:#ffffff2e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:none;border-radius:12px;width:200px;height:150px;color:#fff;font-weight:700;font-size:1.2rem;text-decoration:none;transition:all .3s ease;cursor:pointer;text-align:center}.card:hover{transform:translateY(-5px);background:#ffffff26;box-shadow:0 6px 12px #0003}.course-container{width:100vw;height:100vw}.course-title p,h3{margin:0}.class-grid{display:grid;padding-left:80px;padding-right:80px;height:100%;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;padding:1rem;align-items:stretch}.course-color{width:100%;height:100%;background-color:var(--color-pastel-icyblue);border-radius:var(--radius-sm)}.course-card{text-decoration:none;color:#fff;min-height:160px;max-height:200px;cursor:pointer;background:var(--color-low-opacity-white-1);border:1px solid var(--color-low-opacity-white-3);border-radius:var(--radius-lg);padding:var(--padding-sm);box-shadow:0 6px 20px #0000001a;text-align:center;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;justify-content:space-between}.course-card:hover{box-shadow:0 10px 25px #00000026;transform:translateY(-3px);background-color:var(--color-low-opacity-white-2)}.enroll-wrapper{display:flex;justify-content:center;align-items:center;height:100vh;width:100%}.enroll-card{background:#ffffff14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.15);border-radius:18px;box-shadow:0 8px 32px #0000004d;padding:2.5rem 3rem;width:100%;max-width:420px;text-align:center;color:#fff;animation:fadeIn .3s ease}.enroll-icon{background:linear-gradient(135deg,#8e7cff,#b8a9ff);width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;box-shadow:0 6px 20px #8e7cff66}.enroll-card h2{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.enroll-card label{text-align:left;display:block;font-weight:600;font-size:.95rem;margin-bottom:.4rem;color:#fff}.enroll-card input{width:100%;max-width:100%;padding:.9rem 1rem;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:#fff;font-size:1rem;outline:none;margin-bottom:1.2rem;box-sizing:border-box;transition:all .2s ease}.enroll-card input::placeholder{color:#ffffff80}.enroll-card input:focus{border-color:#8e7cff;box-shadow:0 0 0 3px #8e7cff40}.enroll-card small{display:block;text-align:left;font-size:.8rem;color:#fff9;margin-bottom:1.5rem}.btn-enroll{width:100%;max-width:100%;padding:.9rem 1rem;border:none;border-radius:10px;background:linear-gradient(135deg,#6c63ff,#8e7cff);color:#fff;font-weight:600;font-size:1rem;display:inline-block;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 14px #6c63ff4d;box-sizing:border-box}.btn-enroll:hover{background:linear-gradient(135deg,#7c72ff,#a091ff);box-shadow:0 6px 20px #6c63ff73}.subnav{--subnav-accent: #b05aff;width:100%;border-bottom:1px solid rgba(255,255,255,.15)}.subnav-list{display:flex;gap:2rem;align-items:center;list-style:none;padding:.75rem 1.25rem .5rem;margin:0;overflow-x:auto;scrollbar-width:none}.subnav-list::-webkit-scrollbar{display:none}.subnav-item{flex:0 0 auto}.subnav-link{position:relative;display:inline-block;padding:.5rem 0;color:#fff;text-decoration:none;font-weight:700;letter-spacing:.02em}.subnav-link:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:3px;background:var(--subnav-accent);transform:scaleX(0);transform-origin:left;transition:transform .18s ease-in-out;border-radius:2px}.subnav-link:hover:after,.subnav-link:focus-visible:after,.subnav-link.is-active:after{transform:scaleX(1)}.class-page{font-family:Arial,sans-serif;margin:2rem;padding:2rem;background-color:#f9f9f9}h1{font-size:3rem;text-align:center;margin-bottom:2rem}.currentFlashcards,.currentPracticeTests{text-align:center;font-size:2rem;margin-bottom:1rem}.card-container{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;padding:1rem 0;align-items:center}.class-card{display:flex;flex-direction:column;padding:1rem;border-radius:12px;background:#ffffff14;cursor:pointer}.class-card:hover{background:#ffffff26}.class-card-header{display:flex;justify-content:space-between;align-items:flex-start;width:100%}.class-card img{width:50%;height:auto;margin-bottom:1rem}.card-title{font-weight:700;font-size:1.2rem}.card-subtitle{font-size:.9rem;opacity:.85}button:hover{transform:translateY(-10px);box-shadow:0 8px 16px #00000026}.add-card{border:1px solid rgba(255,255,255,.35);background:#ffffff14;font-size:2rem;line-height:1;width:100px;height:75px}.add-card:hover{background:#ffffff24}.add-card:focus-visible,.class-card:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:3px}.card-container{display:flex;flex-wrap:wrap;justify-content:center;gap:1.25rem;padding:1rem 0}.card-actions{display:flex;align-items:center;gap:.5rem}.base-card-style{border-radius:var(--radius-md);box-shadow:var(--shadow-md);color:var(--color-text-primary)}.list-card{background-color:var(--color-surface-purple);transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;align-items:flex-start;padding:10px;width:320px;min-height:240px;box-shadow:var(--shadow-md);border:1px solid var(--color-border-light);position:relative;text-decoration:none;pointer-events:auto;justify-content:flex-start}.user-card{color:var(--color-text-primary);border:1px solid var(--color-border-light);cursor:pointer;text-decoration:none}.user-card-container{width:100%;padding:var(--space-4);align-items:center;justify-content:space-between}.profile-pic-icon{width:var(--space-12);height:var(--space-12)}.user-card-item{width:30%;display:flex;flex-direction:column;align-items:center}.list-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-5px)}.card-content{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;padding:12px;gap:16px}.card-text{display:flex;flex-direction:column}.list-card-subtitle{font-size:14px;color:var(--color-text-primary);margin:0}.card-icon{display:flex;flex-direction:column;align-items:center;padding:var(--space-2);border-radius:var(--space-2);color:#fff}.card-icon.purple{background-color:#e8e7fd;color:#6361e9}.card-text h2{font-size:16px;margin:0}.card-text p{font-size:14px}.list-card-actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;width:100%;gap:.5rem}.edit-wrapper{position:relative;display:inline-block;z-index:600}.menu-dropdown{position:absolute;bottom:100%;right:0;background:#323232f2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:.4rem;list-style:none;padding:.5rem 0;margin:0;min-width:9rem;z-index:500;box-shadow:0 4px 8px #0003;pointer-events:auto}.menu-button{background:none;display:flex;align-items:center;justify-content:center;border:none;font-size:1.4rem;cursor:pointer;padding:.2rem}.menu-dropdown li{padding:.6rem 1rem;cursor:pointer;font-size:.9rem;color:#eee;display:flex;align-items:center}.menu-dropdown li:hover{background-color:#ffffff1a}.card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;width:100%}.profile-pic-rounded{width:40px;height:40px;border-radius:9999px;object-fit:cover;background:#222}.list-card-user-data{align-items:center;overflow:hidden;white-space:nowrap}.img-preview{width:100%;min-height:120px;max-height:120px;height:100%;color:#000;background-color:#bfdbfe95;border-radius:var(--radius-sm)}.img-preview-empty{align-items:center;width:100%;min-height:120px;max-height:120px;height:100%;justify-content:center;color:var(--color-background-disabled)}.list-card-info-container{width:100%;height:100%;margin:0}.list-card-title p{align-items:center;margin:0;width:100%}.list-card-title{align-items:flex-start;width:100%}.list-card-title h5{margin:0;font-size:1rem;font-weight:600;flex:1;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;white-space:normal}.list-card-subtitle{color:var(--color-text-muted)}.menu-button.favorited{color:gold}.list-card-footer{width:100%;padding:var(--space-1)}.hero-button{display:flex;width:200px;height:56px;justify-content:center;align-items:center;color:#fff;padding:var(--padding-md);text-align:center;font-size:1.25rem;font-weight:400;background:linear-gradient(45deg,#18c8ff,#933ffe);border:none;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;border-radius:12px}.hero-button:hover{box-shadow:0 10px 25px linear-gradient(45deg,#18C8FF 0%,#933FFE 100%);transform:translateY(-3px)}.hero-section{align-items:center;padding-bottom:3rem}.navbar{display:flex;justify-content:space-between;align-items:center;background-color:transparent;width:100%;position:fixed;top:0;left:0;height:var(--size-navbar-height)}.navbar-logo{align-items:center;justify-content:center;max-height:100%}.logo-small{width:100px;height:100px}.nav-links{justify-content:flex-end;align-items:center;padding-left:2rem;height:100%}.nav-links a{font-weight:600;font-size:1rem;color:#fffd;text-decoration:none}.nav-links a:hover{color:#646cff}.register-button{padding-right:2rem}h1.mission1{font-size:4rem;font-weight:600;text-align:center;margin-top:8rem}h2.mission2{font-size:2rem;font-weight:300;text-align:center;color:#9292b7;margin-bottom:3rem}.quicklinks{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2rem;margin-top:2rem}.quicklinks a{font-weight:500;color:#646cff;text-decoration:inherit}.quicklinks a:hover{color:#535bf2}.sec-2-container{align-items:center;width:100%}.landing-sec-2{align-items:center;justify-content:center;width:100%;height:560px}.sec-2-box{width:30%;height:100%;border:1px solid var(--color-rb-outline);border-radius:var(--radius-md)}.landing-sec-1{align-items:center;width:100%;border-radius:var(--radius-lg);padding-top:4rem;height:1024px}.team-members-sec-1{display:flex;flex-direction:column;align-items:center;width:100%;border-radius:var(--radius-lg);padding-top:4rem;min-height:1024px}.sec-1-box{max-width:80%;min-width:80%;padding:var(--padding-md);border-radius:var(--radius-md);min-height:40%;border:1px solid #271e37}.sec-description{border-radius:var(--radius-md);justify-items:center;align-items:start;padding:var(--space-4);font-size:1rem;min-width:40%;max-width:40%}.sec-image{padding:var(--space-4);border-radius:var(--radius-md);max-width:60%;align-items:center;justify-content:center}.mockup-img{width:600px;height:367px;align-items:center}.sec-title{font-size:1.5rem}.dash-icon{width:48px;height:48px}.video-styling{border-radius:var(--radius-md)}.section-title{font-weight:400;font-size:2rem}.glass-card{background-color:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:15px;padding:20px;box-shadow:0 4px 6px #0000001a}.team-page{margin-top:var(--size-navbar-height);width:100%}.team-photo{max-height:400px;max-width:400px}.infinite-scroll-wrapper{position:relative;display:flex;align-items:center;justify-content:center;width:100%;overflow:hidden;overscroll-behavior:none}.infinite-scroll-wrapper:before,.infinite-scroll-wrapper:after{content:"";position:absolute;background:linear-gradient(var(--dir, to bottom),060010,transparent);height:25%;width:100%;z-index:1;pointer-events:none}.infinite-scroll-wrapper:before{top:0}.infinite-scroll-wrapper:after{--dir: to top;bottom:0}.infinite-scroll-container{display:flex;flex-direction:column;overscroll-behavior:contain;padding-inline:1rem;cursor:grab;transform-origin:center center}.infinite-scroll-item{--accent-color: #ffffff;border-radius:15px;display:flex;align-items:center;justify-content:center;padding:1rem;font-size:1.25rem;font-weight:600;text-align:center;border:2px solid var(--accent-color);-webkit-user-select:none;user-select:none;box-sizing:border-box;position:relative}.login-wrapper{position:fixed;height:100vh;width:100vw;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#0a061a!important}.login-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;max-width:100%;max-height:100%;background:none!important}.login-nav{position:absolute;top:2rem;left:3rem;right:3rem;display:flex;justify-content:space-between;align-items:center;z-index:2}.nav-links{display:flex;gap:1.2rem}.nav-btn{color:#fff;padding:.6rem 1.5rem;border-radius:8px;text-decoration:none;transition:.3s}.login-content{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;height:100%}.login-card{width:380px;padding:2.5rem;border-radius:20px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff1a;color:#fff;text-align:center;display:flex;flex-direction:column;gap:2rem}.login-card h2{font-size:2rem;font-weight:600}.login-subtitle{font-size:1rem;opacity:.8;margin-bottom:1rem}.login-input{width:100%;text-align:left}.login-input label{display:block;font-size:1rem;margin-bottom:.4rem}.login-input-field{width:100%;padding:.9rem 1rem;border-radius:10px;border:none;font-size:1rem;box-sizing:border-box;margin-bottom:1rem}.login-button{width:100%;padding:.8rem 0;border-radius:10px;background:linear-gradient(90deg,#7b5bff,#81d9ef);border:none;color:#fff!important;font-size:1.1rem;transition:.3s;cursor:pointer}.login-button:hover{transform:translateY(-2px);opacity:.95}.register-text{font-size:.95rem;margin-top:1rem}.register-link{color:#81d9ef;text-decoration:none;font-weight:500}.error{color:#ff6b6b;margin-top:.5rem;font-size:.9rem}.navbar{background:linear-gradient(to top,#0a061ae6 100%,#0a061ae6,#0a061ae6 40%,#0a061ae6 0%)!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:10}.liquid-ether-container{position:relative;overflow:hidden;width:100%;height:100%;touch-action:none}.topbar{background:var(--color-background-dark);height:56px;display:flex;align-items:center;width:100%;justify-content:space-between;position:fixed;top:0;left:0;z-index:1002}.background{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,#1a1a2e,#0f0c29,#000);overflow:hidden;z-index:-1}.menu-bars{margin-left:1rem;font-size:1.75rem;background:none}.profile-icon{margin-right:1rem;font-size:1.75rem}.nav-menu{background-color:var(--color-background-dark);width:240px;height:100vh;display:flex;justify-content:center;position:fixed;top:0;left:-100%;transition:.35s;z-index:1001}.nav-menu.active{left:0;transition:.35s}.topbar-left{display:flex;align-items:center}.nav-text a{text-decoration:none;color:var(--color-background-dark);font-size:18px;width:95%;height:100%;display:flex;align-items:center;padding:0 16px;border-radius:4px}.nav-menu-items{background:var(--color-background-dark);width:100%;padding:8px}.navbar-toggle{width:100%;height:40px;display:flex;justify-content:flex-start;align-items:center}#main{transition:margin-left .5s;padding:20px}.dropdown-container{position:relative;display:flex;align-items:center;justify-content:center;padding-bottom:1rem;margin-right:-1rem;height:56px}.icon-button{background:none;border:none;font-size:24px;cursor:pointer;padding:8px}.dropdown-menu{position:absolute;box-shadow:0 4px 6px #0000001a;background-color:#fff;border:1px solid #ddd;list-style-type:none;top:100%;right:0;margin-top:0;min-width:180px;padding:6px 0;border-radius:10px;z-index:1200}.profile-icon img{width:100%;height:100%;object-fit:cover;display:block}.profile-icon{width:45px;height:45px;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:50%;overflow:hidden;background:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.dropdown-menu li{padding:8px 16px;cursor:pointer}.dropdown-menu li:hover{background-color:#f0f0f0}.dropdown-menu a,#profileLink,.dropdown-menu button{text-decoration:none;color:#333;display:block}.user-name{color:#fff;margin-right:12px;letter-spacing:.2px;white-space:nowrap;max-width:14rem;overflow:hidden;text-overflow:ellipsis;padding-top:1rem}.notes-input-container{display:flex;flex-direction:column;align-items:center;padding:2rem 3rem;color:#f5f5f5;min-height:100vh}.notes-input-container{background:transparent!important;box-shadow:none!important}.notes-input-container h2{font-size:2rem;font-weight:700;margin-bottom:1rem;text-align:center;text-transform:capitalize}.score{font-size:1.6rem;font-weight:700;color:#4ade80;margin-bottom:2rem;text-align:center}.question-container{width:90%;max-width:800px;background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;transition:all .3s ease}.question-correct{border-left:4px solid #22c55e;box-shadow:0 0 8px #22c55e4d}.question-incorrect{border-left:4px solid #ef4444;box-shadow:0 0 8px #ef44444d}.question-container strong{font-size:1.1rem}.status-badge{font-size:.9rem;margin-left:.5rem;font-weight:600}.status-badge.correct{color:#22c55e}.status-badge.incorrect{color:#ef4444}.option-label{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;margin:.3rem 0;border-radius:6px;transition:background .2s;cursor:pointer}.option-label:hover{background:#ffffff14}.option-correct{background:#22c55e26;border:1px solid rgba(34,197,94,.4)}.option-incorrect{background:#ef444426;border:1px solid rgba(239,68,68,.4)}.correct-indicator{color:#22c55e;font-size:.9rem}.explanation{margin-top:1rem;background:#ffffff12;border-left:3px solid #60a5fa;border-radius:8px;padding:.75rem 1rem;font-size:.95rem;line-height:1.4}.quiz-actions{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.quiz-actions button{padding:.7rem 1.5rem;font-size:1rem;border:none;border-radius:8px;cursor:pointer;background:#54286d;color:#fff;transition:background .2s}.quiz-actions button:hover{background:#6e3c8a}.btn-ghost{background:transparent;border:1px solid #ccc}.btn-ghost:hover{background:#ffffff1a}.background{position:fixed;width:100%;height:100%;z-index:-1}.flashcard-layout{display:flex;flex-direction:column;align-items:center;width:100%;min-height:100vh;color:#fff;padding-top:2rem;box-sizing:border-box}.flashcard-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;position:relative}.welcome-title{font-size:2rem;margin-bottom:2rem;text-shadow:1px 1px 3px rgba(0,0,0,.5)}.title-row{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;justify-content:center;flex-wrap:nowrap}.title-row h2{margin:0;justify-items:center;padding-top:10px}.title-edit-btn{width:100px;padding:.5rem;border-radius:8px;border:1px solid rgba(255,255,255,.7);background:#ffffff1f;color:#fff;cursor:pointer;font-size:.95rem}.title-edit-btn:hover{background:#fff3}.editable-title{margin:0;font-size:2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.editable-title-input{min-width:18rem;border-radius:8px;border:1px solid rgba(255,255,255,.6);background:#fffffff2;color:#111;font-size:1.1rem}.option-cards-container{display:flex;flex-direction:row;gap:2rem;flex-wrap:wrap;justify-content:center}.option-card{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:2rem;width:200px;text-align:center;cursor:pointer;box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:transform .2s ease,.2s ease,box-shadow .2s ease;font-size:1.5rem}.option-card:hover{transform:scale(1.05);background:#ffffff40;box-shadow:0 6px 20px #00000040}.flashcard{background:#f9f9f9e6;color:#333;border-radius:12px;padding:2rem;width:40rem;text-align:center;box-shadow:0 4px 15px #0003;margin:1rem 0;cursor:pointer}.icon-button{transition:transform .2s ease}.icon-button:hover{transform:scale(1.15)}.remove-btn svg{color:#ff5a5f}.check-btn svg{color:#28a745}.save-button{padding:.5rem 1rem;border:1px solid white;border-radius:8px;background:#ffffff1a;color:#fff;font-size:1.1rem;cursor:pointer;width:60%}.save-button:hover{background:#fff3}.study-button{margin-top:.75rem;padding:.5rem 1rem;border:1px solid white;border-radius:8px;background:#ffffff1a;color:#fff;font-size:1.1rem;cursor:pointer;width:60%}.study-button:hover{background:#fff3}.study-button:disabled{opacity:.55;cursor:not-allowed}.study-popup .study-close-button{all:unset;position:absolute;top:12px;right:16px;width:32px;height:32px;color:#ff5a5f;font-weight:700;font-size:2rem;cursor:pointer}.popup-overlay{background:#00000073;position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:10;padding:1rem}.popup-overlay textarea{width:100%;min-height:320px;padding:.5rem;margin-top:1rem;border:none;border-radius:8px;background-color:#fff;color:#000;font-size:1rem;box-sizing:border-box}.popup-overlay input{width:97.5%;margin:.5rem 0;padding:.5rem;border:none;border-radius:8px;background-color:#fff;color:#000;font-weight:600;font-size:large}.popup-content{background:#ffffff1a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:2rem;border-radius:16px;box-sizing:border-box;width:min(520px,92vw);max-height:85vh;overflow:auto;color:#fff;text-align:center;justify-content:center}.popup-content.popup-large{width:min(900px,95vw);padding:2.25rem}.popup-content.popup-large input{height:44px}.popup-content.popup-large textarea{min-height:320px;resize:vertical;line-height:1.35}.popup-content ul{list-style:none;padding:0;margin:1rem 0}.popup-content ul button{width:100%;margin:.5rem 0;padding:.75rem;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:#ffffff1a;color:#fff;cursor:pointer}.popup-content ul button:hover{background:#fff3}.popup-buttons{display:flex;margin-top:1rem}.popup-buttons button:not(.study-close-button){border-radius:8px;border:1px solid white;padding:.5rem 1.2rem;background:#ffffff1a;color:#fff;cursor:pointer}.delete-popup{background:#a29b9b;color:#fff}.inline-add-form{margin-top:2rem;display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:1200px}.inline-add-form .input-row{display:flex;gap:2rem;width:100%}.inline-add-form textarea{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;resize:vertical;max-height:60vh}.inline-add-form input,.inline-add-form textarea{min-height:160px;width:300px;font-size:1rem;padding:1.25rem 1.5rem;border-radius:18px;box-shadow:0 10px 28px #0000002e}.inline-add-form input::placeholder,.inline-add-form textarea::placeholder{opacity:.55}.inline-add-form button{width:60%;padding:.5rem;border:1px solid white;border-radius:8px;background:#ffffff1a;color:#fff;font-size:1.1rem;cursor:pointer;margin-top:1rem}.inline-add-form button:hover{background:#fff3}.flashcard-view-container{display:flex;gap:3rem;align-items:flex-start;height:auto}.card-stack{width:220px;height:80vh;background:#ffffff0d;border-radius:8px;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.card-list{overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.card-preview{position:relative;height:80px;flex-shrink:0;background:#ffffff1a;border-radius:6px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;cursor:pointer;overflow:hidden;white-space:normal;word-break:break-word;padding:.5rem 1rem}.card-preview.selected{border:2px solid #3498db}.card-preview:hover{background:#fff3}.card-preview .delete-button{position:absolute;top:1px;right:12px;width:32px;height:32px;border:none;border-radius:50%;box-sizing:border-box;background:#ff5a5f14;color:#ff5a5f;font-weight:700;line-height:1;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:0 0 auto;z-index:1}.flashcard-main{flex-grow:1;display:flex;flex-direction:column;align-items:center}.study-popup{all:unset;padding:2rem;position:relative;width:min(750px,95vw);max-height:90vh;text-align:center;background:#ffffff1a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:16px}.study-card{margin:0 auto 1rem;width:min(640px,88vw);min-height:220px;background:#ffffffe6;color:#222;border-radius:14px;display:flex;align-items:center;justify-content:center;cursor:pointer}.study-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px #00000047}.study-card-face{font-size:1.125rem;line-height:1.5;word-break:break-word;white-space:pre-wrap}.study-progress-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:1.2rem;font-weight:700;padding:1rem}.progress-badge{padding:.4rem 1rem;border-radius:2rem;font-size:1.2rem;font-weight:600;min-width:100px;text-align:center}.learning{color:#fff;border:3px solid #d9534f;background:#d9534f1a}.know{color:#fff;border:3px solid #28a745;background:#28a7451a}.use-existing-btn,.save-button.use-existing-btn{width:100%;margin-top:.5rem;padding:.5rem 1rem;border:1px solid white;border-radius:8px;background:#ffffff1a;color:#fff;font-size:1.1rem;cursor:pointer;transition:background .2s ease}.use-existing-btn:hover{background:#fff3}.note-selection-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;justify-content:center;align-items:center;z-index:20;padding:1rem}.note-selection-content{background:#ffffff1a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:16px;box-shadow:0 10px 28px #00000059;width:min(700px,92vw);max-height:80vh;overflow-y:auto;padding:2rem;color:#fff;position:relative;text-align:left}.note-selection-content .close-btn{all:unset;position:absolute;top:12px;right:18px;font-size:2rem;font-weight:700;color:#ff5a5f;cursor:pointer}.note-selection-content h3{margin-top:0;font-size:1.4rem;font-weight:600;text-align:center}.note-selection-list{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;max-height:60vh;overflow-y:auto}.note-selection-card{background:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:10px;padding:1rem 1.25rem;cursor:pointer;transition:background .2s ease,transform .2s ease}.note-selection-card:hover{background:#fff3;transform:translateY(-2px)}.note-selection-card h4{margin:0;font-size:1.05rem;font-weight:600;color:#fff}.note-selection-card p{margin-top:.5rem;font-size:.95rem;color:#ddd;line-height:1.5}.note-selection-list::-webkit-scrollbar{width:8px}.note-selection-list::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.note-selection-list::-webkit-scrollbar-thumb:hover{background:#ffffff80}.spinner{border:4px solid rgba(255,255,255,.2);border-top:4px solid #fff;border-radius:50%;width:36px;height:36px;animation:spin .8s linear infinite;margin:1rem auto}#root{width:100vw;justify-items:center;align-items:center}.h1,.question{font-weight:700;font-size:large}.options{display:flex;flex-direction:column;gap:10px}.options label{display:flex;align-items:center;cursor:pointer;font-weight:400}button:hover{transform:none!important;box-shadow:none!important}button{margin:1rem auto 0;width:80%}.quiz-container{align-items:center;width:75vw}.notes-input-container{display:flex;width:80%;padding:1rem;flex-direction:column;gap:10px;box-sizing:border-box;justify-content:center;align-self:center}.paste-notes{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}#notes-textarea{width:100%;height:200px;padding:10px;border-radius:10px;border:1px solid #ccc;resize:none;color:#000;font-size:1rem;background-color:#ccc}.quiz-title{display:flex;flex-direction:column;font-size:1rem;font-weight:700;margin-bottom:1rem;gap:1rem}.notes-textarea-label{font-size:1rem;font-weight:700}#quiz-title-input{width:100%;justify-content:space-between;padding:10px;border-radius:10px;border:1px solid #ccc;color:#000;font-size:1rem;background-color:#ccc}.question-container{background:#ffffff0d;border-radius:10px;border:1px solid #ccc;padding:3.5rem;margin-bottom:2rem;box-shadow:0 4px 8px #0000001a;width:100%}.question{font-size:1.2rem;font-weight:700;margin-bottom:1rem;color:#fff}.options{display:flex;flex-direction:column;gap:.75rem}.options label{background:#ffffff14;padding:.5rem 1rem;border-radius:8px;cursor:pointer}.options label:hover{background:#ffffff26}.submit-button,.export-pdf-button{background:#ffffff14;color:#fff;border:1px solid white;border-radius:8px;padding:1rem 2rem;font-size:1.5rem;width:50%;display:block;margin:1rem auto;text-align:center;cursor:pointer}.score{margin-top:2rem;font-size:2rem;font-weight:700;text-align:center;color:#55d97f}.quiz-container{padding-left:2rem;padding-right:2rem;position:relative;z-index:1;width:100%;color:#fff}.popup-overlay{background:#0000008c!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.popup-content.popup-large.note-selector{background:(211,211,211,.55)!important;border:1px solid #fafafa;border-radius:14px;padding:2rem;color:#fff;position:relative;max-width:700px}.note-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.note-modal-header h3{margin:0;font-size:1.4rem;font-weight:700;color:#fff}.note-close-btn{background:none;border:none;color:#f55;font-size:1.6rem;font-weight:700;cursor:pointer;transition:color .2s ease;position:absolute;top:1rem;right:-15rem}.note-close-btn:hover{color:#f77}.note-card{background:#242424;border:1px solid #3a3a3a;border-radius:10px;padding:1rem;text-align:left;cursor:pointer;transition:all .25s ease}.note-card:hover{background:#2f2f2f;transform:translateY(-2px)}.note-card h4{margin:0;font-size:1rem;font-weight:600;color:#fff}.note-card p{font-size:.9rem;margin-top:.4rem;color:#bbb;line-height:1.4}.sidebar-link a{display:flex;color:#e1e9fc;align-items:center;padding:8px;margin:4px;list-style:none;height:32px;text-decoration:none;font-size:16px}.sidebar-link.active{background:#632ce4}.nav-text{display:flex;justify-content:start;align-items:center;padding:8px 0 8px 16%;list-style:none;height:60px}.sidebar-link a:hover{background:var(--color-memora-dark-purple-hover);border-radius:8px;cursor:pointer}.dropdown-link a{background:#414757;border-left:4px solid #632ce4;height:32px;padding:8px 8px 8px 16px;display:flex;align-items:center;text-decoration:none;color:#f5f5f5;font-size:16px}.dropdown-link a:hover{background:var(--color-memora-dark-purple-hover);color:#060b26;cursor:pointer}.sub-menu-items{padding-left:2rem}span{margin-left:16px}.sidebar-link{position:relative}.sub-sub-menu{position:absolute;top:164px;left:100%;background:var(--color-background-dark);padding:8px;border-radius:6px;min-width:180px;opacity:0;pointer-events:none;transform:translate(10px);transition:all .3s ease-in-out;z-index:999}.dropdown-link:hover .sub-sub-menu{opacity:1;pointer-events:auto;transform:translate(0)}.sub-sub-link{display:flex;align-items:center;padding:8px;text-decoration:none;color:#f5f5f5;font-size:14px;border-radius:4px}.sub-sub-link:hover{background:var(--color-memora-dark-purple-hover);color:#f5f5f5}.popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.popup-content{background:#222;padding:1.5rem;border-radius:8px;min-width:300px;color:#fff}.popup-buttons{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.popup-content input{width:100%;padding:.5rem;margin-top:.75rem;border:none;border-radius:4px;background:#333;color:#fff}.dashboard{width:100%;justify-content:start;padding:var(--space-lg)}.greeting{padding-left:var(--space-2xl);display:flex}.greeting h1{font-weight:500}.dashboard-container{width:100%;min-height:100vh;padding:var(--space-wide-sm);padding-top:0}.card-grid{width:100%}.first-col,.second-col{width:50%}.dashboard-section{width:100%;height:auto}.widget-grid{width:100%}.widget-col-1,.widget-col-2{width:50%}.dash-card{list-style:none}.sub-dash{padding:0 var(--padding-md) 0 var(--padding-md)}.tab-title{padding-left:var(--padding-md);font-size:16px}.outlet-wrapper{width:100%}.dashboard-card{position:relative;background:none;border:none;box-shadow:none;padding:0}.dashboard-card h2{font-size:1.25rem;color:#fff}.dashboard-card ul{list-style-type:none;padding:0;margin:0;color:var(--color-primary-dark)}.dashboard-section-title{padding:0}.dashboard-section{padding:1rem}.sections{display:flex;flex-direction:column;gap:var(--space-12);padding:0 1rem}.dash-card{display:flex;padding:var(--space-6);flex-direction:row;overflow-x:auto;list-style:none;margin:0;border-radius:var(--radius-lg)}.sub-dash{padding:0 var(--padding-md) 0 var(--padding-md);padding:0 var(--space-4) 0 var(--space-4);max-width:1280px}.dash-title-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between}.filter-sort-container{display:flex;justify-content:space-between;align-items:center;padding:1rem;margin-bottom:1rem;background:var(--surface-color);border-radius:8px}.filter-buttons{display:flex;gap:.5rem}.filter-btn{padding:.5rem 1rem;border:1px solid var(--border-color);background:transparent;color:#fff;border-radius:6px;cursor:pointer;transition:all .2s}.filter-btn:hover{background:var(--hover-color)}.filter-btn.active{background:var(--primary-color);color:#7f8ff7;border-color:var(--primary-color)}.sort-dropdown{display:flex;align-items:center;gap:.5rem}.sort-dropdown select{padding:.5rem;border-radius:6px;border:1px solid var(--border-color)}.star-button{background:none;display:flex;align-items:center;border:none;cursor:pointer;font-size:1.4rem;margin:0;color:gray;transition:transform .2s ease,color .2s ease}.star-button:hover{transform:scale(1.2)}.star-button .favorited{color:gold}.endorse-button{background:none;display:flex;align-items:center;border:none;cursor:pointer;padding:0;margin:0;transition:transform .15s ease,color .15s ease}.endorse-button:hover{transform:scale(1.1)}.endorse-button:disabled{cursor:default;opacity:.6}.register-wrapper{position:relative;width:100vw;height:100vh;overflow:hidden;background:#0a061a}.react-bit-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.react-bit-background canvas{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;height:100vh!important;z-index:0!important;pointer-events:none!important}.navbar{position:fixed;top:0;width:100%;display:flex;justify-content:space-between;align-items:center;background:#0a061a8c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:10}.login-button,.register-button{padding:.6rem 1rem!important;border-radius:10px;font-size:.85rem}.nav-links{display:flex;gap:1rem}.register-content{display:flex;justify-content:center;align-items:flex-start;padding-top:4rem;padding-bottom:1rem;height:auto;min-height:100vh;z-index:5}.register-card{margin-top:5rem;width:400px;max-width:90vw;padding:1.2rem 1.5rem;border-radius:16px;background:#ffffff1a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 6px 25px #0000004d;display:flex;flex-direction:column;align-items:center;gap:.6rem;pointer-events:auto}.register-card h2{font-size:1.6rem;margin-bottom:.4rem;font-weight:600;text-align:center}.form-label{font-size:.85rem;margin-bottom:.2rem;color:#fff;text-align:left}.registration-input-field,.form-input,select{width:100%;padding:.6rem .8rem;border-radius:8px;border:none;margin-bottom:.3rem;font-size:.9rem;box-sizing:border-box}.form-group{width:100%;display:flex;flex-direction:column;margin-bottom:.2rem!important}.register-submit{width:100%;padding:.7rem 0;border-radius:8px;border:none;background:linear-gradient(90deg,#7b5bff,#81d9ef);color:#fff;font-size:1rem;margin-top:.5rem;cursor:pointer;transition:.2s ease}.register-submit:hover{transform:translateY(-2px);opacity:.95}.error{color:#ff6b6b;font-size:.85rem}.register-text{font-size:.85rem;margin-top:.6rem;text-align:center}.register-link{color:#81d9ef;text-decoration:none}.register-link:hover{text-decoration:underline}.register-divider{text-align:center;margin:.6rem 0;font-size:.85rem;opacity:.7}.google-btn-wrapper{display:flex;justify-content:center;width:100%;margin-top:.4rem;margin-bottom:.2rem;z-index:10}.quiz-container{padding:1.25rem 1rem 2rem;position:relative;z-index:1}h1 input[type=text],h1 textarea,h1 select,h2 input[type=text],h2 textarea,h2 select{width:100%;border:1px solid rgba(255,255,255,.3);background:#ffffff1f;color:#fff;border-radius:10px;padding:.85rem 1rem;font-size:1rem;transition:all .2s ease;font-family:inherit}h1 input[type=text]::placeholder,h1 textarea::placeholder,h2 input[type=text]::placeholder,h2 textarea::placeholder{color:#ffffff80}h1 input[type=text]:focus,h1 textarea:focus,h1 select:focus,h2 input[type=text]:focus,h2 textarea:focus,h2 select:focus{outline:none;border-color:#a275ff;background:#ffffff29;box-shadow:0 0 0 3px #a275ff33}h1 select,h2 select{cursor:pointer;-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='white' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}h1 select option,h2 select option{background:#2d1b4e;color:#fff}h1 label,h2 label{font-weight:600;color:#fff;font-size:.95rem;display:block;margin-bottom:.5rem}h1 button,h2 button{background:linear-gradient(135deg,#6a3485,#54286d);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:10px;padding:.75rem 1.25rem;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s ease;box-shadow:0 4px 12px #54286d4d}h1 button:hover,h2 button:hover{background:linear-gradient(135deg,#7a4495,#64387d);transform:translateY(-2px);box-shadow:0 6px 16px #54286d66}h1 button:active,h2 button:active{transform:translateY(0)}h1 button:disabled,h2 button:disabled{opacity:.5;cursor:not-allowed;transform:none}h1 input[type=checkbox],h2 input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#6a3485}h1 .form-group,h2 .form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}h1 .option-item,h2 .option-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;margin-bottom:.5rem;transition:all .2s ease}h1 .option-item:hover,h2 .option-item:hover{background:#ffffff1f;border-color:#ffffff40}h1 .option-item label,h2 .option-item label{flex:1;margin:0;cursor:pointer;font-weight:400}h1 .option-item input[type=checkbox],h2 .option-item input[type=checkbox]{flex-shrink:0}h1 .add-option-section,h2 .add-option-section{display:flex;gap:.75rem;margin-top:.5rem}h1 .add-option-section input,h2 .add-option-section input{flex:1}h1 .add-option-section button,h2 .add-option-section button{white-space:nowrap;padding:.85rem 1.5rem}button{cursor:pointer;font-size:.95rem;border-radius:10px}button:hover{opacity:.9}.add-option-row button,.quiz-title>button{background:linear-gradient(135deg,#7c3aed,#9333ea);color:#fff;border:none;border-radius:10px;padding:.6rem 1.2rem;font-weight:600;cursor:pointer;transition:all .2s ease-in-out;width:100%;box-shadow:0 0 10px #7c3aed4d}.add-option-row button:hover,.quiz-title>button:hover{background:linear-gradient(135deg,#8b5cf6,#a855f7);transform:scale(1.02);box-shadow:0 0 15px #a855f766}.add-option-row{display:flex;gap:.75rem;align-items:center;margin-top:.5rem}.add-option-row input{width:100px;background:#fff;color:#000;border-radius:10px;border:1px solid rgba(255,255,255,.25);padding:.6rem 1rem;font-size:1rem}.quiz-title>button{margin-top:1rem}.quiz-builder-inner{display:flex;flex-direction:column;gap:1.2rem}.quiz-title label{font-weight:700;color:#fff;margin-bottom:.4rem}.quiz-title input[type=text]{width:93%;border:1px solid rgba(255,255,255,.25);background:#fff;color:#090909;border-radius:10px;padding:.8rem 1rem;font-size:1rem;transition:all .2s ease}.quiz-title input:focus{border-color:#a275ff;box-shadow:0 0 6px #935aff66}.quiz-actions{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.quiz-preview-inner{display:flex;flex-direction:column;gap:1rem}.question-container{border:1px solid rgba(255,255,255,.25);background:#ffffff0f;border-radius:12px;padding:1rem;color:#fff;transition:all .2s ease}.question-container:hover{background:#ffffff1f;box-shadow:0 0 10px #935aff4d}.question{font-weight:700;margin-bottom:.5rem}.options-list{margin:.5rem 0 1rem 1rem;color:#ddd}.question-actions{display:flex;justify-content:space-between;gap:.75rem}.quiz-container{padding-left:2rem;padding-right:2rem;position:relative;z-index:1;width:100%}.quiz-panel{flex:1;min-width:0;display:flex;flex-direction:column;padding:1rem;border-radius:16px;border:1px solid rgba(255,255,255,.25);background:#ffffff0f;box-shadow:0 12px 40px #00000059;color:#fff}h1,h2{margin:0 0 .75rem;font-weight:800;color:#fff}.save-quiz{background:#ffffff24;color:#fff;border:1px solid rgba(255,255,255,.6);border-radius:10px;padding:.6rem .95rem;cursor:pointer;font-size:.95rem;width:100%;margin-top:.75rem}.save-quiz:hover{background:#ffffff38}.quiz-builder-preview>:first-child{flex:1}.quiz-builder-preview>:last-child{flex:2}.create-wrapper{display:flex;justify-content:center;align-items:center;height:100vh;width:100%}.create-card{background:#ffffff14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.15);border-radius:18px;box-shadow:0 8px 32px #0000004d;padding:2.5rem 3rem;width:100%;max-width:420px;text-align:center;color:#fff;animation:fadeIn .3s ease}.create-icon{background:linear-gradient(135deg,#8e7cff,#b8a9ff);width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;box-shadow:0 6px 20px #8e7cff66}.create-card h2{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.subtitle{font-size:.95rem;color:#fffc;margin-bottom:2rem}.create-card label{text-align:left;display:block;font-weight:600;font-size:.95rem;margin-bottom:.4rem;color:#fff}.create-card input{width:100%;max-width:100%;padding:.9rem 1rem;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:#fff;font-size:1rem;outline:none;margin-bottom:1.2rem;box-sizing:border-box;transition:all .2s ease}.create-card input::placeholder{color:#ffffff80}.create-card input:focus{border-color:#8e7cff;box-shadow:0 0 0 3px #8e7cff40}.btn-create{width:100%;max-width:100%;padding:.9rem 1rem;border:none;border-radius:10px;background:linear-gradient(135deg,#6c63ff,#8e7cff);color:#fff;font-weight:600;font-size:1rem;display:inline-block;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 14px #6c63ff4d;box-sizing:border-box}.btn-create:hover{background:linear-gradient(135deg,#7c72ff,#a091ff);box-shadow:0 6px 20px #6c63ff73}.error-text{margin-top:1rem;font-size:.9rem;color:#ff6b6b}.class-code-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:grid;place-items:center;z-index:1000;animation:fadeIn .3s ease}.class-code-card{width:min(420px,92vw);border-radius:16px;border:1px solid rgba(255,255,255,.15);background:#ffffff14;box-shadow:0 12px 40px #0006;padding:2rem;color:#fff;position:relative;text-align:center}.class-code-title{font-size:1.4rem;font-weight:700;margin:0 0 .25rem}.class-code-subtitle{font-size:.9rem;margin:0 0 1.5rem;color:#ffffffbf}.class-code-container{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1rem}.class-code-input{font-size:1.25rem;letter-spacing:.06em;padding:.6rem .9rem;border-radius:10px;background:#ffffff1a;border:1px solid rgba(255,255,255,.25);color:#fff}.copy-button{background:linear-gradient(135deg,#6c63ff,#8e7cff);color:#fff;border:none;border-radius:10px;padding:.6rem 1.2rem;font-size:.95rem;cursor:pointer;transition:all .25s ease}.copy-button:hover{background:linear-gradient(135deg,#7c72ff,#a091ff)}.class-code-close{position:absolute;top:10px;right:12px;width:32px;height:32px;font-size:22px;font-weight:700;color:#ec6b5f;background:transparent;border:none;border-radius:9999px;cursor:pointer;transition:all .2s ease}.enroll-class-container{display:flex;flex-direction:row;justify-content:center;width:70%;gap:1rem}.enroll-class-form{display:flex;flex-direction:column;gap:1rem;justify-items:center;justify-content:center;align-items:center;width:35%;height:30vh;border-radius:20px;color:#d3d3d3}.permission-num-input{display:flex;flex-direction:column;align-items:start;width:80%}.permission-num-input label{font-weight:700;font-size:1.5rem;margin-bottom:.5rem;color:#fff}.permission-num-input-field{width:100%;padding:.75rem;border-radius:8px;border:1px solid #ccc;font-size:1rem;box-sizing:border-box}.enroll-class-button{width:50%;background:#111025!important;border:1px solid white!important;border-radius:8px!important;padding:1rem 2rem!important;color:#fff!important;font-size:1.2rem!important;width:60%;margin:0rem 1rem 1rem!important;display:block;text-align:center!important}.chat-container{width:75vw;margin:auto;padding:2rem;display:flex;flex-direction:column;gap:1rem}.chat-title{font-size:1.8rem;font-weight:700;margin-bottom:1rem;text-align:center;color:#fff}.chat-window{background:#fff;border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:1.25rem;height:500px;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 0 15px #00000040}.chat-bubble{max-width:75%;padding:.8rem 1rem;border-radius:18px;font-size:1rem;line-height:1.4;color:#fff;word-wrap:break-word}.chat-bubble.user{align-self:flex-end;background:#007aff}.chat-bubble.bot{align-self:flex-start;color:#000;background:#5f595926}.chat-bubble.thinking{background:#3733331a;padding:.8rem 1.2rem}.typing-dots{display:flex;gap:.3rem;align-items:center;justify-content:flex-start}.typing-dots span{width:8px;height:8px;background:#373232;border-radius:50%;opacity:.3;animation:blink 1.5s infinite}p{color:#000!important}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.chat-input-section{display:flex;align-items:flex-end;gap:.8rem;margin-top:1rem}.chat-input{flex-grow:1;resize:none;border:none;border-radius:16px;padding:.9rem 1rem;font-size:1rem;background:#ffffff26;color:#fff;line-height:1.4}.chat-input:focus{outline:1px solid #4da3ff;background:#fff3}.chat-send{padding:.6rem 1.2rem;border:none;border-radius:12px;background-color:#4da3ff;color:#fff;cursor:pointer;font-weight:600;transition:background .2s}.chat-send:hover{background-color:#1e7be8}.teacher-welcome{background:#ffffff1a;border-radius:16px;padding:1.5rem;margin-bottom:1rem;color:#fff}.teacher-welcome p{color:#fff!important;margin-bottom:1rem;font-size:1.1rem}.teacher-welcome ul{list-style:none;padding:0;margin:0}.teacher-welcome li{padding:.5rem 0;color:#fffc;font-style:italic}.teacher-welcome li:before{content:'"';color:#4da3ff}.profile-layout{display:flex}.profile-container{flex:1;position:relative;padding:2rem 0}.profile-title{color:#fff;font-weight:800;font-size:2rem;margin:0 0 1rem}.profile-box{width:min(820px,88vw);margin:0 auto;padding:1.5rem;border-radius:16px;border:1px solid rgba(255,255,255,.25);background:#ffffff0f;box-shadow:0 12px 40px #00000059;color:#fff;display:grid;grid-template-columns:220px minmax(0,1fr);gap:1.25rem;overflow:hidden}.profile-avatar-wrap{display:flex;flex-direction:column;align-items:center}.profile-avatar{width:160px;height:160px;border-radius:9999px;object-fit:cover;background:#222;border:2px solid rgba(255,255,255,.65)}.mt-8{margin-top:.75rem}.profile-box .profile-form{display:flex;flex-direction:column;gap:1rem;min-width:0}.profile-box .field{min-width:0}.profile-box .field label{display:block;font-weight:800;color:#fff;margin-bottom:.5rem;font-size:1.25rem}.profile-box .field input,.profile-box .field textarea,.profile-box .field select{width:100%;max-width:100%;box-sizing:border-box;background:#fff;color:#000;border:none;border-radius:12px;padding:.9rem 1rem;font-size:1rem}.profile-box .field input:disabled,.profile-box .field textarea:disabled,.profile-box .field select:disabled{opacity:.85;background:#ffffffe6}.actions-row{display:flex;gap:.75rem;margin-top:.5rem}.btn-primary{background:#111025e6;color:#fff;border:1px solid #fff;border-radius:10px;padding:.7rem 1.1rem;font-size:1rem;cursor:pointer}.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6);border-radius:10px;padding:.7rem 1.1rem;font-size:1rem;cursor:pointer}.btn-secondary{background:#ffffff24;color:#fff;border:1px solid rgba(255,255,255,.6);border-radius:10px;padding:.5rem .9rem;cursor:pointer}.profile-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:grid;place-items:center;z-index:1000}.profile-popup-content{width:min(520px,92vw);border-radius:16px;border:1px solid rgba(255,255,255,.25);background:#ffffff0f;box-shadow:0 12px 40px #0006;padding:1.25rem;color:#fff}.profile-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;justify-content:center;align-items:center;z-index:9999}.profile-popup-content{background:#ffffff1a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:2rem;border-radius:16px;box-sizing:border-box;width:350px;color:#fff;text-align:center}.profile-popup-content h3{margin-top:0;margin-bottom:1rem}.profile-popup-buttons{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.profile-popup-buttons button{border-radius:8px;border:1px solid white;padding:.5rem 1.2rem;background:#ffffff1a;color:#fff;cursor:pointer;transition:background .2s ease}.profile-popup-buttons button:hover{background:#fff3}#root{width:100vw}.background{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,#1a1a2e,#0f0c29,#000);overflow:hidden;z-index:-1}.bokeh{position:absolute;border-radius:50%;filter:blur(120px);opacity:.4;pointer-events:none}.bokeh1{width:500px;height:500px;top:10%;left:15%;background:#5a64ff}.bokeh2{width:600px;height:600px;bottom:5%;right:10%;background:#b05aff}.people-container{width:75vw;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.people-heading{color:#fff;font-weight:700;font-size:1.75rem;padding-top:1.5rem}.people-table-wrapper{max-height:420px;overflow-y:auto;border-radius:10px;border:1px solid #ccc;background:#ffffff0d;box-shadow:0 4px 8px #0000001a}.people-table{width:100%;border-collapse:collapse;color:#fff}.people-table thead th{position:sticky;top:0;background:#ffffff14;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);text-align:left;padding:.85rem 1rem;border-bottom:1px solid #ccc;font-weight:600}.people-table tbody td{padding:.75rem 1rem;border-bottom:1px solid rgba(255,255,255,.15)}.people-table tbody tr:nth-child(odd){background:#ffffff08}.col-first,.col-last{width:22%;font-size:1.75rem}.col-role{width:18%;font-size:1.75rem}.col-username{width:28%;font-size:1.75rem}.col-actions{width:10%;font-size:1.75rem}.people-container button:hover{transform:none;box-shadow:none}.delete-btn{background:#ff505026;color:#fff;border:solid rgba(255,80,80,.9);border-radius:8px;padding:.45rem .8rem;cursor:pointer;margin:0}.delete-btn:hover{background:#ff505040}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#ffffff0f;display:grid;place-items:center;z-index:1000}.confirm-modal{width:min(520px,92vw);background:#14141ee6;border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:1.25rem;color:#fff;box-shadow:0 10px 40px #00000059}.confirm-modal h3{margin:0 0 .5rem;font-weight:800}.confirm-buttons{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6);border-radius:8px;padding:.5rem .9rem;cursor:pointer}.btn-ghost:hover{background:#ffffff26}.btn-delete{background:#ff50502e;color:#fff;border:1px solid rgba(255,80,80,.9);border-radius:8px;padding:.5rem .9rem;cursor:pointer}.btn-delete:hover{background:#ff505047}.poll-creation{width:100%;justify-content:start;padding:0}.poll-header{width:100%;justify-content:flex-end;align-items:center;color:#000;height:var(--size-height-header);border-bottom:1px solid var(--color-low-opacity-white-1)}.dashboard-poll-creation{align-items:center;border-bottom:1px solid var(--color-low-opacity-white-1);padding-right:var(--padding-lg)}.header-container{width:100%;justify-content:space-between;margin-right:var(--space-wide-sm)}.add-question-btn{background:var(--color-pastel-icyblue);color:var(--color-bg-dark);border:none;border-radius:8px;padding:8px;cursor:pointer}.ph-layout{width:50%;justify-content:space-between;align-items:center}.poll-body{width:100%;min-height:100vh;justify-content:start}.question-preview{width:20%;align-items:center;min-height:100%;background:var(--color-low-opacity-white-1);overflow-y:auto;padding:var(--padding-md)}.preview-card{background:#f9f9f9;color:#000;width:80%;padding:8px;margin-bottom:8px;border-radius:6px;cursor:pointer;transition:background .2s}.remove-question-btn{margin:0;width:40px;height:40px;padding:0;border-radius:var(--radius-md);background:var(--color-low-opacity-white-1);color:#f14a4aec;border:none;cursor:pointer}.preview-card:hover{background:#e6e6e6}.preview-card.active{outline:2px solid #007bff;outline-offset:4px;background:#eef6ff}.poll-question-container{width:80%;height:100%;padding:16px;color:#000}.poll-card-wrapper{width:70%}.save-poll-btn,.preview-poll-btn{border-radius:var(--radius-sm);margin:0}.poll-header-buttons{align-items:center;margin:0}.button-cont{width:560px;height:200px;background-color:var(--color-bg-nested);justify-content:start}.btn-style1{background-color:var(--color-bg-nested);border:1px solid var(--color-pastel-blue);color:var(--color-pastel-blue)}.btn-style2{background-color:var(--color-pastel-icyblue);border:1px solid var(--color-bg-dark);color:var(--color-bg-dark)}.btn-style3{background-color:var(--color-bg-dark);border:1px solid var(--color-pastel-icyblue);color:var(--color-pastel-icyblue)}.sample-btn{border-radius:8px;font-weight:800}.poll-card{background-color:var(--color-low-opacity-white-1);border:1px solid var(--color-low-opacity-white-2);border-radius:12px;width:100%;justify-content:center;padding:0;margin:0;font-size:14}.poll-select{color:#000!important;padding:var(--space-1) var(--space-2);width:fit-content}.card-question{background:none;border:none;color:#000;width:100%}.question-input{display:flex;padding:var(--padding-sm);color:var(--color-black);font-size:16px;border-radius:var(--radius-md);background-color:var(--color-white);border:1px solid var(--color-low-opacity-white-3);border:1px solid gray;max-width:100%;height:60px;font-weight:400}.poll-options{list-style:none;padding:0;margin:0}.poll-option-item{width:100%;align-items:center}.poll-option-input{width:70%;height:32px;font-size:16px;padding:var(--padding-sm);color:var(--color-black);background:var(--color-white);border-radius:var(--radius-md);border:none}.remove-option-btn{margin:0;width:32px;height:32px;padding:0;border-radius:var(--radius-sm);background:var(--color-low-opacity-white-1);color:var( #ccc);border:1px solid #ccc;cursor:pointer}.question-number p{margin:8px;color:#fff;font-size:16px;font-weight:700}.add-option-btn{background:var(--color-pastel-icyblue);color:var(--color-bg-dark);border:none;border-radius:8px;padding:8px;cursor:pointer}.pc-header{width:calc(100% - var(padding-sm));height:var(--size-height-header);align-items:center;border-bottom:1px solid #eee;padding:var(--padding-sm)}.pc-body{padding:var(--padding-md);padding-top:4px}.type-dropdown{height:40px;color:#000}.mark-correct-btn{background:var(--color-low-opacity-white-1);margin:0;padding:0;width:32px;height:32px;border:1px solid #ccc;cursor:pointer;border-radius:50%;transition:.2s}.mark-correct-btn.active{background:#4caf50;color:#fff}select{color:#000}op-item-btns{width:48px;height:48px;border-radius:8px}.poll-generation-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem;margin-left:250px}.notes-input-container{background:#fffffff2;border-radius:16px;padding:3rem;max-width:800px;width:100%;box-shadow:0 8px 32px #0000001a}.notes-input-container h1{margin:0 0 .5rem;color:#2c3e50;font-size:2rem}.subtitle{color:#7f8c8d;margin-bottom:2rem;font-size:1rem}.poll-title-input{margin-bottom:1.5rem}.poll-title-input label{display:block;font-weight:600;margin-bottom:.5rem;color:#2c3e50}.poll-title-input input{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .3s}.poll-title-input input:focus{outline:none;border-color:#3498db}.paste-notes{margin-bottom:1.5rem}.paste-notes label{display:block;font-weight:600;margin-bottom:.5rem;color:#2c3e50}.paste-notes textarea{width:100%;padding:1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:inherit;resize:vertical;transition:border-color .3s}.paste-notes textarea:focus{outline:none;border-color:#3498db}.generate-button{width:100%;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.generate-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.generate-button:disabled{opacity:.6;cursor:not-allowed}.loading-message{margin-top:1.5rem;padding:1rem;background:#e8f4f8;border-radius:8px;text-align:center}.loading-message p{margin:.5rem 0;color:#2c3e50}.loading-message p:first-child{font-weight:600}@media (max-width: 768px){.poll-generation-container{margin-left:0;padding:1rem}.notes-input-container{padding:2rem 1.5rem}.notes-input-container h1{font-size:1.5rem}}.background{position:fixed;width:100%;height:100%;top:0;left:0;z-index:-1;overflow:hidden}@keyframes float{0%,to{transform:translateY(0) translate(0)}50%{transform:translateY(-50px) translate(30px)}}.student-materials-container{padding:2rem;max-width:1200px;margin:auto}.student-materials-container h1{font-size:2rem;margin-bottom:1.5rem;color:#fff}.card-container{display:flex;flex-wrap:wrap;gap:1rem}.student-material-card{background-color:#ffffffd9;border-radius:12px;padding:1.2rem;width:220px;box-shadow:0 4px 12px #0000001a;cursor:pointer;transition:transform .2s,box-shadow .2s}.student-material-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000026}.student-material-card .card-title{font-size:1.1rem;font-weight:600;color:#222;margin-bottom:.5rem}.student-material-card .card-subtitle{font-size:.9rem;color:#555}.student-material-card.add-card{display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#666;background-color:#ffffffd9;border:2px dashed #ccc}.student-material-card.add-card:hover{color:#333;border-color:#999}@media (max-width: 768px){.card-container{justify-content:center}.student-material-card{width:80%}}.view-flashcards-container{display:grid;grid-template-columns:minmax(0,2fr) minmax(340px,1fr);gap:2rem;width:100%;min-height:100%;padding:2rem;box-sizing:border-box;color:#f5f5f5;position:relative;align-items:start}.flashcard-layout{display:flex;width:100%;min-height:100vh;position:relative}.set-header{display:flex;flex-direction:column;align-items:flex-start;width:100%;gap:.75rem}.set-title{font-size:1.75rem;font-weight:700;margin:0;text-align:left;background:linear-gradient(135deg,#f0f9ff,#e0e7ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:center;justify-content:space-between;width:100%}.header-controls{display:flex;align-items:center;justify-content:center;gap:1.25rem;flex-wrap:nowrap;margin-bottom:1.25rem}.header-controls button,.edit-set-btn,.reset-progress-btn{width:180px;height:48px;padding:.6rem 1.25rem;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;text-align:center;transition:all .25s ease;box-shadow:0 4px 15px #7c3aed4d;white-space:nowrap}.header-controls button:hover,.edit-set-btn:hover,.reset-progress-btn:hover{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:#fff6;transform:translateY(-2px);box-shadow:0 6px 20px #7c3aed66}.header-controls button:active{transform:scale(.97)}.progress-bar-container{width:100%;height:6px;background:#ffffff1a;border-radius:10px;overflow:hidden;margin-bottom:2rem;border:1px solid rgba(255,255,255,.15)}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#ec4899,#a855f7 40%,#3b82f6);transition:width .5s ease;border-radius:10px;box-shadow:0 0 20px #3b82f666}.study-progress-bar{display:flex;justify-content:center;gap:1rem}.study-mode-panel{display:flex;flex-direction:column;align-items:center;gap:1.5rem;grid-column:1;align-self:start;padding-top:2rem}.study-card-container{width:100%;display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:2rem}.study-card{background:transparent;max-width:600px;height:320px;position:relative;perspective:1000px;border-radius:20px;cursor:pointer;margin:0 auto;transform-origin:center center}.study-card-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.68,-.55,.265,1.55)}.study-card.flipped .study-card-inner{transform:rotateY(180deg)}.study-card-face{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem;font-size:1.5rem;line-height:1.7;word-wrap:break-word;text-align:center;box-shadow:0 10px 40px #0000004d;transition:all .3s ease}.study-card-face.front{background:linear-gradient(135deg,#f8f9fa,#f3f4f6);color:#1f2937;border:2px solid rgba(124,58,237,.2)}.study-card-face.back{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;transform:rotateY(180deg);border:2px solid rgba(168,85,247,.3)}.study-buttons{display:flex;justify-content:center;align-items:center;gap:3rem;margin-top:7rem;width:100%}.icon-button,.undo-btn,.remove-btn,.check-btn{border:none;border-radius:50%;width:80px;height:80px;color:#fff;font-size:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s ease;box-shadow:0 8px 24px #00000059}.icon-button:hover,.undo-btn:hover:not(:disabled),.remove-btn:hover,.check-btn:hover{transform:scale(1.08);filter:brightness(1.25)}.icon-button:active,.undo-btn:active,.remove-btn:active,.check-btn:active{transform:scale(.96);filter:brightness(.9)}.remove-btn{background:#e4493b}.check-btn{background:#65c467}.undo-btn{background:#3b82f6}.undo-btn.disabled,.undo-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;filter:none}.flashcard-list-panel{background:#1118278c;border-radius:20px;padding:1.75rem;overflow-y:auto;max-height:calc(100vh - 6rem);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);position:sticky;top:0;box-shadow:0 8px 40px #00000059;min-width:340px;flex-shrink:0;grid-column:2;align-self:start}.flashcard-list-panel h3{margin:0;display:flex;align-items:center;font-size:1.2rem;font-weight:700;gap:.75rem;color:#f1f5f9}.flashcard-list-mode{font-size:.8rem;opacity:.7;margin-bottom:1.25rem;color:#cbd5e1}.flashcard-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.flashcard-list-item{padding:1rem;border-radius:12px;background:#37415166;cursor:pointer;transition:all .2s ease;border:2px solid transparent;font-size:.9rem}.flashcard-list-item:hover{background:#4b556399;border-color:#7c3aed4d;transform:translate(4px)}.flashcard-list-item.active{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;font-weight:600;border-color:#a78bfa;box-shadow:0 4px 15px #7c3aed4d}.settings-icon{cursor:pointer;color:#f1f5f9;transition:all .3s ease;padding:.75rem;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);font-size:1.25rem;z-index:5}.settings-icon:hover{background:#7c3aed33;border-color:#7c3aed66;transform:rotate(30deg)}.settings-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.settings-modal-content{background:linear-gradient(135deg,#1e1b4b,#2d1b4e);border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:2rem;max-width:400px;width:90%;box-shadow:0 20px 60px #0006}@media (max-width: 1200px){.view-flashcards-container{grid-template-columns:1fr}.flashcard-list-panel{order:2;max-height:400px;position:relative;top:auto;margin-top:1.5rem;min-width:auto}.study-mode-panel{order:1}}.flashcard-list-panel::-webkit-scrollbar{width:6px}.flashcard-list-panel::-webkit-scrollbar-track{background:#ffffff0d}.flashcard-list-panel::-webkit-scrollbar-thumb{background:#7c3aed66;border-radius:10px}.flashcard-list-panel::-webkit-scrollbar-thumb:hover{background:#7c3aed99}.toggle-container{display:flex!important;align-items:center;justify-content:flex-end;gap:1rem;padding:.5rem 1rem;border-radius:12px;cursor:pointer;z-index:5}.motion-toggle{width:50px;height:28px;border-radius:9999px;display:flex;align-items:center;padding:3px;cursor:pointer;position:relative;background:#475569;transition:background .3s ease;border:1px solid rgba(255,255,255,.2);flex-shrink:0;box-shadow:0 0 4px #0003}.motion-toggle.active{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:#22c55e66}.motion-thumb{width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0000004d;transition:transform .1s ease}.motion-toggle.active .motion-thumb{transform:translate(22px)}.toggle-label{color:#f1f5f9;font-size:.95rem;font-weight:500}.quiz-builder-preview{display:flex;flex-direction:row;gap:2rem;align-items:stretch;justify-content:space-between;width:100%}.quiz-builder-preview>*{flex:1;min-width:0}.quiz-builder-preview>:first-child{flex:2}.quiz-builder-preview>:last-child{flex:1}@media (max-width: 768px){.quiz-builder-preview{flex-direction:column}}.view-quiz-container{max-width:700px;margin:2rem auto;padding:1rem}.view-quiz-header{margin-bottom:1rem}.view-quiz-header h1{font-size:1.75rem;font-weight:800;margin-bottom:.5rem}.view-quiz-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.5rem 0}.view-quiz-info div{font-size:1rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:.75rem 1rem;box-shadow:0 4px 15px #00000040}.view-quiz-actions{margin-top:2rem;text-align:center}.view-quiz-actions button{background:#ffffff24;color:#fff;border:1px solid rgba(255,255,255,.6);border-radius:10px;padding:.8rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s ease-in-out}.view-quiz-actions button:hover{background:#ffffff38}.CircularProgressbar{width:100%;vertical-align:middle}.CircularProgressbar .CircularProgressbar-path{stroke:#3e98c7;stroke-linecap:round;-webkit-transition:stroke-dashoffset .5s ease 0s;transition:stroke-dashoffset .5s ease 0s}.CircularProgressbar .CircularProgressbar-trail{stroke:#d6d6d6;stroke-linecap:round}.CircularProgressbar .CircularProgressbar-text{fill:#3e98c7;font-size:20px;dominant-baseline:middle;text-anchor:middle}.CircularProgressbar .CircularProgressbar-background{fill:#d6d6d6}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-background{fill:#3e98c7}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-text{fill:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-path{stroke:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-trail{stroke:transparent}.student-analytics-container{padding:2rem!important;color:#fff!important;position:relative!important;z-index:1!important;min-height:100vh!important;min-width:100vw!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;background:transparent!important}.stat-summary{display:flex!important;flex-wrap:wrap!important;gap:1rem!important;justify-content:flex-start!important}th{border-bottom:2px solid rgba(255,255,255,.1)!important;color:#ccc!important;font-weight:700!important}.clickable-row{cursor:pointer!important}.header-section{text-align:center!important;margin-top:4rem!important}.header-section h1{font-size:2rem!important;font-weight:700!important;margin-bottom:.5rem!important;color:#fff!important}.header-section p{color:#ccc!important;margin-bottom:2rem!important}.empty-msg{color:#aaa!important;text-align:center!important;padding:2rem 0!important}.teacher-analytics-container{padding:2rem!important;color:#fff!important;position:relative!important;z-index:1!important;min-height:100vh!important;min-width:100vw!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;background:transparent!important}.header-section h1{font-size:2rem!important;font-weight:700!important;margin-bottom:.5rem!important;color:#fff!important;text-align:center!important}.header-section p{color:#ccc!important;margin-bottom:2rem!important;text-align:center!important}.ring-card:hover,.stat-card:hover{transform:translateY(-3px)!important;box-shadow:0 0 25px #935aff66!important;border-color:#ffffff4d!important}.ring-card{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}.class-row td:first-child{color:#4da3ff!important;font-weight:500!important}p{color:#aaa!important}.class-analytics-container{padding:2rem!important;color:#fff!important;position:relative!important;z-index:1!important;min-height:100vh!important;min-width:100vw!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;background:transparent!important}.class-header h1{font-size:2rem!important;font-weight:700!important;margin-bottom:.5rem!important;text-align:center!important}.class-header p{color:#ccc!important;margin-bottom:2rem!important;text-align:center!important}.ring-card,.stat-card{background:#ffffff1f!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:20px!important;padding:1.5rem!important;text-align:center!important;flex:1 1 180px!important;backdrop-filter:blur(25px) saturate(160%)!important;-webkit-backdrop-filter:blur(25px) saturate(160%)!important;box-shadow:0 8px 32px #0006!important;transition:all .3s ease-in-out!important}.stat-card h2{font-size:1.8rem!important;color:#4da3ff!important;margin:0!important}.chart-section{margin-top:2rem!important}.chart-card{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:20px!important;padding:1.5rem!important;backdrop-filter:blur(25px) saturate(160%)!important;-webkit-backdrop-filter:blur(25px) saturate(160%)!important;box-shadow:0 8px 32px #0006!important;transition:all .3s ease-in-out!important}.table-section{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:20px!important;padding:1.5rem!important;margin-top:2rem!important;backdrop-filter:blur(25px) saturate(160%)!important;-webkit-backdrop-filter:blur(25px) saturate(160%)!important;box-shadow:0 8px 32px #0006!important;transition:all .3s ease-in-out!important}tr{border-bottom:1px solid rgba(255,255,255,.05)!important;transition:background .2s ease!important;cursor:pointer!important}.quiz-row td:first-child{color:#4da3ff!important;font-weight:500!important}.quiz-analytics-container{padding:2rem!important;color:#fff!important;position:relative!important;z-index:1!important;min-height:100vh!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;background:transparent!important}.quiz-header h1{font-size:2rem!important;font-weight:700!important;margin-bottom:1.5rem!important;text-align:center!important;color:#fff!important}.stat-summary{display:flex!important;flex-wrap:wrap!important;gap:1rem!important;justify-content:center!important}.ring-card,.stat-card{background:#ffffff1f!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:20px!important;padding:1.5rem!important;text-align:center!important;flex:1 1 160px!important;backdrop-filter:blur(25px) saturate(160%)!important;-webkit-backdrop-filter:blur(25px) saturate(160%)!important;box-shadow:0 8px 32px #0006!important;transition:all .3s ease-in-out!important}.ring-card:hover,.stat-card:hover{transform:translateY(-3px)!important;box-shadow:0 0 25px #935aff66!important}.chart-section{display:flex!important;gap:1rem!important;margin-top:2rem!important;flex-wrap:wrap!important;justify-content:center!important}.chart-card{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:20px!important;padding:1.5rem!important;flex:1 1 380px!important;backdrop-filter:blur(25px) saturate(160%)!important;-webkit-backdrop-filter:blur(25px) saturate(160%)!important;box-shadow:0 8px 32px #0006!important;transition:all .3s ease-in-out!important}.chart-card:hover{box-shadow:0 0 25px #935aff66!important}.chart-card h3{color:#4da3ff!important;margin-bottom:1rem!important}.table-section{margin-top:3rem!important;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:20px!important;padding:1.5rem!important;backdrop-filter:blur(25px) saturate(160%)!important;-webkit-backdrop-filter:blur(25px) saturate(160%)!important;box-shadow:0 8px 32px #0006!important;transition:all .3s ease-in-out!important}.table-section h2{color:#4da3ff!important;margin-bottom:1rem!important}.table-section:hover{box-shadow:0 0 25px #935aff66!important}tr{border-bottom:1px solid rgba(255,255,255,.05)!important;transition:background .2s ease!important}.row-good .status{color:#22c55e!important;font-weight:600!important}.row-bad .status{color:#ef4444!important;font-weight:600!important}.row-none .status{color:#999!important;font-weight:600!important}@media (max-width: 768px){.stat-summary{flex-direction:column!important}.ring-card,.stat-card{width:100%!important}table{font-size:.9rem!important}}.student-analytics-container{padding:2rem!important;color:#fff!important;position:relative!important;z-index:1!important;min-height:100vh!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;background:transparent!important}.student-header h1{font-size:2rem!important;font-weight:700!important;text-align:center!important;margin-bottom:.5rem!important}.student-header p{color:#ccc!important;margin-bottom:2rem!important;text-align:center!important}.info-banner{background:#ffffff1f!important;border:1px solid rgba(255,255,255,.25)!important;border-left:4px solid #4da3ff!important;border-radius:12px!important;padding:.75rem 1rem!important;color:#ddd!important;font-size:.95rem!important;margin-bottom:2rem!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;box-shadow:0 4px 20px #0000004d!important}.grades-table{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:20px!important;padding:1.5rem!important;backdrop-filter:blur(25px) saturate(160%)!important;-webkit-backdrop-filter:blur(25px) saturate(160%)!important;box-shadow:0 8px 32px #0006!important;transition:all .3s ease-in-out!important}.grades-table:hover{box-shadow:0 0 25px #935aff66!important}table{width:100%!important;border-collapse:collapse!important;color:#fff!important}th,td{padding:.75rem!important;text-align:left!important}th{border-bottom:2px solid rgba(255,255,255,.1)!important;color:#ccc!important;font-weight:600!important}tr{border-bottom:1px solid rgba(255,255,255,.05)!important;cursor:pointer!important;transition:background .2s ease!important}tr:hover{background:#ffffff14!important}.assignment-link{color:#4da3ff!important;font-weight:500!important}.missing td{color:#888!important}.submitted td:last-child{color:#4da3ff!important;font-weight:600!important}@media (max-width: 768px){.grades-table{padding:1rem!important}table{font-size:.9rem!important}}.submission-container{padding:2rem!important;color:#fff!important;position:relative!important;z-index:1!important;min-height:100vh!important;min-width:100vw!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;background:transparent!important}.back-btn-container{position:absolute!important;top:2rem!important;left:2rem!important;z-index:10!important}.back-btn{color:#4da3ff!important;border:none!important;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:8px!important;padding:.5rem 1rem!important;font-size:1rem!important;cursor:pointer!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;transition:all .2s ease!important}.back-btn:hover{background:#fff3!important;color:#86b7ff!important;box-shadow:0 0 10px #935aff4d!important}.submission-header h1{font-size:2rem!important;font-weight:700!important;text-align:center!important}.submission-header p{color:#ccc!important;text-align:center!important;margin-bottom:.5rem!important}.submission-header h2{color:#4da3ff!important;font-size:1.5rem!important;margin-bottom:2rem!important;text-align:center!important}.question-list{display:flex!important;flex-direction:column!important;gap:1rem!important;align-items:center!important}.question-card{width:100%!important;max-width:850px!important;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:16px!important;padding:1.25rem 1.5rem!important;backdrop-filter:blur(25px) saturate(160%)!important;-webkit-backdrop-filter:blur(25px) saturate(160%)!important;box-shadow:0 8px 32px #0006!important;transition:all .3s ease-in-out!important}.question-card:hover{transform:translateY(-2px)!important;box-shadow:0 0 20px #935aff4d!important}.question-card.correct{border-left:4px solid #00c853!important}.question-card.incorrect{border-left:4px solid #ff5252!important}.question-card h3{color:#fff!important;margin-bottom:.5rem!important}.question-card p{color:#ccc!important;margin:.25rem 0!important}.result-tag{font-weight:600!important;margin-top:.5rem!important}.result-tag.right{color:#00c853!important}.result-tag.wrong{color:#ff5252!important}@media (max-width: 768px){.question-card{padding:1rem!important}.submission-header h1{font-size:1.6rem!important}.submission-header h2{font-size:1.2rem!important}}.notes-page-layout{display:flex;flex-direction:row;height:100vh;width:100vw;font-family:Inter,system-ui,sans-serif;overflow:hidden;position:relative;z-index:1}.notes-page-container{display:flex;flex:1;padding:2rem;gap:2rem;max-width:1200px;margin:0 auto;height:calc(100vh - 80px)}.notes-list-panel{width:340px;background:#ffffff14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.15);border-radius:18px;box-shadow:0 8px 24px #00000040;display:flex;flex-direction:column;overflow:hidden;position:relative;color:#fff}.notes-list-header{padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.15)}.notes-list-title-row h3{font-size:1.2rem;font-weight:700;margin:0;color:#fff}.notes-search-input{width:92%;padding:.6rem .75rem;border:1px solid rgba(255,255,255,.25);border-radius:8px;font-size:.9rem;background:#ffffff14;color:#fff;margin-top:.75rem;transition:.2s}.notes-search-input::placeholder{color:#ffffff8c}.notes-search-input:focus{border-color:#8e7cff;outline:none;background:#ffffff1f}.notes-list{flex:1;overflow-y:auto;padding:1rem}.note-card{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:1rem;margin-bottom:1rem;transition:all .25s ease;color:#fff}.note-card:hover{transform:translateY(-2px);background:#ffffff2e}.note-card.active{border:2px solid #8e7cff;background:#fff3}.note-card-header{display:flex;justify-content:space-between;align-items:flex-start}.note-card-header h3{margin:0;font-size:1rem;font-weight:600;color:#fff}.note-card-preview{margin-top:.5rem;font-size:.85rem;color:#fffc;line-height:1.5;overflow-wrap:anywhere}.note-card-date{margin-top:.5rem;font-size:.75rem;color:#fff9}.btn-new-note{position:absolute;bottom:24px;right:24px;background:linear-gradient(135deg,#6c63ff,#8e7cff);color:#fff;border:none;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px #6c63ff66;cursor:pointer;transition:transform .25s,box-shadow .25s}.btn-new-note:hover{transform:scale(1.08);box-shadow:0 10px 28px #6c63ff80}.note-editor-panel{flex:1;background:#ffffff14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.15);border-radius:18px;box-shadow:0 8px 24px #00000040;display:flex;flex-direction:column;overflow:hidden;color:#fff}.note-editor-header{padding:1.5rem 2rem;border-bottom:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;align-items:center}.note-title-input{width:90%;font-size:1.25rem;font-weight:600;border:none;outline:none;padding:.6rem .75rem;border-radius:8px;background:#ffffff1a;color:#fff}.note-editor-content{flex:1;padding:1.5rem 2rem;overflow-y:auto}.note-content-textarea{width:90%;height:100%;border:none;outline:none;border-radius:10px;background:#ffffff1a;color:#fff;padding:1rem;font-size:1rem;line-height:1.6;resize:none}.note-content-display{font-size:1rem;line-height:1.6;color:#ffffffe6;white-space:pre-wrap}.note-editor-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff9}.note-editor-empty h3{font-weight:600;color:#8e7cff;margin-bottom:6px}.btn-save,.btn-edit,.btn-cancel,.btn-delete{display:flex;border:1px solid rgba(255,255,255,.5);justify-content:center;border-radius:8px;padding:.4rem 1rem;color:#fff;background:#ffffff1f;cursor:pointer}.btn-save:hover,.btn-edit:hover,.btn-cancel:hover{background:#ffffff40}.notes-list::-webkit-scrollbar,.note-editor-content::-webkit-scrollbar{width:8px}.notes-list::-webkit-scrollbar-thumb,.note-editor-content::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:4px}.notes-list::-webkit-scrollbar-thumb:hover,.note-editor-content::-webkit-scrollbar-thumb:hover{background:#fff6}.upload-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000}.upload-modal-content{background:#ffffff14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.15);border-radius:18px;box-shadow:0 8px 32px #0000004d;padding:2.5rem;max-width:420px;width:90%;color:#fff;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.upload-modal-content h3{font-size:1.4rem;font-weight:700;margin:0 0 .5rem;background:linear-gradient(135deg,#8e7cff,#b8a9ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.upload-modal-content p{font-size:.95rem;color:#fffc;margin:0 0 1.5rem}.upload-modal-buttons{display:flex;flex-direction:column;gap:.75rem;align-items:center}.upload-modal-buttons p{text-align:center;margin:1rem 0}.upload-modal .upload-modal-buttons button,.upload-modal .upload-modal-buttons label{display:flex;align-items:center;justify-content:center;width:100%;max-width:300px;height:3rem;border-radius:10px;border:2px solid rgba(142,124,255,.4);background:#8e7cff1a;color:#fff;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .25s ease}.upload-modal .upload-modal-buttons button:hover,.upload-modal .upload-modal-buttons label:hover{background:#6c63ff2e;border-color:#6c63ff99;box-shadow:0 4px 16px #6c63ff33}.upload-modal .upload-modal-buttons .btn-cancel{border:1px solid rgba(255,255,255,.25);background:#ffffff14}.upload-modal .upload-modal-buttons .btn-cancel:hover{background:#ffffff1f;border-color:#ffffff4d}.btn-delete-note{margin-top:0;margin-right:0;width:5rem;min-width:5rem;border:1px solid rgba(255,255,255,.25);background:#8e7cff1a;color:#ec6b5f}.btn-delete-note:hover{background:#ec6b5f;color:#fff}.folders-section{padding:.8rem 1rem;border-bottom:1px solid rgba(255,255,255,.1)}.folders-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.folder-list{display:flex;flex-direction:column;gap:.4rem}.folder-item{cursor:pointer;color:#ffffffd9;border-radius:6px;padding:.4rem .6rem;transition:background .2s ease}.folder-item:hover{background:#ffffff1a}.folder-item.active{background:#8e7cff40}.btn-add-folder{background:none;margin-top:0;margin-right:0;width:7rem;border:1px solid rgba(255,255,255,.5);color:#fffc;cursor:pointer}.btn-add-folder:hover{background:#8e7cffb3;color:#fff}.folder-item.drag-over{background:#8e7cff59;border:1px dashed rgba(142,124,255,.7)}.note-card[draggable=true]{cursor:grab}.note-card:active{cursor:grabbing}.folder-row{display:flex;justify-content:space-between;align-items:center;position:relative}.folder-actions{display:flex;align-items:center;justify-content:flex-end}.menu-button{color:#fff}.live-poll-session{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.loading-container{display:flex;align-items:center;justify-content:center;min-height:100vh;color:#fff}.host-lobby{max-width:1200px;margin:0 auto;color:#fff}.lobby-header{text-align:center;margin-bottom:40px}.lobby-header h1{font-size:3rem;margin-bottom:20px}.access-code-display{display:inline-flex;align-items:center;gap:15px;background:#fff3;padding:15px 30px;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.access-code-display .label{font-size:1.2rem;opacity:.9}.access-code-display .code{font-size:2.5rem;font-weight:700;letter-spacing:.3em;font-family:Courier New,monospace}.lobby-content{display:grid;grid-template-columns:2fr 1fr;gap:30px;margin-bottom:40px}.participants-section h2{margin-bottom:20px}.participants-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.waiting-message{grid-column:1 / -1;text-align:center;padding:40px;background:#ffffff1a;border-radius:10px;font-style:italic}.participant-card{background:#ffffff26;padding:20px;border-radius:10px;display:flex;align-items:center;gap:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .2s}.participant-card:hover{transform:translateY(-3px)}.participant-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#f093fb,#f5576c);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:#fff}.participant-name{font-size:1.1rem}.lobby-info{display:flex;flex-direction:column;gap:20px}.info-card{background:#ffffff26;padding:20px;border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.info-card h3{margin-bottom:15px;font-size:1.3rem}.info-card p{margin:8px 0}.info-card ol{margin:10px 0;padding-left:20px}.info-card li{margin:8px 0}.lobby-actions{text-align:center}.start-poll-btn{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;border:none;padding:20px 60px;font-size:1.3rem;font-weight:700;border-radius:50px;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 30px #0000004d}.start-poll-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 15px 40px #0006}.start-poll-btn:disabled{opacity:.5;cursor:not-allowed}.participant-lobby{max-width:800px;margin:0 auto;text-align:center;color:#fff}.participant-lobby .lobby-header{margin-bottom:60px}.participant-lobby .lobby-header h1{font-size:3rem;margin-bottom:10px}.subtitle{font-size:1.3rem;opacity:.9}.lobby-animation{margin:60px 0;position:relative}.pulsing-circle{width:200px;height:200px;border-radius:50%;background:#fff3;margin:0 auto;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.7}}.status-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2rem;font-weight:700}.lobby-stats{display:flex;justify-content:center;gap:40px;margin:40px 0}.stat-card{background:#ffffff26;padding:30px 50px;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-number{display:block;font-size:3rem;font-weight:700;margin-bottom:10px}.stat-label{font-size:1.1rem;opacity:.9}.participants-preview{margin-top:40px}.participants-preview h3{font-size:1.5rem;margin-bottom:20px}.participants-avatars{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.avatar-circle{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#f093fb,#f5576c);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:#fff;border:3px solid rgba(255,255,255,.3)}.avatar-circle.more{background:#fff3}.timer-container{width:150px;height:150px;position:relative}.timer-svg{transform:rotate(-90deg);width:100%;height:100%}.timer-circle-bg{fill:none;stroke:#fff3;stroke-width:8}.timer-circle-progress{fill:none;stroke-width:8;transition:stroke-dashoffset .1s linear}.timer-safe .timer-circle-progress{stroke:#4ade80}.timer-warning .timer-circle-progress{stroke:#fbbf24}.timer-danger .timer-circle-progress{stroke:#ef4444}.timer-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#fff}.timer-number{display:block;font-size:3rem;font-weight:700;line-height:1}.timer-label{display:block;font-size:.9rem;opacity:.8;margin-top:5px}.question-display{max-width:1000px;margin:0 auto;background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.question-progress{font-size:1.2rem;color:#666;font-weight:600}.question-content{margin-bottom:40px;position:relative}.question-text{font-size:2rem;color:#1f2937;margin-bottom:20px;line-height:1.4}.points-badge{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 20px;border-radius:20px;font-weight:600}.answer-section{margin-top:40px}.choices-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.choice-button{background:#f3f4f6;border:3px solid transparent;padding:25px;border-radius:15px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:15px;font-size:1.1rem;text-align:left}.choice-button:hover{background:#e5e7eb;transform:translateY(-2px);box-shadow:0 5px 15px #0000001a}.choice-button.selected{background:#dbeafe;border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 5px 20px #3b82f64d}.choice-letter{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.choice-text{flex:1;color:#1f2937}.free-response-input textarea{width:100%;padding:20px;border:2px solid #e5e7eb;border-radius:15px;font-size:1.1rem;font-family:inherit;resize:vertical;transition:border-color .2s}.free-response-input textarea:focus{outline:none;border-color:#3b82f6}.submit-answer-btn{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:20px;font-size:1.3rem;font-weight:700;border-radius:15px;cursor:pointer;transition:transform .2s,box-shadow .2s}.submit-answer-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 30px #667eea66}.submit-answer-btn:disabled{opacity:.5;cursor:not-allowed}.answer-submitted-state{text-align:center;padding:40px}.answer-result{padding:40px;border-radius:20px;animation:fadeIn .5s}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.answer-result.correct{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.answer-result.incorrect{background:linear-gradient(135deg,#fee2e2,#fecaca)}.result-icon{font-size:5rem;margin-bottom:20px}.result-text{font-size:2rem;font-weight:700;margin-bottom:15px;color:#1f2937}.result-points{font-size:2.5rem;font-weight:700;margin-bottom:10px;color:#667eea}.result-total{font-size:1.3rem;color:#666}.waiting-results{padding:40px}.spinner{width:60px;height:60px;border:5px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{to{transform:rotate(360deg)}}.spinner-small{width:30px;height:30px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 15px}.host-control{max-width:1200px;margin:0 auto;background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d}.host-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;padding-bottom:30px;border-bottom:2px solid #e5e7eb}.question-info h3{font-size:1.5rem;color:#1f2937;margin-bottom:10px}.points-display{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 20px;border-radius:20px;font-weight:600;display:inline-block}.host-content{display:grid;grid-template-columns:2fr 1fr;gap:40px;margin-bottom:40px}.question-display-host h2{font-size:2rem;color:#1f2937;margin-bottom:30px}.choices-preview{display:flex;flex-direction:column;gap:15px}.choice-preview{display:flex;align-items:center;gap:15px;padding:15px;background:#f3f4f6;border-radius:10px}.choice-letter-preview{width:35px;height:35px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.answer-tracking{background:#f9fafb;padding:30px;border-radius:15px}.answer-tracking h3{font-size:1.3rem;margin-bottom:20px;color:#1f2937}.response-stats{text-align:center;margin-bottom:20px}.stat-large{display:flex;align-items:baseline;justify-content:center;gap:5px;margin-bottom:10px}.stat-number-large{font-size:4rem;font-weight:700;color:#667eea}.stat-divider{font-size:2rem;color:#9ca3af}.stat-total{font-size:2rem;color:#6b7280}.stat-description{color:#6b7280;font-size:1.1rem}.progress-bar{width:100%;height:20px;background:#e5e7eb;border-radius:10px;overflow:hidden;margin-bottom:20px}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease}.participant-status-list{max-height:300px;overflow-y:auto}.participant-status-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid #e5e7eb}.participant-name-small{font-size:.95rem;color:#1f2937}.answer-status{font-size:1.2rem}.host-actions{text-align:center}.show-results-btn{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;border:none;padding:20px 60px;font-size:1.3rem;font-weight:700;border-radius:50px;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 30px #f093fb4d}.show-results-btn:hover{transform:translateY(-3px);box-shadow:0 15px 40px #f093fb66}.action-hint{margin-top:15px;color:#6b7280;font-size:.95rem}.results-display{max-width:1200px;margin:0 auto;background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;padding-bottom:20px;border-bottom:2px solid #e5e7eb}.results-header h2{font-size:2.5rem;color:#1f2937}.accuracy-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:15px 30px;border-radius:30px;font-size:1.3rem;font-weight:700}.results-content{display:flex;flex-direction:column;gap:40px}.correct-answer-section{text-align:center;padding:40px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:15px}.correct-answer-label{font-size:1.2rem;color:#1e40af;margin-bottom:10px;font-weight:600}.correct-answer-value{font-size:2.5rem;color:#1e3a8a;font-weight:700;margin-bottom:15px}.response-summary{font-size:1.1rem;color:#3b82f6}.answer-distribution{padding:30px;background:#f9fafb;border-radius:15px}.answer-distribution h3{font-size:1.5rem;color:#1f2937;margin-bottom:25px}.bar-chart{display:flex;flex-direction:column;gap:20px}.bar-item{display:flex;align-items:center;gap:15px}.bar-label{min-width:200px;display:flex;align-items:center;gap:10px}.answer-letter{width:35px;height:35px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.answer-text{color:#1f2937;font-weight:500}.bar-container{flex:1;height:50px;background:#e5e7eb;border-radius:25px;overflow:hidden;position:relative}.bar-fill{height:100%;display:flex;align-items:center;justify-content:flex-end;padding-right:15px;transition:width .5s ease;position:relative}.correct-bar{background:linear-gradient(90deg,#10b981,#059669)}.incorrect-bar{background:linear-gradient(90deg,#6b7280,#4b5563)}.bar-count{color:#fff;font-weight:700;font-size:1.1rem;z-index:1}.my-result{padding:40px;border-radius:15px;text-align:center}.result-correct{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.result-incorrect{background:linear-gradient(135deg,#fee2e2,#fecaca)}.result-status{font-size:2rem;font-weight:700;margin-bottom:15px;color:#1f2937}.result-points-earned{font-size:2.5rem;font-weight:700;color:#667eea;margin-bottom:10px}.result-total-score{font-size:1.3rem;color:#6b7280}.mini-leaderboard{padding:30px;background:#f9fafb;border-radius:15px}.mini-leaderboard h3{font-size:1.5rem;margin-bottom:20px;color:#1f2937}.leaderboard-list-mini{display:flex;flex-direction:column;gap:12px}.leaderboard-item-mini{display:flex;align-items:center;gap:15px;padding:15px;background:#fff;border-radius:10px}.rank-mini{font-weight:700;color:#667eea;min-width:40px}.name-mini{flex:1;color:#1f2937}.score-mini{font-weight:700;color:#1f2937}.results-actions{text-align:center;padding-top:20px;border-top:2px solid #e5e7eb}.next-question-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:20px 60px;font-size:1.3rem;font-weight:700;border-radius:50px;cursor:pointer;transition:transform .2s,box-shadow .2s}.next-question-btn:hover{transform:translateY(-3px);box-shadow:0 15px 40px #667eea66}.waiting-host{text-align:center;padding:40px;color:#6b7280}.final-leaderboard{max-width:1200px;margin:0 auto;color:#fff}.leaderboard-header{text-align:center;margin-bottom:60px}.leaderboard-header h1{font-size:4rem;margin-bottom:15px}.podium{display:flex;justify-content:center;align-items:flex-end;gap:20px;margin-bottom:60px;padding:0 40px}.podium-place{flex:1;max-width:250px;text-align:center;animation:slideUp .6s ease-out}.podium-place.first{animation-delay:.2s}.podium-place.second{animation-delay:0s}.podium-place.third{animation-delay:.1s}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.podium-medal{font-size:3rem;margin-bottom:15px}.podium-avatar{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#f093fb,#f5576c);display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:700;margin:0 auto 15px;border:5px solid rgba(255,255,255,.5)}.podium-place.first .podium-avatar{width:120px;height:120px;font-size:3.5rem;border-width:6px}.podium-name{font-size:1.3rem;font-weight:700;margin-bottom:10px}.podium-score{font-size:1.5rem;font-weight:700;color:#fbbf24;margin-bottom:20px}.podium-stand{background:#fff3;padding:30px 20px;border-radius:10px 10px 0 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.podium-place.first .podium-stand{padding:50px 20px;background:#ffd7004d}.podium-place.second .podium-stand{padding:40px 20px;background:#c0c0c04d}.podium-place.third .podium-stand{padding:35px 20px;background:#cd7f324d}.stand-rank{font-size:2rem;font-weight:700}.full-rankings{max-width:800px;margin:0 auto 40px}.full-rankings h2{text-align:center;font-size:2rem;margin-bottom:30px}.rankings-list{background:#ffffff26;border-radius:15px;padding:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ranking-item{display:flex;align-items:center;gap:20px;padding:20px;background:#ffffff1a;border-radius:10px;margin-bottom:15px;transition:transform .2s}.ranking-item:hover{transform:translate(5px);background:#ffffff26}.ranking-item.top-three{background:#ffd70033}.rank-number{font-size:1.5rem;font-weight:700;min-width:50px}.ranking-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#f093fb,#f5576c);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.ranking-name{flex:1;font-size:1.2rem}.ranking-score{font-size:1.3rem;font-weight:700;color:#fbbf24}.leaderboard-actions{text-align:center;margin-top:40px}.back-home-btn{background:#fff3;color:#fff;border:2px solid white;padding:15px 50px;font-size:1.2rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-home-btn:hover{background:#fff;color:#667eea;transform:translateY(-3px)}.create-live-session-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 20px}.page-header{text-align:center;color:#fff;margin-bottom:50px}.page-header h1{font-size:3rem;margin-bottom:15px}.page-header p{font-size:1.3rem;opacity:.9}.polls-grid{max-width:1200px;margin:0 auto 40px;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px}.empty-state{grid-column:1 / -1;text-align:center;padding:80px 40px;background:#ffffff1a;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff}.empty-state p{font-size:1.3rem;margin-bottom:30px}.empty-state button{background:#fff;color:#667eea;border:none;padding:15px 40px;font-size:1.1rem;font-weight:700;border-radius:50px;cursor:pointer;transition:transform .2s}.empty-state button:hover{transform:translateY(-3px)}.poll-card{background:#fff;border-radius:15px;padding:25px;cursor:pointer;transition:all .3s;border:3px solid transparent;position:relative}.poll-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0003}.poll-card.selected{border-color:#667eea;box-shadow:0 10px 30px #667eea4d}.poll-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.poll-card-header h3{font-size:1.4rem;color:#1f2937;margin:0;flex:1}.selected-badge{width:30px;height:30px;background:#667eea;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700}.poll-card-info{display:flex;flex-direction:column;gap:10px;color:#6b7280;font-size:.95rem}.create-session-actions{max-width:600px;margin:0 auto;display:flex;gap:20px;justify-content:center}.create-session-btn{flex:1;background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;border:none;padding:20px 50px;font-size:1.3rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .2s;box-shadow:0 10px 30px #f093fb4d}.create-session-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 15px 40px #f093fb66}.create-session-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-btn{background:#fff3;color:#fff;border:2px solid white;padding:20px 40px;font-size:1.2rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cancel-btn:hover{background:#fff;color:#667eea}.join-live-session-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:20px}.join-container{max-width:500px;width:100%;background:#fff;border-radius:20px;padding:50px;box-shadow:0 20px 60px #0000004d}.join-header{text-align:center;margin-bottom:40px}.join-header h1{font-size:2.5rem;color:#1f2937;margin-bottom:10px}.join-header p{color:#6b7280;font-size:1.1rem}.join-form{display:flex;flex-direction:column;gap:25px}.form-group{display:flex;flex-direction:column;gap:10px}.form-group label{font-weight:600;color:#1f2937;font-size:1.1rem}.code-input,.name-input{padding:18px;border:2px solid #e5e7eb;border-radius:12px;font-size:1.2rem;transition:border-color .2s;font-family:inherit}.code-input{text-align:center;font-size:2rem;letter-spacing:.5em;font-weight:700;text-transform:uppercase}.code-input:focus,.name-input:focus{outline:none;border-color:#667eea}.error-message{background:#fee2e2;color:#dc2626;padding:15px;border-radius:10px;text-align:center;font-weight:500}.join-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:20px;font-size:1.3rem;font-weight:700;border-radius:15px;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:10px}.join-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 30px #667eea66}.join-btn:disabled{opacity:.5;cursor:not-allowed}.back-link{margin-top:20px;background:none;border:none;color:#667eea;font-size:1rem;cursor:pointer;text-decoration:underline;font-weight:500}.back-link:hover{color:#764ba2}.messages-container{display:flex;height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);overflow:hidden}.threads-list{width:350px;background:#fff;display:flex;flex-direction:column;border-right:1px solid #e5e7eb}.threads-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.threads-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#1f2937;display:flex;align-items:center;gap:.75rem}.threads-search{position:relative;padding:1rem;border-bottom:1px solid #e5e7eb}.threads-search .search-icon{position:absolute;left:1.75rem;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.threads-search .search-input{width:100%;padding:.625rem 1rem .625rem 2.5rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;outline:none;transition:all .2s;box-sizing:border-box;background:#fff;color:#1f2937}.threads-search .search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.threads-scroll{flex:1;overflow-y:auto}.threads-scroll::-webkit-scrollbar{width:6px}.threads-scroll::-webkit-scrollbar-track{background:#f9fafb}.threads-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.thread-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;cursor:pointer;transition:background .15s;border-bottom:1px solid #f3f4f6}.thread-item:hover{background:#f9fafb}.thread-item.active{background:#eff6ff;border-left:3px solid #667eea}.thread-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1.125rem;flex-shrink:0;overflow:hidden}.thread-avatar img{width:100%;height:100%;object-fit:cover}.thread-info{flex:1;min-width:0}.thread-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.thread-info h3{margin:0;font-size:1rem;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread-time{font-size:.75rem;color:#9ca3af;white-space:nowrap}.thread-preview{margin:0;font-size:.875rem;color:#6b7280!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-area{flex:1;display:flex;flex-direction:column;background:#fff}.chat-area.show{display:flex}.chat-header{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb;background:#fff}.back-button{display:none;background:none;border:none;cursor:pointer;padding:.5rem;color:#6b7280;border-radius:8px;transition:all .2s}.back-button:hover{background:#f3f4f6;color:#1f2937}.chat-header-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;flex-shrink:0;overflow:hidden}.chat-header-avatar img{width:100%;height:100%;object-fit:cover}.chat-header-info{flex:1}.chat-header-info h3{margin:0;font-size:1rem;font-weight:600;color:#1f2937}.status-container{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.status-dot{width:8px;height:8px;border-radius:50%;transition:all .3s}.status-dot.online{background:#10b981;box-shadow:0 0 4px #10b98180}.status-dot.offline{background:#d1d5db}.chat-header-info p{margin:0;font-size:.75rem;color:#6b7280}.online-status{color:#6b7280}.messages-scroll{flex:1;overflow-y:auto;padding:1.5rem 1.5rem 2rem;background:#f9fafb;display:flex;flex-direction:column;gap:1rem}.messages-scroll::-webkit-scrollbar{width:6px}.messages-scroll::-webkit-scrollbar-track{background:transparent}.messages-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.no-messages{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;text-align:center;gap:.5rem}.no-messages p{margin:0;font-size:1rem;font-weight:500;color:#6b7280}.no-messages-subtitle{font-size:.875rem!important;color:#9ca3af!important}.message{display:flex;gap:.75rem;max-width:70%}.message.own{align-self:flex-end;flex-direction:row-reverse}.message.other{align-self:flex-start}.message-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem;flex-shrink:0;overflow:hidden}.message-avatar img{width:100%;height:100%;object-fit:cover}.message-content{display:flex;flex-direction:column;gap:.25rem}.message.own .message-content{align-items:flex-end}.message-bubble{padding:.75rem 1rem;border-radius:16px;word-wrap:break-word}.message-bubble p{margin:0;font-size:.9375rem;line-height:1.5}.message-time{font-size:.6875rem;color:#9ca3af;padding:0 .25rem}.message-input-container{display:flex;align-items:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#fff}.message-input{flex:1;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:20px;font-size:.9375rem;resize:none;max-height:120px;font-family:inherit;outline:none;transition:all .2s;background:#f9fafb;color:#1f2937}.message-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.send-button{width:40px;height:40px;border-radius:50%;background:#667eea;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.send-button:hover:not(:disabled){background:#5568d3;transform:scale(1.05)}.send-button:disabled{background:#d1d5db;cursor:not-allowed;opacity:.5}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;color:#9ca3af;text-align:center;height:100%}.empty-state svg{color:#d1d5db;margin-bottom:1rem}.empty-state p{margin:.25rem 0;font-size:1rem;color:#6b7280}.empty-subtitle{font-size:.875rem!important;color:#9ca3af!important}.no-chat-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;text-align:center}.no-chat-selected svg{color:#d1d5db;margin-bottom:1rem}.no-chat-selected p{margin:0;font-size:1rem;color:#6b7280}@media (max-width: 768px){.threads-list{width:100%}.threads-list.hidden-mobile{display:none}.chat-area{display:none;width:100%}.chat-area.show,.back-button{display:flex}.message{max-width:85%}}.selected-material-preview{position:relative;padding:.75rem;background:#f9fafb;border-radius:8px;margin-bottom:.5rem}.remove-material-btn{position:absolute;top:.5rem;right:.5rem;background:#ef4444;color:#fff;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.remove-material-btn:hover{background:#dc2626;transform:scale(1.1)}.message-input-row{display:flex;align-items:center;gap:.5rem}.attach-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.attach-btn:hover{background:#f3f4f6;color:#667eea}.attach-btn:active{transform:scale(.95)}.message-bubble{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem;border-radius:16px;word-wrap:break-word}.message-bubble.typing{padding:.5rem .75rem;flex-direction:row;gap:6px;align-items:center;justify-content:flex-start;margin-left:.25rem}.message.own .message-bubble{background:#667eea;color:#fff;border-bottom-right-radius:4px}.message.other .message-bubble{background:#fff;color:#000;border-bottom-left-radius:4px;border:1px solid #e5e7eb}.message-bubble p{margin:0;word-wrap:break-word;color:inherit!important}.message.own .message-bubble p{color:#fff!important}.message.other .message-bubble p{color:#000!important}.message-bubble .study-material-card{max-width:100%;margin:0}.message.own .message-bubble .study-material-card{margin-left:auto}.message-input-container{padding:1rem;background:#fff;border-top:1px solid #e5e7eb}@media (max-width: 768px){.attach-btn{padding:.4rem}.selected-material-preview{padding:.5rem}.remove-material-btn{width:24px;height:24px}}.typing-indicator .message-bubble{padding:.5rem .75rem;background:#fff;border:1px solid #e5e7eb;border-bottom-left-radius:4px;margin-left:.25rem}.typing-bubble{display:flex;gap:6px;padding:.5rem .75rem;align-items:center;justify-content:flex-start;margin-left:.25rem}.typing-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#999;animation:typing-animation 1.4s infinite;box-shadow:0 0 2px #0000001a;flex-shrink:0}.typing-dot:nth-child(1){animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing-animation{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.friends-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.friends-inner{max-width:1200px;margin:0 auto}.friends-header{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:2rem;display:flex;align-items:center;gap:1rem}.friends-card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000001a;overflow:hidden}.friends-tabs{display:flex;border-bottom:2px solid #e5e7eb}.friends-tab{flex:1;padding:1rem 1.5rem;font-weight:600;cursor:pointer;border:none;background:none;color:#6b7280;transition:all .3s;border-bottom:3px solid transparent}.friends-tab:hover{color:#667eea}.friends-tab.active{color:#667eea;border-bottom-color:#667eea}.friends-content{padding:2rem;box-sizing:border-box}.user-card{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#f9fafb;border-radius:8px;margin-bottom:1rem;transition:background .2s;gap:1rem;min-width:0}.user-card:hover{background:#f3f4f6}.user-card.request-card{background:#dbeafe}.user-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:0;overflow:hidden}.user-avatar{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:600;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-shrink:0;overflow:hidden}.user-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.user-avatar.blue{background:linear-gradient(135deg,#3b82f6,#2563eb)}.user-avatar.gray{background:linear-gradient(135deg,#9ca3af,#6b7280)}.user-details{flex:1;min-width:0}.user-details h3{margin:0;font-weight:600;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-details p{margin:0;font-size:.875rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.1rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.875rem;white-space:nowrap;flex-shrink:0;width:auto;line-height:1.3}.btn svg{width:16px;height:16px;flex-shrink:0}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover:not(:disabled){background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-success{background:#10b981;color:#fff}.btn-success:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.btn-secondary{background:#ef4444;color:#fff}.btn-secondary:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.btn-outline{background:#fff;color:#6b7280;border:2px solid #e5e7eb}.btn-outline:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;transform:translateY(-1px)}.btn-group{display:flex;gap:.4rem;flex-shrink:0}.search-container{position:relative;width:100%;max-width:100%;margin-bottom:1.5rem;box-sizing:border-box}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none;z-index:1}.search-input{width:100%;padding:.75rem 1rem .75rem 3rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;outline:none;transition:all .2s;box-sizing:border-box}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.empty-state{text-align:center;padding:3rem;color:#6b7280}.empty-state svg{width:64px;height:64px;margin:0 auto 1rem;color:#d1d5db}.status-text{padding:.6rem 1.1rem;font-size:.875rem;font-weight:600;flex-shrink:0;white-space:nowrap}.status-text.success,.status-text.info{color:#10b981}.status-text.muted{color:#6b7280}.section-header{font-size:1.125rem;font-weight:600;color:#374151;margin-bottom:1rem;margin-top:2rem}.section-header:first-child{margin-top:0}.user-list{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:100%;box-sizing:border-box}.loading-text{text-align:center;color:#6b7280;padding:2rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:400px;width:90%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{margin-bottom:1rem}.modal-header h3{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0}.modal-body{margin-bottom:1.5rem}.modal-body p{color:#6b7280;margin:0;font-size:.938rem;line-height:1.5}.modal-footer{display:flex;gap:.75rem;justify-content:flex-end}.modal-footer .btn{min-width:80px}@media (max-width: 768px){.friends-container{padding:1rem}.friends-header{font-size:2rem}.friends-tabs{flex-direction:column}.friends-tab{border-bottom:1px solid #e5e7eb;border-left:3px solid transparent}.friends-tab.active{border-bottom-color:#e5e7eb;border-left-color:#667eea;background:#f9fafb}.friends-content{padding:1rem}.user-card{flex-wrap:wrap}.user-info{width:100%}.btn-group{width:100%;flex-wrap:wrap}.btn{flex:1;justify-content:center}.status-text{text-align:center;width:100%}}@media (max-width: 1024px) and (min-width: 769px){.user-card{gap:.75rem}.btn{padding:.3rem .5rem;font-size:.7rem}.btn svg{width:12px;height:12px}}@media (min-width: 769px){.user-card,.btn-group{flex-wrap:nowrap}}:root{font-family:system-ui,Inter,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;min-width:100vw;color-scheme:light dark;color:#ffffffde;background-color:#242424;justify-content:flex-start;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-primary: #632ce4;--color-primary-dark: #060b26;--color-accent: #c9deff;--color-text-light: #f5f5f5;--color-memora-dark-purple: #1d1145;--color-memora-light-purple-background: #f5f3fe;--color-memora-dark-purple-hover: #292980;--color-low-opacity-white-1: rgba(255, 255, 255, .1);--color-low-opacity-white-2: rgba(255, 255, 255, .2);--color-low-opacity-white-2: rgba(255, 255, 255, .3);--color-background-dark: #0f0c29;--color-background-dark-secondary: #232227;--color-white: #fff;--color-black: #000;--color-bg-dark: #0f0c29;--color-bg-nested: #191446;--color-pastel-lavender: #D5C7FB;--color-pastel-icyblue: #7999FA;--color-pastel-blue: #D3F7FC;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--size-height-header: 56px;--size-navbar-height: 64px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-wide-sm: 64px;--padding-sm: 8px;--padding-md: 16px;--padding-lg: 24px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px}body{display:flex;margin:0;min-width:100vw;min-height:100vh;overflow-x:hidden}.flex-row{display:flex;flex-direction:row}.flex-col{display:flex;flex-direction:column}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.btn-sm{height:32px;width:72px}.btn-md{height:32px;width:120px}.btn-md-tl{height:48px;width:120px}.btn-lg{height:32px;width:160px}.style-container-light{background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md);padding:var(--space-md);width:calc(100% - var(--space-xl));height:auto;box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:transform .2s ease;padding-top:0}.button-light-opacity{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md);padding:2rem;width:200px;text-align:center;cursor:pointer;box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:transform .2s ease;font-size:1.5rem}.button-light-opacity:hover{transform:translateY(-8px);background:#fff3}.button-dark-blue{background:var(--color-bg-dark);color:var(--color-pastel-blue);border-radius:var(--radius-md);font-weight:800}.krub-extralight{font-family:Krub,sans-serif;font-weight:200;font-style:normal}.krub-light{font-family:Krub,sans-serif;font-weight:300;font-style:normal}.krub-regular{font-family:Krub,sans-serif;font-weight:400;font-style:normal}.krub-medium{font-family:Krub,sans-serif;font-weight:500;font-style:normal}.krub-semibold{font-family:Krub,sans-serif;font-weight:600;font-style:normal}.krub-bold{font-family:Krub,sans-serif;font-weight:700;font-style:normal}.krub-extralight-italic{font-family:Krub,sans-serif;font-weight:200;font-style:italic}.krub-light-italic{font-family:Krub,sans-serif;font-weight:300;font-style:italic}.krub-regular-italic{font-family:Krub,sans-serif;font-weight:400;font-style:italic}.krub-medium-italic{font-family:Krub,sans-serif;font-weight:500;font-style:italic}.krub-semibold-italic{font-family:Krub,sans-serif;font-weight:600;font-style:italic}.krub-bold-italic{font-family:Krub,sans-serif;font-weight:700;font-style:italic}.darkveil-canvas{width:100%;height:100%;display:block}.dark-frosted-card{--primary-700: hsl(243, 26%, 15%);--primary-600: hsl(252, 9%, 22%);--primary-500: hsl(259, 13%, 28%);--border-1: var(--primary-500);--border-2: var(--primary-600);--surface-3: var(--primary-700);--border-width: 1px;border-radius:1rem;position:relative;background:hsl(from var(--surface-3) h s l / .25);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.dark-frosted-card:before{content:"";position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:var(--border-width) solid transparent;background:linear-gradient(var(--border-1),var(--border-2)) border-box;mask:linear-gradient(black,black) border-box,linear-gradient(black,black) padding-box;-webkit-mask-composite:source-out;mask-composite:subtract}.light-frosted-card{--primary-700: hsl(0, 0%, 40%);--primary-600: hsl(0, 0%, 50%);--primary-500: hsl(0, 0%, 65%);--border-1: var(--primary-600);--border-2: var(--primary-700);--surface-3: var(--primary-600);--border-width: 1px;border-radius:1rem;position:relative;background:hsl(from var(--surface-3) h s l / .25);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.light-frosted-card:before{content:"";position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:var(--border-width) solid transparent;background:linear-gradient(var(--border-1),var(--border-2)) border-box;mask:linear-gradient(white,white) border-box,linear-gradient(white,white) padding-box;-webkit-mask-composite:source-out;mask-composite:subtract}.badge{padding:var(--space-1) var(--space-4);border-radius:20px;font-size:12px;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:break-word;display:inline-block}.badge.purple{color:#e8e7fd;background:#6361e9}.badge.blue{background:#3b81f6;color:#dbeafe}.clip{max-width:50%!important}.badge.green{border:1px solid #6fdd48;color:#6fdd48}.btn-create-materials{display:flex;flex-direction:row;align-items:center;padding:var(--space-2) var(--space-4);background-color:#632ce4;min-width:var(--space-12);min-height:var(--space-8);color:#fff;cursor:pointer;transition:transform .2s ease,.2s ease,box-shadow .2s ease;border-radius:var(--radius-md);text-decoration:none}.btn-create-materials:hover{transform:scale(1.05);background:#7e4eed;box-shadow:0 6px 20px #00000040}.btn-create-materials:active{background:#4812c7}.protected-layout{display:flex;height:100vh;width:100%;overflow:hidden}.sidebar{height:100vh;background-color:var(--color-background-dark);position:fixed;left:0;top:0;transition:width .3s ease;display:flex;flex-direction:column;z-index:1000}.sidebar.expanded{width:240px}.sidebar.collapsed{width:70px}.sidebar-header{padding:0 20px;height:70px;border-bottom:1px solid #292980;display:flex;align-items:center}.sidebar-header.expanded{justify-content:space-between}.sidebar-header.collapsed{justify-content:center;padding:0}.sidebar-title{color:#fff;margin:0;font-size:20px}.sidebar-toggle{background-color:transparent;border:none;color:#fff;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;margin:0}.sidebar-nav{flex:1;padding:var(--space-2) var(--space-2);overflow-y:auto}.nav-item-container{width:100%;padding-bottom:var(--space-2)}.nav-button{width:100%;padding:15px 20px;background-color:transparent;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;margin:0;gap:15px;transition:background-color .2s ease;font-size:16px;border-left:4px solid transparent;text-align:left;position:relative}.nav-logo{align-items:center}.logo-small-nav{max-width:100%;height:auto}.nav-button.active{background-color:#292980;border-left:4px solid #632ce4}.nav-button:hover:not(.active){background-color:#292980}.nav-icon{min-width:24px}.nav-label{flex:1}.submenu-arrow{margin-left:auto;display:flex;align-items:center;transition:transform .2s ease}.sub-menu{background-color:#0f172a;padding:5px 0;animation:slideDown .2s ease-out}.sub-menu-button{width:100%;padding:12px 20px 12px 60px;background-color:transparent;margin:0;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;transition:all .2s ease;font-size:14px;text-align:left;border-left:4px solid transparent}.sub-menu-button:hover{background-color:#292980;color:#fff}.sub-menu-button.active{background-color:#292980;color:#3b82f6;border-left:4px solid #3b82f6;font-weight:500}.sub-menu-label{display:block}.main-content{transition:margin-left .3s ease;flex:1;display:flex;flex-direction:column;height:100vh;width:100%}.main-content.sidebar-expanded{margin-left:240px}.main-content.sidebar-collapsed{margin-left:70px}.topbar-right{display:flex;align-items:center;padding-right:12px}.top-header{height:70px;background-color:var(--color-background-dark);border-bottom:1px solid #292980;display:flex;align-items:center;justify-content:space-between;padding:0 30px;box-shadow:0 1px 3px #0000001a}.page-title{margin:0;font-size:24px;color:#fff}.page-content{flex:1;overflow-y:auto}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:#1e293b}.sidebar-nav::-webkit-scrollbar-thumb{background:#475569;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#64748b}.notif-wrapper{position:relative;display:flex;align-items:center;line-height:1}.notif-bell-button{position:relative;background:#fff;border:none;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0000001f;line-height:1;padding:0;margin:0}.notif-bell-button:hover{background:#f3f4f6;transform:translateY(-2px);box-shadow:0 4px 12px #0000002e}.notif-bell-button svg{color:#6366f1;stroke-width:2.5}.notif-bell-button:hover svg{color:#4f46e5}.notif-badge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;border-radius:10px;padding:2px 6px;font-size:.65rem;font-weight:700;min-width:18px;text-align:center;border:2px solid white;box-shadow:0 2px 4px #0003}.notif-dropdown{position:absolute;top:calc(100% + 12px);right:0;width:380px;max-height:500px;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;overflow:hidden;z-index:1000;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notif-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.notif-header h3{margin:0;font-size:1rem;font-weight:700;color:#1f2937}.mark-all-read{display:flex;align-items:center;gap:.25rem;background:none;border:none;color:#667eea;font-size:.8rem;font-weight:600;cursor:pointer;padding:.25rem .5rem;border-radius:6px;transition:all .2s}.mark-all-read:hover{background:#667eea1a}.notif-list{max-height:400px;overflow-y:auto}.notif-list::-webkit-scrollbar{width:6px}.notif-list::-webkit-scrollbar-track{background:#f9fafb}.notif-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.notif-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.notif-item{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;cursor:pointer;transition:background .15s;position:relative;border-bottom:1px solid #f3f4f6}.notif-item:last-child{border-bottom:none}.notif-item:hover{background:#f9fafb}.notif-item.unread{background:#eff6ff}.notif-item.unread:hover{background:#dbeafe}.notif-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0}.notif-avatar img{width:100%;height:100%;object-fit:cover}.notif-avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.notif-icon.message{color:#3b82f6}.notif-icon.friend-request{color:#10b981}.notif-icon.friend-accepted{color:#8b5cf6}.notif-icon.default{color:#6b7280}.notif-content{flex:1;min-width:0}.notif-text{font-size:.875rem;color:#374151;line-height:1.4;margin-bottom:.25rem}.notif-text strong{font-weight:600;color:#1f2937}.notif-time{font-size:.75rem;color:#9ca3af}.notif-unread-dot{width:8px;height:8px;background:#3b82f6;border-radius:50%;flex-shrink:0;margin-top:.5rem}.notif-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;color:#9ca3af;text-align:center}.notif-empty svg{color:#d1d5db;margin-bottom:1rem}.notif-empty p{margin:0;font-size:.875rem}@media (max-width: 480px){.notif-dropdown{width:calc(100vw - 2rem);right:-1rem}.notif-bell-button{width:40px;height:40px}}
