:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;font-weight:400;color-scheme:light dark;color:#f0f0f0;background:linear-gradient(135deg,#1e1e2e,#2a2a3e)}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;background:linear-gradient(135deg,#1e1e2e,#2a2a3e)}#app{max-width:1400px;margin:0 auto;padding:2rem;text-align:center}#app h1{color:#fff;font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}#app>p{color:#e0e0e0;font-size:1.1rem;margin-bottom:2rem;opacity:.9}#graph-container{width:90vw;height:65vh;max-width:1200px;max-height:800px;border:2px solid #4a4a5e;background:linear-gradient(145deg,#2f2f4a,#3a3a4e);margin-top:20px;border-radius:12px;box-shadow:0 8px 24px #0000004d}.controls{margin-bottom:20px;background:linear-gradient(145deg,#2a2a3e,#323248);padding:25px;border-radius:12px;text-align:left;border:1px solid #4a4a5e;box-shadow:0 4px 16px #0003}.input-group{margin-bottom:20px}.input-group label{display:block;margin-bottom:8px;font-weight:600;color:#fff;font-size:1rem}.input-group input{width:100%;max-width:350px;padding:12px 16px;border:2px solid #4a4a5e;border-radius:8px;background:linear-gradient(145deg,#3a3a4e,#2f2f3a);color:#fff;font-size:15px;transition:all .3s ease}.input-group input:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff33;background:linear-gradient(145deg,#3e3e52,#33333f)}.input-group input::placeholder{color:#a0a0a0}.button-group{margin-top:25px;text-align:center;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.info-panel{background:linear-gradient(145deg,#2a2a3e,#323248);padding:20px;border-radius:12px;margin-bottom:20px;text-align:left;border:1px solid #4a4a5e;box-shadow:0 4px 16px #0003}.info-panel h3{margin-top:0;color:#646cff;font-size:1.3rem;font-weight:600}.info-panel ol{margin-bottom:0;color:#e0e0e0}.info-panel li{margin-bottom:10px;line-height:1.5}.info-panel strong{color:#fff}button{border-radius:10px;border:2px solid transparent;padding:12px 24px;font-size:1rem;font-weight:600;font-family:inherit;background:linear-gradient(145deg,#646cff,#5a5cd9);color:#fff;cursor:pointer;transition:all .3s ease;margin:0 6px;box-shadow:0 4px 12px #646cff4d;position:relative;overflow:hidden}button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #646cff66;background:linear-gradient(145deg,#5a5cd9,#4f4fc7)}button:active{transform:translateY(0);box-shadow:0 2px 8px #646cff4d}button:focus,button:focus-visible{outline:none;box-shadow:0 0 0 3px #646cff80}#count-combinations-btn{background:linear-gradient(145deg,#10b981,#0ea871);box-shadow:0 4px 12px #10b9814d}#count-combinations-btn:hover{background:linear-gradient(145deg,#0ea871,#0d9368);box-shadow:0 6px 20px #10b98166}#delete-item-btn{background:linear-gradient(145deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d}#delete-item-btn:hover{background:linear-gradient(145deg,#dc2626,#b91c1c);box-shadow:0 6px 20px #ef444466}#delete-item-btn:disabled{background:linear-gradient(145deg,#6b7280,#4b5563);box-shadow:none;cursor:not-allowed;opacity:.6}#delete-item-btn:disabled:hover{transform:none;background:linear-gradient(145deg,#6b7280,#4b5563);box-shadow:none}#reset-btn{background:linear-gradient(145deg,#6b7280,#4b5563);box-shadow:0 4px 12px #6b72804d}#reset-btn:hover{background:linear-gradient(145deg,#4b5563,#374151);box-shadow:0 6px 20px #6b728066}#load-examples-btn{background:linear-gradient(145deg,#8b5cf6,#7c3aed);box-shadow:0 4px 12px #8b5cf64d}#load-examples-btn:hover{background:linear-gradient(145deg,#7c3aed,#6d28d9);box-shadow:0 6px 20px #8b5cf666}#center-btn{background:linear-gradient(145deg,#0891b2,#0e7490);box-shadow:0 4px 12px #0891b24d}#center-btn:hover{background:linear-gradient(145deg,#0e7490,#155e75);box-shadow:0 6px 20px #0891b266}kbd{background:linear-gradient(145deg,#4a4a5e,#3a3a4e);border:1px solid #6a6a7e;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:.9em;color:#fff;box-shadow:0 1px 3px #0000004d}@media (max-width: 768px){#app{padding:1rem}#app h1{font-size:2rem}.controls{padding:20px}.input-group input{max-width:100%}.button-group{flex-direction:column;align-items:center}button{width:200px;margin:6px 0}#graph-container{width:95vw;height:50vh}}@media (max-width: 480px){#app h1{font-size:1.5rem}.controls,.info-panel{padding:15px}}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#0009;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-content{background:linear-gradient(145deg,#2a2a3e,#323248);margin:10% auto;padding:0;border:2px solid #4a4a5e;border-radius:12px;width:90%;max-width:500px;box-shadow:0 10px 30px #00000080;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:20px 25px 15px;border-bottom:1px solid #4a4a5e;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;color:#646cff;font-size:1.4rem;font-weight:600}.modal-close{color:#a0a0a0;font-size:28px;font-weight:700;cursor:pointer;transition:color .3s ease;line-height:1}.modal-close:hover{color:#fff}.modal-body{padding:20px 25px;color:#e0e0e0;line-height:1.6;max-height:400px;overflow-y:auto}.modal-body p{margin:0;white-space:pre-line}.modal-footer{padding:15px 25px 20px;text-align:right;border-top:1px solid #4a4a5e}.modal-btn{background:linear-gradient(145deg,#646cff,#5a5cd9);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;box-shadow:0 3px 10px #646cff4d}.modal-btn:hover{background:linear-gradient(145deg,#5a5cd9,#4f4fc7);transform:translateY(-2px);box-shadow:0 5px 15px #646cff66}@media (max-width: 600px){.modal-content{width:95%;margin:20% auto}.modal-header,.modal-body,.modal-footer{padding-left:15px;padding-right:15px}}
