@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{margin:0;padding:0;background:#0d0f1a}.main-page{font-family:Inter,sans-serif;background:#0d0f1a;color:#e8eaf0;min-height:100vh}.navbar{display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem;height:68px;background:#0d0f1ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07);position:sticky;top:0;z-index:100}.navbar-brand .brand-name{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#a78bfa,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.navbar-member{display:flex;align-items:center;gap:.75rem}.member-photo{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid #a78bfa}.member-info{display:flex;flex-direction:column;line-height:1.3}.member-name{font-weight:600;font-size:.9rem;color:#e8eaf0}.member-roll{font-size:.72rem;color:#9ca3af;letter-spacing:.02em}.navbar-labs{display:flex;gap:.75rem}.lab-btn{padding:.45rem 1.2rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center}.lab-btn--outline{border:1.5px solid #a78bfa;color:#a78bfa;background:transparent}.lab-btn--outline:hover{background:#a78bfa1f}.lab-btn--filled{border:none;background:linear-gradient(135deg,#a78bfa,#60a5fa);color:#fff}.lab-btn--filled:hover{opacity:.88;transform:translateY(-1px)}.hero{display:flex;align-items:center;justify-content:space-between;gap:3rem;padding:6rem 2.5rem 5rem;max-width:1100px;margin:0 auto}.hero-content{flex:1}.hero-title{font-size:3rem;font-weight:800;line-height:1.15;margin-bottom:1.25rem;background:linear-gradient(135deg,#a78bfa 30%,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.6rem;font-weight:500;color:#c4c9d8;-webkit-text-fill-color:#c4c9d8}.hero-desc{font-size:1.05rem;color:#9ca3af;line-height:1.75;max-width:480px;margin-bottom:2rem}.cta-btn{padding:.75rem 2rem;background:linear-gradient(135deg,#a78bfa,#60a5fa);border:none;border-radius:10px;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:opacity .2s,transform .2s}.cta-btn:hover{opacity:.88;transform:translateY(-2px)}.hero-visual{flex:0 0 auto}.puzzle-preview{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2rem 2.5rem;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-width:220px}.preview-target{font-size:1.1rem;color:#9ca3af;margin-bottom:1.25rem}.preview-target strong{color:#a78bfa;font-size:1.5rem}.preview-tiles{display:flex;gap:.75rem;justify-content:center;margin-bottom:.75rem}.preview-tile{width:52px;height:52px;border-radius:12px;background:linear-gradient(135deg,#a78bfa40,#60a5fa40);border:1.5px solid rgba(167,139,250,.4);display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;color:#e8eaf0}.preview-ops{display:flex;gap:.75rem;justify-content:center}.preview-op{width:36px;height:36px;border-radius:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#60a5fa;font-weight:600}.section{max-width:1100px;margin:0 auto;padding:4rem 2.5rem}.section-title{font-size:1.9rem;font-weight:700;margin-bottom:2.5rem;color:#e8eaf0;position:relative}.section-title:after{content:"";display:block;width:48px;height:3px;background:linear-gradient(135deg,#a78bfa,#60a5fa);border-radius:2px;margin-top:.5rem}.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.about-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.75rem 1.5rem;transition:transform .2s,border-color .2s}.about-card:hover{transform:translateY(-4px);border-color:#a78bfa59}.about-icon{font-size:2rem;margin-bottom:.75rem}.about-card h3{font-size:1rem;font-weight:700;margin-bottom:.5rem;color:#e8eaf0}.about-card p{font-size:.875rem;color:#9ca3af;line-height:1.65}.product-section{border-top:1px solid rgba(255,255,255,.06)}.product-body p{font-size:1rem;color:#9ca3af;line-height:1.8;margin-bottom:1rem;max-width:720px}.product-body strong{color:#e8eaf0}.course-section{border-top:1px solid rgba(255,255,255,.06)}.course-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:2rem 2.5rem;max-width:560px}.course-row{display:flex;gap:1rem;margin-bottom:.85rem;align-items:baseline}.course-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;min-width:120px}.course-value{font-size:.95rem;font-weight:600;color:#e8eaf0}.course-divider{height:1px;background:#ffffff12;margin:1.25rem 0}.course-teacher{display:flex;flex-direction:column;gap:.3rem}.teacher-name{font-size:1.05rem;font-weight:700;color:#a78bfa}.teacher-title{font-size:.9rem;font-weight:600;color:#e8eaf0}.teacher-inst{font-size:.875rem;color:#9ca3af}.teacher-email{font-size:.875rem;color:#60a5fa;text-decoration:none;margin-top:.25rem}.teacher-email:hover{text-decoration:underline}.footer{text-align:center;padding:2rem;border-top:1px solid rgba(255,255,255,.06);color:#4b5563;font-size:.8rem;margin-top:2rem}@media(max-width:768px){.hero{flex-direction:column;padding:3rem 1.5rem;text-align:center}.hero-title{font-size:2rem}.hero-desc{margin:0 auto 2rem}.navbar{padding:0 1rem;flex-wrap:wrap;height:auto;gap:.5rem;padding-block:.75rem}.section{padding:3rem 1.5rem}}.game-page{font-family:Inter,sans-serif;background:#0d0f1a;color:#e8eaf0;min-height:100vh;display:flex;flex-direction:column}.game-navbar{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:60px;background:#0d0f1ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07);position:sticky;top:0;z-index:100}.game-back-btn{background:transparent;border:1.5px solid rgba(167,139,250,.5);color:#a78bfa;padding:.4rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s;font-family:Inter,sans-serif}.game-back-btn:hover{background:#a78bfa1a;border-color:#a78bfa}.game-nav-title{font-size:1.2rem;font-weight:800;background:linear-gradient(135deg,#a78bfa,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.game-container{flex:1;display:flex;flex-direction:column;align-items:center;padding:2.5rem 1.5rem 4rem;max-width:560px;margin:0 auto;width:100%}.game-title{font-size:2.8rem;font-weight:800;background:linear-gradient(135deg,#a78bfa,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:2rem;letter-spacing:-.02em}.target-card{width:100%;background:#ffffff0a;border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:1.5rem;text-align:center;margin-bottom:1.25rem}.target-label{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#6b7280;margin-bottom:.4rem}.target-value{font-size:3rem;font-weight:800;color:#e8eaf0;line-height:1}.expression-card{width:100%;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:1rem 1.5rem;text-align:center;margin-bottom:1.5rem;min-height:52px;display:flex;align-items:center;justify-content:center}.expression-text{font-size:1.2rem;font-weight:600;color:#a78bfa;letter-spacing:.08em}.expression-placeholder{font-size:.875rem;color:#4b5563;font-style:italic}.pad-section{width:100%;margin-bottom:1.25rem}.pad-label{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#6b7280;margin-bottom:.75rem}.number-pad{display:flex;gap:.75rem;flex-wrap:wrap}.number-tile{flex:1;min-width:80px;padding:1rem;border-radius:14px;border:1.5px solid rgba(167,139,250,.4);background:#a78bfa14;color:#a78bfa;font-size:1.4rem;font-weight:700;cursor:pointer;transition:all .18s ease;font-family:Inter,sans-serif}.number-tile:hover:not(:disabled){background:#a78bfa33;border-color:#a78bfa;transform:translateY(-2px)}.number-tile:disabled{opacity:.25;cursor:not-allowed;transform:none}.operator-pad{display:flex;gap:.75rem;flex-wrap:wrap}.operator-tile{flex:1;min-width:60px;padding:.85rem;border-radius:12px;border:1.5px solid rgba(251,191,36,.4);background:#fbbf2414;color:#fbbf24;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .18s ease;font-family:Inter,sans-serif}.operator-tile:hover{background:#fbbf242e;border-color:#fbbf24;transform:translateY(-2px)}.game-actions{display:flex;gap:.75rem;width:100%;margin-top:1.5rem}.game-btn{flex:1;padding:.9rem;border-radius:12px;font-size:.875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .18s ease;font-family:Inter,sans-serif;border:none}.game-btn--clear{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#9ca3af}.game-btn--clear:hover{background:#ffffff1a;color:#e8eaf0}.game-btn--submit{background:linear-gradient(135deg,#a78bfa,#ec4899);color:#fff}.game-btn--submit:hover{opacity:.88;transform:translateY(-1px)}.game-btn--share{background:#a78bfa1a;border:1.5px solid rgba(167,139,250,.4);color:#a78bfa;margin-top:.5rem}.game-btn--share:hover{background:#a78bfa33;border-color:#a78bfa;transform:translateY(-1px)}.game-btn--next{background:linear-gradient(135deg,#10b981,#059669);color:#fff;margin-top:1rem}.game-btn--next:hover{opacity:.9;transform:translateY(-1px)}.game-message{margin-top:1.25rem;font-size:.95rem;font-weight:600;padding:.75rem 1.25rem;border-radius:10px;text-align:center;width:100%}.game-message--success{background:#34d3991f;border:1px solid rgba(52,211,153,.3);color:#34d399}.game-message--error{background:#f871711a;border:1px solid rgba(248,113,113,.25);color:#f87171}.expression-zone{width:100%;min-height:72px;background:#ffffff08;border:2px dashed rgba(255,255,255,.12);border-radius:14px;padding:1rem 1.5rem;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;transition:border-color .2s,background .2s,box-shadow .2s}.expression-zone--active{border-color:#a78bfa;background:#a78bfa14;box-shadow:0 0 0 3px #a78bfa33}.expression-tokens{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.expression-token{padding:.35rem .75rem;border-radius:8px;font-size:1.1rem;font-weight:700}.expression-token--number{background:#a78bfa2e;border:1.5px solid rgba(167,139,250,.45);color:#a78bfa}.expression-token--operator{background:#fbbf241f;border:1.5px solid rgba(251,191,36,.35);color:#fbbf24}.drag-overlay{padding:1rem 1.5rem;border-radius:14px;font-size:1.4rem;font-weight:700;cursor:grabbing;box-shadow:0 12px 40px #00000080;pointer-events:none}.drag-overlay--number{background:#a78bfa59;border:2px solid #a78bfa;color:#a78bfa}.drag-overlay--operator{background:#fbbf2440;border:2px solid #fbbf24;color:#fbbf24}.number-tile--dragging,.operator-tile--dragging{opacity:.3;transform:none!important}.keyboard-hint{margin-top:2rem;padding:.55rem 1.25rem;border-radius:8px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.4rem .6rem;width:100%}.hint-item{display:flex;align-items:center;gap:.25rem;font-size:.72rem;color:#4b5563;white-space:nowrap}.hint-sep{color:#2d3748;font-size:.8rem}kbd{display:inline-flex;align-items:center;justify-content:center;padding:.15rem .45rem;border-radius:4px;background:#ffffff12;border:1px solid rgba(255,255,255,.12);color:#9ca3af;font-family:Inter,sans-serif;font-size:.7rem;font-weight:600;min-width:1.6rem}
