:root{--bg-color:#0b0f19;--bg-gradient:radial-gradient(circle at top left, #1a2035, #0b0f19);--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent-primary:#38bdf8;--accent-secondary:#818cf8;--panel-bg:#1e293b66;--panel-bg-hover:#1e293b99;--panel-border:#ffffff14;--transition-fast:.15s ease-out;--transition-normal:.3s ease}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-color);background-image:var(--bg-gradient);color:var(--text-primary);min-height:100vh;font-family:Inter,sans-serif;line-height:1.6;overflow-x:hidden}.glass-panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--panel-border);transition:all var(--transition-normal);border-radius:16px;box-shadow:0 4px 30px #0000001a}.glass-panel:hover{background:var(--panel-bg-hover);border-color:#ffffff26}.glass-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--panel-border);background:#0f172a99;border-radius:12px;padding:1.5rem}h1,h2,h3,h4,h5,h6{letter-spacing:-.025em;margin-bottom:1rem;font-weight:600}.text-gradient{background:linear-gradient(to right, var(--accent-primary), var(--accent-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn{transition:all var(--transition-fast);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-family:inherit;font-weight:500;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));color:#fff;box-shadow:0 4px 14px #38bdf84d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #38bdf866}.btn-outline{border:1px solid var(--accent-primary);color:var(--accent-primary);background:0 0}.btn-outline:hover{background:#38bdf81a}.input-group{margin-bottom:1.25rem}.input-label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.input-field{border:1px solid var(--panel-border);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast);background:#0f172a66;border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem}.input-field:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 2px #38bdf833}.app-container{grid-template-columns:280px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--panel-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0b0f19cc;padding:2rem 1.5rem}.main-content{padding:2rem;overflow-y:auto}.table-container{border:1px solid var(--panel-border);border-radius:8px;width:100%;overflow-x:auto}.glass-table{border-collapse:collapse;text-align:left;width:100%}.glass-table th{color:var(--text-secondary);border-bottom:1px solid var(--panel-border);background:#0f172acc;padding:1rem;font-weight:500}.glass-table td{border-bottom:1px solid #ffffff0d;padding:1rem}.glass-table tr:last-child td{border-bottom:none}.glass-table tbody tr:hover{background:#ffffff05}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}.front-page-container{max-width:1200px;min-height:100vh;margin:0 auto;padding:4rem 2rem}.hero-section{text-align:center;margin-bottom:6rem;padding:4rem 0}.hero-title{letter-spacing:-.05em;background:linear-gradient(90deg,#38bdf8,#818cf8,#c084fc);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:1.5rem;font-size:clamp(3rem,10vw,6rem);font-weight:800;line-height:1.1}.hero-subtitle{color:var(--text-secondary);max-width:600px;margin:0 auto 2.5rem;font-size:clamp(1.125rem,5vw,1.5rem);line-height:1.6}.hero-actions{justify-content:center;gap:1rem;display:flex}.hero-btn{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));color:#fff;cursor:pointer;border:none;border-radius:9999px;padding:1rem 2.5rem;font-size:1.125rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.hero-btn:hover{transform:translateY(-4px)scale(1.02);box-shadow:0 10px 25px #38bdf880}.hero-btn .arrow{transition:transform .3s;display:inline-block}.hero-btn:hover .arrow{transform:translate(4px)}.section-title{text-align:center;margin-bottom:.5rem;font-size:2.5rem}.section-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:3rem;font-size:1.125rem}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:6rem;display:grid}.manual-card{text-align:center;flex-direction:column;align-items:center;padding:2.5rem 2rem;transition:transform .3s,box-shadow .3s,background .3s;display:flex}.manual-card:hover{background:#1e293bb3;transform:translateY(-8px);box-shadow:0 12px 40px #0003}.card-icon{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:1.5rem;font-size:3rem;display:flex;box-shadow:inset 0 0 20px #38bdf81a}.manual-card h3{color:var(--text-primary);margin-bottom:1rem;font-size:1.5rem}.manual-card p{color:var(--text-secondary);line-height:1.6}.solver-card{cursor:pointer;text-align:center;border:1px solid var(--panel-border);background:#0f172a66;border-radius:12px;padding:2rem;transition:all .3s}.solver-card:hover{background:#38bdf81a;border-color:#38bdf866;transform:translateY(-4px)}.solver-card h3{color:var(--accent-primary);margin-bottom:.5rem}.profile-section{justify-content:center;padding:4rem 0 2rem;display:flex}.profile-card{text-align:center;background:#0f172a99;border:1px solid #38bdf833;flex-direction:column;align-items:center;gap:2rem;width:100%;max-width:900px;padding:3rem;display:flex}@media (width>=768px){.profile-card{text-align:left;flex-direction:row;justify-content:space-between}}.profile-name{letter-spacing:-.02em;margin-bottom:.5rem;font-size:2rem}.profile-detail{color:var(--text-secondary);margin-bottom:.25rem;font-size:1.125rem}.profile-detail strong{color:var(--text-primary);font-weight:500}.profile-links{flex-direction:column;gap:1rem;min-width:240px;display:flex}.profile-btn{justify-content:center;width:100%;font-size:1rem;text-decoration:none}.profile-btn .icon{margin-right:.5rem;font-size:1.25rem}
