.tic-tac-toe-board{display:grid;grid-template-columns:repeat(3,100px);grid-template-rows:repeat(3,100px);width:300px;height:300px;position:relative;box-sizing:content-box;background-color:transparent}.tic-tac-toe-cell{width:100px;height:100px;box-sizing:border-box;display:flex;justify-content:center;align-items:center;background-color:transparent}.tic-tac-toe-cell:nth-child(3n-1),.tic-tac-toe-cell:nth-child(3n-2){border-right:3px solid #666}.tic-tac-toe-cell:nth-child(-n+6){border-bottom:3px solid #666}.tic-tac-toe-cell:nth-child(3n){border-right:none}.tic-tac-toe-cell:nth-child(n+7){border-bottom:none}.digit-animation-container{width:150px;height:180px;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow:hidden;cursor:pointer;border:1px solid #ddd;border-radius:8px;background-color:#f9f9f9;box-shadow:0 2px 5px rgba(0,0,0,.1)}.digit-display{font-size:80px;font-weight:700;color:#333;transition:filter .6s ease-out,opacity .6s ease-out,transform .6s ease-out;filter:blur(8px) grayscale(80%);opacity:.4;transform:scale(.9);user-select:none;padding-bottom:10px}.digit-display.hovered{filter:blur(0) grayscale(0);opacity:1;transform:scale(1)}.classification-text{font-size:14px;color:#555;opacity:0;transform:translateY(10px);transition:opacity .4s ease-out .2s,transform .4s ease-out .2s}.classification-text.visible{opacity:1;transform:translateY(0)}.money-trees-container{width:350px;height:250px;background-color:#e0f2f7;border-radius:12px;box-shadow:0 4px 10px rgba(0,0,0,.15);flex-direction:column;align-items:center;padding:15px;position:relative;overflow:hidden;cursor:pointer}.dashboard-mockup,.money-trees-container{display:flex;justify-content:space-around}.dashboard-mockup{width:100%;align-items:flex-end;flex-grow:1}.chart-section{text-align:center;padding:10px;background-color:#fff;border-radius:8px;box-shadow:0 2px 5px rgba(0,0,0,.08);margin:5px}.chart-section h4{margin-top:0;margin-bottom:5px;color:#333;font-size:.9em}.line-graph-section{flex:2;max-width:60%}.line-graph{width:100%;height:120px;overflow:visible}.line-path{fill:none;stroke:#4CAF50;stroke-width:3;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:500;stroke-dashoffset:500;transition:stroke-dashoffset 1.5s ease-out}.line-path.animate{stroke-dashoffset:0}.pie-chart-section{flex:1;max-width:35%}.pie-chart{width:100%;height:80px}.pie-slice{transition:transform .5s ease-out,opacity .5s ease-out;transform-origin:center center;transform:scale(.8);opacity:.7}.pie-slice.animate{transform:scale(1);opacity:1}.emoji-rain{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.money-emoji{position:absolute;font-size:20px;opacity:0;transform:translateY(-50px);animation:fallAndFade 20s ease-out forwards;animation-iteration-count:1}@keyframes fallAndFade{0%{opacity:0;transform:translateY(-50px) rotate(0deg)}3%{opacity:1}92%{opacity:1;transform:translateY(calc(300vh + 100px)) rotate(1turn)}to{opacity:0;transform:translateY(calc(300vh + 100px)) rotate(1turn)}}.nfa-dfa-container{display:flex;justify-content:space-around;align-items:flex-start;width:450px;height:250px;background-color:#f0f0f0;border-radius:12px;box-shadow:0 4px 10px rgba(0,0,0,.15);padding:15px;overflow:hidden;cursor:pointer}.dfa-side,.nfa-side{flex:1;text-align:center;padding:10px;border-radius:8px;background-color:#fff;box-shadow:0 2px 5px rgba(0,0,0,.08);margin:0 5px}.dfa-side h3,.nfa-side h3{margin-top:0;margin-bottom:10px;color:#333;font-size:16px;font-weight:600}.dfa-diagram,.nfa-diagram{width:100%;height:150px}.dfa-state,.nfa-state{fill:#add8e6;stroke:#333;stroke-width:2}.dfa-accept-state,.nfa-accept-state{fill:#add8e6}.dfa-accept-inner,.nfa-accept-inner{fill:none;stroke:#333;stroke-width:2}.dfa-label,.dfa-transition-label,.nfa-label,.nfa-transition-label{font-family:monospace;font-size:14px;fill:#333;user-select:none}.dead-state-label{font-size:10px;fill:#666}.dfa-start-arrow,.dfa-transition,.nfa-start-arrow,.nfa-transition{fill:none;stroke:#333;stroke-width:2}.dfa-side .dfa-accept-inner,.dfa-side .dfa-label,.dfa-side .dfa-start-arrow,.dfa-side .dfa-state,.dfa-side .dfa-transition,.dfa-side .dfa-transition-label{opacity:0;transform:scale(.8) translateY(10px);transition:opacity .4s ease-out,transform .4s ease-out}.dfa-diagram.animate .label-A,.dfa-diagram.animate .state-A,.dfa-diagram.animate .transition-start-A{opacity:1;transform:scale(1) translateY(0);transition-delay:.1s}.dfa-diagram.animate .label-A-B,.dfa-diagram.animate .transition-A-B{opacity:1;transition-delay:.4s}.dfa-diagram.animate .transition-A-B{stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset .8s ease-out .4s,opacity .3s ease-out .4s}.dfa-diagram.animate .label-A-C,.dfa-diagram.animate .transition-A-C{opacity:1;transition-delay:.6s}.dfa-diagram.animate .transition-A-C{stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset .8s ease-out .6s,opacity .3s ease-out .6s}.dfa-diagram.animate .inner-B,.dfa-diagram.animate .label-B,.dfa-diagram.animate .state-B{opacity:1;transform:scale(1) translateY(0);transition-delay:.8s}.dfa-diagram.animate .label-E,.dfa-diagram.animate .state-E{opacity:1;transform:scale(1) translateY(0);transition-delay:1s}.dfa-diagram.animate .inner-C,.dfa-diagram.animate .label-C,.dfa-diagram.animate .state-C{opacity:1;transform:scale(1) translateY(0);transition-delay:1.2s}.dfa-diagram.animate .label-B-B,.dfa-diagram.animate .transition-B-B{opacity:1;transition-delay:1.4s}.dfa-diagram.animate .transition-B-B{stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset .8s ease-out 1.4s,opacity .3s ease-out 1.4s}.dfa-diagram.animate .label-B-E,.dfa-diagram.animate .transition-B-E{opacity:1;transition-delay:1.6s}.dfa-diagram.animate .transition-B-E{stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset .8s ease-out 1.6s,opacity .3s ease-out 1.6s}.dfa-diagram.animate .label-E-C,.dfa-diagram.animate .transition-E-C{opacity:1;transition-delay:1.8s}.dfa-diagram.animate .transition-E-C{stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset .8s ease-out 1.8s,opacity .3s ease-out 1.8s}.dfa-diagram.animate .label-E-E,.dfa-diagram.animate .transition-E-E{opacity:1;transition-delay:2s}.dfa-diagram.animate .transition-E-E{stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset .8s ease-out 2s,opacity .3s ease-out 2s}.dfa-diagram.animate .label-C-C,.dfa-diagram.animate .transition-C-C{opacity:1;transition-delay:2.2s}.dfa-diagram.animate .transition-C-C{stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset .8s ease-out 2.2s,opacity .3s ease-out 2.2s}