body{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box;image-rendering:pixelated}body{font-family:"Press Start 2P",monospace;background-color:var(--nes-black);color:var(--nes-white);line-height:1.5;height:100vh;overflow:hidden;position:relative;background-image:linear-gradient(var(--nes-cricket-green) 10%,transparent 0%),linear-gradient(90deg,var(--nes-cricket-green) 10%,transparent 0%);background-size:8px 8px}body:after{content:"";display:block;position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(#12101000 50%,#00000040 50%);background-size:100% 4px;z-index:1000;pointer-events:none;opacity:.5}:root{--nes-black: #000000;--nes-dark-gray: #212121;--nes-medium-gray: #3e3e3e;--nes-light-gray: #a8a8a8;--nes-white: #f8f8f8;--nes-red: #d82800;--nes-orange: #fc9838;--nes-yellow: #f8d800;--nes-green: #00b800;--nes-blue: #0058f8;--nes-purple: #6644fc;--nes-cricket-green: #008000}.container{max-width:800px;width:100%;margin:0 auto;padding:1rem;height:100vh;display:flex;flex-direction:column;background-color:var(--nes-dark-gray);border:4px solid var(--nes-white);image-rendering:pixelated;position:relative;box-shadow:0 0 0 4px var(--nes-black);overflow:hidden}@media (min-width: 769px){.container{width:60%;max-width:750px}}.app-header{display:flex;justify-content:center;align-items:center;padding:.5rem;height:80px;margin-bottom:10px;z-index:10;border-bottom:4px solid var(--nes-white);background-color:var(--nes-blue);gap:12px}.ipl-logo{width:40px;height:40px;image-rendering:pixelated;margin-bottom:.8rem;margin-right:-.5rem;filter:drop-shadow(2px 2px black)}.app-title{font-size:1.5rem;color:var(--nes-white);display:flex;align-items:center;text-shadow:3px 3px 0 var(--nes-black);letter-spacing:2px;animation:blink 1s infinite alternate}@keyframes blink{0%{opacity:1}90%{opacity:1}to{opacity:.8}}main{display:flex;flex-direction:column;flex:1;gap:15px;overflow:hidden}.questions-scroller,.input-container,.answer-container{width:100%;border-radius:0;overflow:hidden;border:4px solid var(--nes-white);position:relative}.questions-scroller{flex:1}.input-container{flex:.8}.answer-container{flex:1.2;padding-bottom:.1rem;position:relative}.input-container,.answer-container{background-color:var(--nes-black);padding:1rem;display:flex;flex-direction:column;position:relative}.answer-content{flex:1;background-color:var(--nes-black);padding:1rem;overflow-y:auto;font-size:.75rem;line-height:1.8;margin-top:.5rem;position:relative;border:2px solid var(--nes-white);white-space:pre-wrap;color:var(--nes-light-gray);font-family:"Press Start 2P",monospace;text-shadow:1px 1px 0px var(--nes-black);image-rendering:pixelated;animation:textReveal .5s steps(10) forwards}@keyframes textReveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.answer-label{font-size:.75rem;margin-bottom:.5rem;color:var(--nes-yellow);letter-spacing:1px;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px}.tab-buttons{display:flex;margin-bottom:.5rem;gap:.25rem;position:relative;width:100%}.tab-button{background-color:var(--nes-black);border:2px solid var(--nes-white);padding:.5rem .75rem;font-size:.65rem;color:var(--nes-white);font-family:"Press Start 2P",monospace}.tab-button:hover{border-color:var(--nes-yellow);color:var(--nes-yellow)}.tab-button.active{background-color:var(--nes-blue);color:var(--nes-white);border-color:var(--nes-yellow)}.sql-toggle{position:absolute;top:1rem;right:1rem;background-color:#4a5568;color:#fff;font-size:.75rem;font-weight:600;padding:3px 8px;border-radius:4px;transition:all .2s ease;-webkit-user-select:none;user-select:none;text-transform:uppercase;letter-spacing:.5px;z-index:5}.sql-toggle:hover{background-color:#2d3748}.sql-toggle.active{background-color:#e53e3e}.questions-scroller{display:flex;flex-direction:column;align-items:center;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--nes-white) var(--nes-black);background-color:var(--nes-medium-gray);padding:10px 15px;border-top:none;border-left:none;border-right:none}.scroller-item{padding:8px 10px;background-color:var(--nes-black);margin-bottom:10px;margin-left:5px;margin-right:5px;text-align:left;font-size:.65rem;color:var(--nes-white);max-height:40px;min-height:36px;line-height:1.2;border:2px solid var(--nes-white);image-rendering:pixelated;width:calc(100% - 10px)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;justify-content:flex-start;position:relative}.scroller-item:hover{color:var(--nes-yellow);border-color:var(--nes-yellow)}.scroller-item:active{background-color:var(--nes-blue);color:var(--nes-white)}.textarea-wrapper{position:relative;flex:1;display:flex;flex-direction:column;height:90%;margin-bottom:-15px}.input-textarea{width:100%;flex:1;padding:.75rem;border:2px solid var(--nes-white);font-size:.75rem;resize:none;font-family:"Press Start 2P",monospace;background-color:var(--nes-black);color:var(--nes-green);line-height:1.6;overflow-y:auto}.input-textarea:focus{outline:none;border-color:var(--nes-yellow);color:var(--nes-yellow)}.input-textarea::placeholder{color:var(--nes-light-gray);opacity:.8}.crickit-btn{align-self:center;width:150px;padding:8px 0;margin-top:10px;margin-bottom:10px;font-family:"Press Start 2P",monospace;font-size:.8rem;background-color:var(--nes-red)!important;color:var(--nes-white)!important;text-transform:uppercase;height:auto;min-height:30px}.crickit-btn:hover{transform:translateY(-2px)}.crickit-btn:active{transform:translateY(2px)}.crickit-btn:disabled{opacity:.7;cursor:not-allowed}@keyframes buttonPulse{0%{opacity:1}50%{opacity:.9}to{opacity:1}}.crickit-btn{animation:buttonPulse 2s infinite}.nes-btn:disabled{animation:buttonBlink 1s steps(2) infinite}@keyframes buttonBlink{0%{opacity:1}to{opacity:.7}}.answer-container{position:relative}.answer-text{font-size:.7rem;white-space:pre-line;line-height:1.6;color:var(--nes-yellow);font-family:"Press Start 2P",monospace;flex:1;overflow-y:auto;padding:1rem;border:2px solid var(--nes-white);background-color:var(--nes-black);margin-bottom:1rem;image-rendering:pixelated}.empty-answer{display:flex;align-items:center;justify-content:center;height:100%;color:#aaa;font-size:.95rem;font-style:italic;text-align:center;padding:2rem}.sql-query{font-family:"Press Start 2P",monospace;font-size:.65rem;white-space:pre-wrap;overflow-x:auto;padding:.75rem;background-color:var(--nes-black);border:2px solid var(--nes-white);margin-top:10px;color:var(--nes-blue);line-height:1.5;image-rendering:pixelated}.sql-output-table{overflow-x:auto;margin-top:15px;margin-bottom:15px;padding:0;image-rendering:pixelated;position:relative}.sql-output-table table{width:100%;border-collapse:collapse;font-size:.65rem;font-family:"Press Start 2P",monospace;border:2px solid var(--nes-white);overflow:hidden;background-color:var(--nes-black)}.sql-output-table thead{background-color:var(--nes-blue);color:var(--nes-white)}.sql-output-table th{padding:8px;text-align:center;text-transform:uppercase;white-space:nowrap;border:2px solid var(--nes-white)}.sql-output-table tbody tr:nth-child(odd){background-color:var(--nes-medium-gray)}.sql-output-table tbody tr:hover{background-color:var(--nes-dark-gray);color:var(--nes-yellow)}.sql-output-table td{padding:8px;border:2px solid var(--nes-white);white-space:nowrap;text-align:center;color:var(--nes-yellow)}.optimized-table{width:100%;table-layout:fixed;border-collapse:collapse}.truncate-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.questions-scroller::-webkit-scrollbar,.answer-text::-webkit-scrollbar,.input-textarea::-webkit-scrollbar{width:5px}.questions-scroller::-webkit-scrollbar-track,.answer-text::-webkit-scrollbar-track,.input-textarea::-webkit-scrollbar-track{background:transparent}.questions-scroller::-webkit-scrollbar-thumb,.answer-text::-webkit-scrollbar-thumb,.input-textarea::-webkit-scrollbar-thumb{background-color:#0003;border-radius:10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite}.feedback-container{display:flex;align-items:center;position:absolute;right:0;top:50%;transform:translateY(-50%)}.feedback-icon{width:30px;height:30px;display:flex;justify-content:center;align-items:center;background-color:var(--nes-black);border:2px solid var(--nes-white);padding:4px;image-rendering:pixelated;box-shadow:2px 2px 0 0 var(--nes-black)}.feedback-icon:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 0 var(--nes-black)}.feedback-icon:active{transform:translate(2px,2px);box-shadow:1px 1px 0 0 var(--nes-black)}.thumbs-up{color:var(--nes-green)}.thumbs-down{color:var(--nes-red)}.feedback-icon.selected{background-color:var(--nes-blue);border:2px solid var(--nes-yellow)}.thumbs-up.selected,.thumbs-down.selected{color:var(--nes-yellow)}@media (max-width: 768px){.container{padding:.5rem;border-width:2px}.app-header{height:40px;margin-bottom:8px;padding:.25rem;border-bottom-width:2px}.app-title{font-size:1.2rem}.ipl-logo{width:30px;height:30px;margin-bottom:.4rem}main{gap:8px}.questions-scroller,.input-container,.answer-container,.sql-query,.input-textarea,.answer-text{border-width:2px}.scroller-item{font-size:.6rem;padding:4px 8px;margin-bottom:5px;max-height:28px;min-height:28px;border-width:1px}.input-textarea{font-size:.65rem;padding:.5rem;line-height:1.4}.answer-container{padding:.5rem .5rem .1rem}.answer-text{font-size:.6rem;padding:.5rem;line-height:1.4;margin-bottom:.5rem;color:var(--nes-white)}.tab-buttons{margin-bottom:.25rem;gap:.15rem}.tab-button{padding:.25rem .5rem;font-size:.6rem;border-width:1px}.sql-output-table{margin-top:8px;margin-bottom:8px;overflow-x:auto;-webkit-overflow-scrolling:touch}.sql-output-table:after{content:"";position:absolute;top:0;right:0;bottom:0;width:10px;background:linear-gradient(to right,transparent,var(--nes-blue));opacity:.3;pointer-events:none}.sql-output-table table{font-size:.6rem;border-width:1px}.sql-output-table th,.sql-output-table td{padding:4px;border-width:1px}.sql-query{font-size:.6rem;padding:.5rem;line-height:1.3;border-width:1px;color:var(--nes-light-gray)}.crickit-btn{width:120px;padding:6px 0;margin-top:6px;font-size:.7rem}.feedback-container{gap:6px}.feedback-icon{width:24px;height:24px;border-width:1px;padding:3px;box-shadow:1px 1px 0 0 var(--nes-black)}.feedback-icon svg{width:16px;height:16px}.empty-answer{font-size:.65rem;padding:1.5rem}.questions-scroller{padding:5px 10px}.textarea-wrapper{gap:5px}.input-textarea,.answer-text,.sql-query,.scroller-item,.tab-button{text-shadow:none}body:after{opacity:.3}}@media (max-width: 360px){.container{padding:.25rem}.app-header{height:36px;margin-bottom:5px}.app-title{font-size:1rem}.ipl-logo{width:24px;height:24px}.scroller-item{font-size:.55rem;max-height:24px;min-height:24px;padding:3px 6px;margin-bottom:4px}.input-textarea,.answer-text,.sql-query{font-size:.6rem}.crickit-btn{width:100px;font-size:.65rem}.truncate-text{max-width:60px}.sql-output-table th,.sql-output-table td{padding:2px;font-size:.55rem}.answer-text,.input-textarea{font-size:.55rem!important;line-height:1.3}body:after{opacity:.2}.feedback-container{gap:4px}.feedback-icon{width:22px;height:22px;padding:2px}.feedback-icon svg{width:14px;height:14px}}@media (max-height: 600px){.app-header{height:40px;margin-bottom:10px}main{gap:10px}.input-container{padding:1rem;flex:.6}.answer-container{padding:1rem 1rem .1rem;flex:1.4}.app-title{font-size:1.5rem}.input-textarea{padding:.75rem;font-size:.95rem}.answer-text,.empty-answer{font-size:.85rem}.feedback-container{padding:2px 0}.feedback-icon{width:30px;height:30px}.questions-scroller{flex:.8}}@media (max-height: 500px) and (orientation: landscape){.container{display:grid;grid-template-columns:1fr 2fr;grid-template-rows:auto 1fr;height:100vh}.app-header{grid-column:1 / -1;grid-row:1}.questions-scroller{grid-column:1;grid-row:2;height:calc(100vh - 50px)}.input-container,.answer-container{grid-column:2;grid-row:2}.input-container{height:30%}.answer-container{height:70%;margin-top:auto}main{display:contents}}.compact-mode .answer-text{font-size:.6rem!important;line-height:1.2}.compact-mode .sql-output-table th,.compact-mode .sql-output-table td{padding:2px;font-size:.55rem}
