:root{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0a0a0a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(135deg,#0a0a0a,#1a1a1a)}#root{width:100%;min-height:100vh}a{font-weight:500;color:#fff;text-decoration:inherit;transition:color .3s ease}a:hover{color:#ccc}h1,h2,h3,h4,h5,h6{font-weight:300;line-height:1.2}input,button,textarea,select{font-family:inherit}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ffffff1a}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff80}.app{min-height:100vh;background:linear-gradient(135deg,#0a0a0a,#1a1a1a);color:#fff;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.container{max-width:1200px;margin:0 auto;padding:2rem}.header{text-align:center;margin-bottom:3rem;padding:2rem 0}.brain-icon{margin-bottom:1rem;color:#007acc;display:flex;justify-content:center;opacity:.8;transition:all .3s ease}.brain-icon:hover{opacity:1;transform:scale(1.05)}.header h1{font-size:3.5rem;font-weight:300;margin:0;background:linear-gradient(45deg,#fff,#ccc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.subtitle{font-size:1.2rem;color:#888;margin-top:.5rem;font-weight:300}.main-content{display:flex;flex-direction:column;gap:3rem;margin-bottom:3rem}@media(max-width:768px){.main-content{gap:2rem}}.form-section{background:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.optimization-form{display:flex;flex-direction:column;gap:2rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.optimization-type-selector{display:flex;gap:2rem;margin-top:.5rem}.radio-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.75rem 1rem;border:1px solid #333333;border-radius:8px;background:#1a1a1a;transition:all .2s ease}.radio-option:hover{border-color:#555;background:#222}.radio-option input[type=radio]{width:18px;height:18px;accent-color:#007acc;cursor:pointer}.radio-label{color:#ccc;font-size:.95rem;font-weight:400;cursor:pointer}.radio-option:has(input:checked){border-color:#007acc;background:#007acc1a}.radio-option:has(input:checked) .radio-label{color:#fff}.input-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.label-text{font-size:1.1rem;font-weight:500;color:#fff}.label-desc{font-size:.9rem;color:#888;font-style:italic}.math-input{background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:1rem;font-size:1.1rem;font-family:SF Mono,monospace;color:#fff;transition:all .3s ease}.math-input:focus{outline:none;border-color:#fff;box-shadow:0 0 0 2px #ffffff1a;background:#00000080}.math-input::placeholder{color:#666;font-style:italic}.coefficients-row{display:flex;gap:1rem;flex-wrap:wrap;align-items:end}.coefficient-group{display:flex;flex-direction:column;gap:.3rem;min-width:80px}.variable-label{font-size:.9rem;color:#ccc;font-weight:500;text-align:center;font-family:SF Mono,monospace}.coefficient-input{width:80px;text-align:center;font-weight:600}.number-input{width:100px}.constraints-section{margin-bottom:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid #333333}.result-status-enhanced{padding:1.5rem;border-radius:12px;margin-bottom:2rem}.result-status-enhanced.success{background:linear-gradient(135deg,#28a7451a,#28a7450d);border:2px solid rgba(40,167,69,.3)}.result-status-enhanced.error{background:linear-gradient(135deg,#dc35451a,#dc35450d);border:2px solid rgba(220,53,69,.3)}.result-status-enhanced.warning{background:linear-gradient(135deg,#ffc1071a,#ffc1070d);border:2px solid rgba(255,193,7,.3)}.status-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.status-icon{font-size:2rem;flex-shrink:0}.status-info{flex:1}.status-title{font-size:1.3rem;font-weight:700;margin:0 0 .5rem;color:#fff}.status-description{font-size:1rem;line-height:1.5;color:#ccc;margin:0}.execution-time{font-size:.9rem;color:#888;text-align:right}.solution-summary{background:linear-gradient(135deg,#007acc0d,#007acc05);border:1px solid rgba(0,122,204,.2);border-radius:12px;padding:2rem;margin-bottom:2rem}.solution-summary h4{font-size:1.4rem;font-weight:700;color:#fff;margin:0 0 1.5rem;text-align:center}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.summary-card{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem}.summary-card h5{font-size:1.1rem;font-weight:600;color:#007acc;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.inline-icon{display:inline-block;vertical-align:middle;margin-right:.5rem}.btn-icon{flex-shrink:0}.brain-icon svg{color:#007acc;filter:drop-shadow(0 2px 4px rgba(0,122,204,.3))}.summary-card p{margin:.5rem 0;color:#ccc;line-height:1.4}.summary-card strong{color:#fff}.optimal-value-highlight{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;padding:.25rem .75rem;border-radius:6px;font-weight:700;font-size:1.1rem}.constraint-summary{font-family:SF Mono,monospace;font-size:.9rem;background:#0003;padding:.25rem .5rem;border-radius:4px;margin:.25rem 0}@media(max-width:768px){.summary-grid{grid-template-columns:1fr}.status-header{flex-direction:column;text-align:center}.execution-time{text-align:center}}.section-title{display:flex;align-items:center;gap:.75rem}.constraints-count{background:#333;color:#ccc;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.add-constraint-btn{background:linear-gradient(135deg,#007acc,#005a9e);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;box-shadow:0 2px 4px #007acc33}.add-constraint-btn:hover{background:linear-gradient(135deg,#005a9e,#004080);transform:translateY(-1px);box-shadow:0 4px 8px #007acc4d}.btn-icon{font-size:1.1rem;font-weight:700}.constraints-list{display:flex;flex-direction:column;gap:1rem}.constraint-card{background:linear-gradient(135deg,#1a1a1a,#1f1f1f);border:1px solid #333333;border-radius:12px;overflow:hidden;transition:all .2s ease;box-shadow:0 2px 8px #0000004d}.constraint-card:hover{border-color:#555;box-shadow:0 4px 12px #0006}.constraint-card.constraint-invalid{border-color:#dc3545;box-shadow:0 2px 8px #dc354533}.constraint-card.constraint-empty{border-color:#ffc107;box-shadow:0 2px 8px #ffc10733}.constraint-header{background:#222;padding:1rem 1.5rem;display:flex;align-items:center;gap:1rem;border-bottom:1px solid #333333}.constraint-number{background:linear-gradient(135deg,#007acc,#005a9e);color:#fff;padding:.5rem;border-radius:8px;min-width:50px;text-align:center;font-weight:700;font-size:.9rem;box-shadow:0 2px 4px #007acc33;display:flex;align-items:center;justify-content:center;gap:.25rem}.validation-indicator{color:#ffc107;margin-left:.25rem}.constraint-label{font-weight:700}.constraint-preview-header{flex:1;font-family:SF Mono,monospace;font-size:1rem;color:#fff;font-weight:500;background:#0f0f0f;padding:.75rem 1rem;border-radius:6px;border:1px solid #444444;text-align:center}.remove-constraint-btn{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;border:none;width:36px;height:36px;border-radius:8px;cursor:pointer;font-size:1.2rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 4px #dc354533}.remove-constraint-btn:hover{background:linear-gradient(135deg,#c82333,#a71e2a);transform:translateY(-1px);box-shadow:0 4px 8px #dc35454d}.constraint-inputs{padding:1.5rem;display:grid;grid-template-columns:1fr auto auto;gap:2rem;align-items:start}.coefficients-section{display:flex;flex-direction:column;gap:.75rem}.coefficients-label,.operator-label,.value-label{font-size:.85rem;font-weight:600;color:#ccc;text-transform:uppercase;letter-spacing:.5px}.coefficients-grid{display:flex;flex-wrap:wrap;gap:.75rem}.coefficient-input-group{display:flex;flex-direction:column;align-items:center;gap:.25rem}.variable-label-small{font-size:.8rem;font-weight:600;color:#007acc;text-align:center}.coefficient-input-small{width:70px!important;text-align:center;font-size:.9rem}.operator-section,.value-section{display:flex;flex-direction:column;gap:.75rem;align-items:center}.operator-select-improved{min-width:160px;font-size:.9rem}.value-input-improved{width:100px;text-align:center;font-size:.95rem;font-weight:600}@media(max-width:768px){.constraint-inputs{grid-template-columns:1fr;gap:1.5rem}.coefficients-grid{justify-content:center}.constraint-header{flex-direction:column;gap:.75rem;text-align:center}.constraint-preview-header{font-size:.9rem}}.button-group{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap}.solve-btn{background:linear-gradient(45deg,#333,#555);border:1px solid rgba(255,255,255,.3);border-radius:12px;color:#fff;padding:1.2rem 2rem;font-size:1.1rem;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:inherit;flex:1;min-width:200px}.solve-btn:hover:not(:disabled){background:linear-gradient(45deg,#444,#666);border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 8px 25px #0000004d}.solve-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.test-btn{background:linear-gradient(45deg,#1a1a1a,#2a2a2a);border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#ccc;padding:1.2rem 2rem;font-size:1rem;font-weight:400;cursor:pointer;transition:all .3s ease;font-family:inherit;min-width:200px}.test-btn:hover:not(:disabled){background:linear-gradient(45deg,#2a2a2a,#3a3a3a);border-color:#fff6;color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px #0003}.test-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.result-section{background:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.result-section h3{margin-top:0;margin-bottom:1.5rem;font-size:1.5rem;font-weight:300;color:#fff}.result-card{display:flex;flex-direction:column;gap:1rem}.result-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#0003;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.result-label{font-weight:500;color:#ccc}.result-value{font-family:SF Mono,monospace;font-weight:600;color:#fff}.result-message{margin-top:1rem;padding:1rem;background:#00ff001a;border:1px solid rgba(0,255,0,.2);border-radius:8px;color:#cfc;font-size:.9rem;text-align:center}.preview-section{margin-top:1.5rem;padding:1.5rem;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.preview-section h4{margin:0 0 1rem;font-size:1.1rem;color:#fff;font-weight:500}.preview-item{margin-bottom:1rem;font-family:SF Mono,monospace}.preview-item strong{color:#ccc;display:block;margin-bottom:.5rem}.preview-item ul{margin:.5rem 0 0 1rem;padding:0}.preview-item li{color:#fff;font-weight:500;margin-bottom:.3rem}.info-section{margin-top:3rem}.info-card{background:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.info-card h4{margin-top:0;margin-bottom:1rem;font-size:1.3rem;font-weight:400;color:#fff}.info-card ul{list-style:none;padding:0;margin:0}.info-card li{padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1);color:#ccc}.info-card li:last-child{border-bottom:none}.info-card strong{color:#fff;font-weight:500}.result-status{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem;background:#0000004d;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.status-indicator{display:flex;flex-direction:column;gap:.3rem}.status-code{font-family:SF Mono,monospace;font-weight:600;font-size:.9rem;color:#888}.status-message{font-weight:500;font-size:1rem}.status-indicator[data-status="5"] .status-message{color:#4ade80}.status-indicator[data-status="3"] .status-message,.status-indicator[data-status="4"] .status-message{color:#f87171}.status-indicator[data-status="6"] .status-message{color:#fbbf24}.status-indicator[data-status="0"] .status-message{color:#f87171}.execution-time{font-family:SF Mono,monospace;font-size:.9rem;color:#888;font-weight:500}.optimal-value{font-size:1.3rem;color:#4ade80;font-weight:700}.variables-section,.dual-section{margin:1.5rem 0;padding:1.5rem;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.variables-section h4,.dual-section h4{margin:0 0 1rem;font-size:1.1rem;color:#fff;font-weight:500}.variables-grid,.dual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.variable-item,.dual-item{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#0003;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.variable-name,.constraint-name{font-family:SF Mono,monospace;font-weight:600;color:#ccc;font-size:.9rem;margin-bottom:.5rem}.variable-value,.dual-value{font-family:SF Mono,monospace;font-weight:700;color:#fff;font-size:1.1rem}.problem-summary{margin:1.5rem 0;padding:1.5rem;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.problem-summary h4{margin:0 0 1rem;font-size:1.1rem;color:#fff;font-weight:500}.summary-item{margin-bottom:1rem;font-family:SF Mono,monospace}.summary-item strong{color:#ccc;display:block;margin-bottom:.5rem;font-weight:500}.objective-text{color:#fff;font-weight:600;display:block;margin-left:1rem}.constraints-list{margin:.5rem 0 0 1rem;padding:0;list-style:none}.constraint-text{color:#fff;font-weight:500;margin-bottom:.3rem;border-left:2px solid rgba(255,255,255,.2);padding:.3rem 0 .3rem .8rem}.api-message{margin-top:1.5rem;padding:1rem;background:#00ff001a;border:1px solid rgba(0,255,0,.2);border-radius:8px;color:#cfc;font-size:.9rem;text-align:center;font-family:SF Mono,monospace}.result-card[data-error=true] .api-message{background:#ff00001a;border:1px solid rgba(255,0,0,.2);color:#fcc}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.result-section{animation:fadeIn .5s ease-out}@media(max-width:768px){.container{padding:1rem}.header h1{font-size:2.5rem}.form-section,.result-section,.info-card{padding:1.5rem}.coefficients-row{justify-content:center;gap:.8rem}.coefficient-group{min-width:70px}.coefficient-input{width:70px}.operator-group{flex-direction:column;gap:.8rem}.constraint-row{padding:1rem}.remove-btn{top:.5rem;right:.5rem}.preview-section{padding:1rem}.result-status{flex-direction:column;gap:1rem;text-align:center}.variables-grid,.dual-grid{grid-template-columns:1fr;gap:.8rem}.variables-section,.dual-section,.problem-summary{padding:1rem}.summary-item strong{font-size:.9rem}.objective-text{margin-left:0;font-size:.9rem}.constraints-list{margin-left:0}.constraint-text{font-size:.9rem;padding-left:.5rem}.button-group{flex-direction:column;gap:.8rem}.solve-btn,.test-btn{min-width:auto;width:100%}}.augmented-model{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #2a4a6b;border-radius:12px;padding:1.5rem;margin:1.5rem 0;box-shadow:0 8px 32px #0000004d}.augmented-model h4{color:#64b5f6;font-size:1.3rem;margin-bottom:1.2rem;font-weight:500;border-bottom:2px solid #2a4a6b;padding-bottom:.5rem}.augmented-content{display:flex;flex-direction:column;gap:1.2rem}.constraint-comparison{background:#2a4a6b33;border-radius:8px;padding:1rem;margin:.5rem 0;border-left:3px solid #64b5f6}.original-constraint{margin-bottom:.8rem;color:#ccc}.original-constraint strong{color:#90caf9;font-weight:500}.augmented-constraint{margin-bottom:.8rem;color:#fff;font-weight:500}.augmented-constraint strong{color:#4fc3f7;font-weight:600}.added-variable{background:#4caf501a;border:1px solid #4caf50;border-radius:6px;padding:.6rem;color:#a5d6a7;font-size:.9rem}.added-variable strong{color:#81c784;font-weight:500}.variables-text{color:#4fc3f7;font-weight:500;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.count-text{color:#ffb74d;font-weight:500;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.augmented-objective{color:#4fc3f7!important;font-weight:600!important;background:#4fc3f71a;padding:.5rem;border-radius:6px;border:1px solid #4fc3f7;display:inline-block;margin-top:.3rem}@media(max-width:768px){.augmented-model{padding:1rem;margin:1rem 0}.augmented-model h4{font-size:1.1rem}.constraint-comparison{padding:.8rem}.original-constraint,.augmented-constraint{font-size:.9rem}.added-variable{padding:.5rem;font-size:.8rem}}.iterations-section{margin:1.5rem 0;padding:1.5rem;background:linear-gradient(135deg,#0f1419,#1a1f2e);border:1px solid rgba(100,181,246,.3);border-radius:12px;box-shadow:0 8px 32px #0000004d}.iterations-section h4{margin:0 0 1rem;font-size:1.2rem;color:#64b5f6;font-weight:500;border-bottom:2px solid rgba(100,181,246,.3);padding-bottom:.5rem}.iterations-description{color:#ccc;font-size:.95rem;margin-bottom:1.2rem;font-style:italic}.iterations-table-container{overflow-x:auto;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#0000004d}.iterations-table{width:100%;border-collapse:collapse;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.iterations-table th{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;font-weight:600;padding:1rem;text-align:center;border-bottom:2px solid rgba(100,181,246,.4);font-size:1rem}.iterations-table td{padding:.8rem 1rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;font-weight:500}.iterations-table tbody tr:nth-child(2n){background:#ffffff05}.iterations-table tbody tr:hover{background:#64b5f61a;transition:background-color .3s ease}.z-value{font-family:SF Mono,monospace;font-weight:600;font-size:1.1rem;color:#4fc3f7}.optimal-row{background:linear-gradient(135deg,#4caf5033,#81c78433)!important;border-top:2px solid #4caf50}.optimal-row:hover{background:linear-gradient(135deg,#4caf504d,#81c7844d)!important}.optimal-row td{color:#fff;font-weight:600}.z-value.optimal{color:#4ade80;font-size:1.2rem;text-shadow:0 0 10px rgba(74,222,128,.3)}@media(max-width:768px){.iterations-section{padding:1rem;margin:1rem 0}.iterations-section h4{font-size:1.1rem}.iterations-description{font-size:.9rem}.iterations-table th,.iterations-table td{padding:.6rem .8rem;font-size:.9rem}.z-value{font-size:1rem}.z-value.optimal{font-size:1.1rem}}._pop-up_1937u_1{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#1a1a1a;border:2px solid #333;border-radius:10px;padding:20px;box-shadow:0 4px 20px #0009;z-index:1000;max-width:500px;width:90%;text-align:center}._pop-up_1937u_1 h1{color:#fff;margin-bottom:15px;font-size:24px}._pop-up_1937u_1 p{margin:10px 0;line-height:1.5;color:#ccc}._pop-up_1937u_1 a{color:#4a9eff;text-decoration:none;font-weight:700}._pop-up_1937u_1 a:hover{text-decoration:underline;color:#66b3ff}._pop-up_1937u_1 button{background:#4a9eff;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:16px;margin-top:15px;transition:background-color .3s}._pop-up_1937u_1 button:hover{background:#66b3ff}
