*,:after,:before{box-sizing:border-box}.calculator-container{width:100%;max-width:405px;background:white;border-radius:1.5rem;padding:0;box-shadow:0 10px 25px rgba(0,0,0,.2);overflow:hidden;transition:all .5s ease;margin:0 auto;font-family:var(--font-family-sans);z-index:10}.mobile-container{border-radius:.6rem!important;position:static!important;left:auto!important;transform:none!important;box-sizing:border-box!important}.mobile-container,.small-mobile-container{width:90%!important;max-width:90%!important;margin-left:auto!important;margin-right:auto!important;padding:0!important}.small-mobile-container{border-radius:.5rem!important}.calculator-display{background:#f1f5f9;padding:1rem;border-radius:0;text-align:right;min-height:7rem;display:flex;flex-direction:column;justify-content:flex-end;width:100%;color:#1e293b}.mobile-display{min-height:5rem;padding:.7rem}.small-mobile-display{min-height:4.5rem;padding:.5rem}.calculation{font-size:1.125rem;color:#64748b;margin-bottom:.5rem;min-height:1.5rem;word-break:break-all;font-family:var(--font-family-mono)}.mobile-calculation{font-size:1rem;margin-bottom:.3rem}.current-value{font-size:2rem;font-weight:700;transition:all .2s ease;word-break:break-all;font-family:var(--font-family-mono)}.current-value,.mobile-current-value{color:#0f172a!important;background:transparent!important}.mobile-current-value{font-size:1.8rem;margin-top:.3rem;line-height:1.3}.current-value *,.current-value span{color:#0f172a!important;background:transparent!important}.error-message{color:#ef4444;font-size:1rem;margin-top:.5rem;animation:error-shake .6s ease-in-out}.mobile-button-row{gap:.5rem;margin-bottom:.5rem;padding:0 .6rem;display:flex;justify-content:space-between}.mobile-ver-pantalla{height:3rem!important;font-size:.9rem!important}.mobile-buttons{padding-bottom:.5rem}.mobile-container .calculator-button{height:3.5rem!important;min-height:3.5rem!important;min-width:3.5rem!important;font-size:1.4rem!important;border-radius:.75rem!important;padding:0!important}.mobile-container .calculator-button.digit{font-size:1.5rem!important}.small-mobile-container .calculator-button{height:3rem!important;min-height:3rem!important;min-width:3rem!important;font-size:1.2rem!important;border-radius:.5rem!important}.mobile-menu-button{width:3rem!important;height:3rem!important;font-size:1.5rem!important}.standard-calculator{display:flex;flex-direction:column;gap:0}.calculator-container.fullscreen{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;max-width:none!important;border-radius:0!important;z-index:1000!important;overflow-y:auto!important;background-color:#333!important;margin:0!important;transform:none!important}.calculator-container.fullscreen,.fullscreen-calculator{display:flex!important;flex-direction:column!important;padding:0!important}.fullscreen-calculator{height:100%!important;width:100%!important;overflow:hidden!important}.fullscreen-header{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:15px!important;background-color:#6966FF!important;margin-bottom:0!important;width:100%!important}.fullscreen-header h2{font-size:1.8rem!important;color:#fff!important;margin:0!important}.exit-fullscreen{padding:8px 16px!important;background-color:#333!important;color:white!important;border:none!important;border-radius:4px!important;font-weight:700!important;cursor:pointer!important;transition:background-color .3s!important}.exit-fullscreen:hover{background-color:#444!important}.fullscreen-content{flex-grow:1!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;padding:15px!important;margin:0!important;overflow-y:auto!important;width:100%!important;background-color:#333!important}.fullscreen-content .calculator-display{background-color:#f1f5f9!important;margin-bottom:20px!important}.fullscreen-content .calculator-buttons,.fullscreen-content .calculator-display{width:100%!important;max-width:800px!important}.fullscreen-content .button-grid{gap:10px!important;padding:10px!important}.fullscreen-content .calculator-button{height:4.5rem!important;font-size:1.8rem!important}.btn-calculate,.btn-clear{padding:14px 32px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;min-width:150px;text-align:center;justify-content:center;align-items:center}.btn-calculate{background:linear-gradient(135deg,#3498db,#2980b9);color:white}.btn-clear{background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:white}.btn-calculate:hover{background:linear-gradient(135deg,#2980b9,#21618c);transform:translateY(-2px);box-shadow:0 4px 12px rgba(52,152,219,.4)}.btn-clear:hover{background:linear-gradient(135deg,#7f8c8d,#65696a);transform:translateY(-2px);box-shadow:0 4px 12px rgba(149,165,166,.4)}.btn-calculate:focus{outline:none;box-shadow:0 0 0 4px rgba(52,152,219,.3)}.btn-clear:focus{outline:none;box-shadow:0 0 0 4px rgba(149,165,166,.3)}@media (max-width:768px){.btn-calculate,.btn-clear{width:100%;min-width:unset;padding:12px 20px;font-size:15px}}@media (max-width:480px){.btn-calculate,.btn-clear{padding:10px 16px;font-size:14px}}.visual-section{justify-content:center;animation:fadeIn .5s ease}.column-display,.visual-section{width:100%;margin:15px 0;display:flex}.column-display{flex-direction:column;align-items:flex-end;background-color:#f1f3f5;padding:15px;border-radius:8px;max-height:150px;overflow-y:auto;border:2px solid #74c0fc;box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.column-number{font-size:1.2rem;font-weight:700;color:#495057;margin-bottom:8px;padding:8px 15px;background-color:#e9ecef;border-radius:6px;animation:fadeIn .3s ease;border-left:4px solid #4dabf7;box-shadow:0 2px 4px rgba(0,0,0,.1);width:auto;min-width:60px;text-align:right}.column-number:last-child{margin-bottom:0}.integrated-long-division{padding:20px;background-color:#f8f9fa;border-radius:12px;box-shadow:0 3px 10px rgba(0,0,0,.1);animation:fadeIn .5s ease;width:100%;max-width:800px;margin:0 auto}.calculation-visual{width:100%;max-width:600px;margin:0 auto}.visual-container{background-color:#f8f9fa;padding:30px;border-radius:15px;box-shadow:0 5px 15px rgba(0,0,0,.1);border:1px solid #e9ecef}.operation-title{font-size:2rem;font-weight:700;text-align:center;margin-bottom:30px;color:#364fc7;text-shadow:1px 1px 2px rgba(0,0,0,.1)}.operation-diagram{display:flex;justify-content:center;margin-bottom:30px;font-family:Comic Neue,cursive;font-size:2.5rem}.addition-diagram,.subtraction-diagram{display:flex;flex-direction:column;align-items:flex-end;padding:20px;background-color:#ffffff;border-radius:12px;box-shadow:0 4px 8px rgba(0,0,0,.1);min-width:250px}.operand{margin:8px 0;font-weight:700;min-width:100px;text-align:right;padding:5px 10px;border-radius:6px}.left-operand{color:#2b8a3e;background-color:#ebfbee}.right-operand{color:#e67700;display:flex;align-items:center;background-color:#fff9db;justify-content:flex-end}.operator-sign{font-weight:700;margin-right:15px;color:#c92a2a;font-size:1.8rem}.result-line{height:4px;background-color:#495057;width:100%;margin:15px 0}.result-value{font-weight:700;color:#5f3dc4;font-size:3rem;margin-top:10px;padding:10px;background-color:#f3f0ff;border-radius:8px;min-width:100px;text-align:right}.multiply-layout{display:flex;flex-direction:column;align-items:flex-end;padding:20px;background-color:#ffffff;border-radius:12px;box-shadow:0 4px 8px rgba(0,0,0,.1);min-width:250px}.multiplicand,.multiplier{font-weight:700;margin:8px 0;min-width:100px;text-align:right;padding:5px 10px;border-radius:6px}.multiplicand{color:#2b8a3e;background-color:#ebfbee}.multiplier{color:#e67700;background-color:#fff9db;justify-content:flex-end}.division-diagram,.multiplier{display:flex;align-items:center}.division-diagram{justify-content:center;font-family:monospace;padding:20px;background-color:#ffffff;border-radius:12px;box-shadow:0 4px 8px rgba(0,0,0,.1)}.division-layout{display:flex;align-items:center;position:relative;padding:15px}.division-sign{font-size:3rem;margin:0 5px;color:#495057}.divisor{color:#2b8a3e;background-color:#ebfbee;padding:5px 15px;border-radius:8px}.dividend,.divisor{font-weight:700;font-size:2.5rem}.dividend{color:#e67700;border-top:3px solid #333;padding:15px 15px 5px;background-color:#fff9db;border-radius:0 8px 8px 8px}.division-result{position:absolute;top:-40px;right:10px;color:#5f3dc4;font-weight:700;font-size:2rem;background-color:#f3f0ff;padding:5px 15px;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.explanation{text-align:center;font-size:1.3rem;color:#495057;margin-top:30px;animation:fadeIn 1s ease;padding:15px;background-color:#e9ecef;border-radius:10px;max-width:90%;margin-left:auto;margin-right:auto;line-height:1.6}.calculator-buttons{display:flex;flex-direction:column;gap:0;width:100%}.button-row{display:flex;gap:.75rem;margin-bottom:.75rem;width:100%;padding:0 1rem}.ver-pantalla{flex:1 1;background-color:#2563eb!important;font-size:1.125rem!important;font-weight:700!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important}.menu-button,.ver-pantalla{color:white!important;height:3.5rem!important;border-radius:.75rem!important}.menu-button{width:3.5rem!important;background-color:#0f172a!important;font-size:1.8rem!important;display:flex!important;justify-content:center!important;align-items:center!important;transition:background-color .3s ease!important}.menu-button:hover{background-color:#1e293b!important}.factorization-button{background-color:#4ade80!important;color:#0f172a!important;font-weight:700!important}.factorization-button:hover{background-color:#8053FF}.square-root-button{background-color:#FF9600;color:white;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background-color .3s ease}.square-root-button:hover{background-color:#FFB040}.button-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:.75rem;padding:0 1rem 1rem;width:100%}.calculator-button{display:flex;justify-content:center;align-items:center;height:4rem;border-radius:.75rem;border:none;font-size:1.5rem;font-weight:700;cursor:pointer;transition:all .1s ease-in-out;color:#0f172a;box-shadow:0 2px 4px rgba(0,0,0,.1);width:100%;min-width:4rem;min-height:4rem;touch-action:manipulation}.calculator-button:active{transform:scale(.95);box-shadow:0 1px 2px rgba(0,0,0,.1)}.calculator-button.digit{background-color:#fef9c3;color:#0f172a;height:4rem;font-size:1.8rem;border-radius:.75rem;overflow:hidden}.calculator-button.digit:active,.calculator-button.digit:hover{background-color:#fef08a;transform:scale(.95)}.calculator-button.operation{background-color:#fb923c;color:white}.calculator-button.operation:hover{background-color:#f97316}.calculator-button.equals{background-color:#fb923c;color:white;font-weight:700}.calculator-button.equals:hover{background-color:#f97316}.calculator-button.backspace,.calculator-button.clear{background-color:#f43f5e;color:white;font-weight:700}.calculator-button.backspace:hover,.calculator-button.clear:hover{background-color:#e11d48}@keyframes error-shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.calculator-container{max-width:95%;margin:0 auto}.operation-diagram{font-size:1.8rem}.operation-title{font-size:1.5rem;margin-bottom:20px}.result-value{font-size:2.2rem}.explanation{font-size:1rem;padding:15px}.calculator-display,.visual-container{padding:15px}.button-grid{grid-gap:.5rem}}@media (max-width:480px){.calculator-container{width:100%;max-width:100%;margin:0;padding:8px;border-radius:.5rem}.button-grid{grid-gap:8px;padding:0 8px 8px}.calculator-button,.calculator-button.digit{height:3.2rem;min-height:3.2rem;width:100%;min-width:auto;font-size:1.4rem;border-radius:.5rem;padding:0}.button-row{gap:8px;margin-bottom:8px;padding:0 8px}.ver-pantalla{height:3rem!important;font-size:.9rem!important}.menu-button{width:3rem!important;height:3rem!important;min-width:3rem!important;font-size:1.3rem!important}.calculator-display{padding:8px;min-height:5rem}.current-value{font-size:1.8rem;line-height:1.3}.calculation{font-size:.9rem}}@media (max-width:375px){.calculator-container{padding:6px}.button-grid{grid-gap:6px;padding:0 6px 6px}.calculator-button,.calculator-button.digit{height:2.8rem;min-height:2.8rem;font-size:1.2rem}.button-row{gap:6px;padding:0 6px;margin-bottom:6px}.ver-pantalla{height:2.8rem!important;font-size:.8rem!important}.menu-button{width:2.8rem!important;height:2.8rem!important;min-width:2.8rem!important;font-size:1.2rem!important}.calculator-display{padding:6px;min-height:4.5rem}.current-value{font-size:1.6rem}.calculation{font-size:.8rem}}.calculator-button.backspace,.calculator-button.clear,.calculator-button.digit,.calculator-button.equals,.calculator-button.factorization-button,.calculator-button.operation,.calculator-button.square-root-button{border-radius:.75rem}