:root{font-family:Inter,Segoe UI,sans-serif;color:#dae3e9;background:#10171d;font-size:16px;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #79efb6;outline-offset:3px}header{height:82px;border-bottom:1px solid #2b363f;display:flex;align-items:center;justify-content:space-between;padding:0 36px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#edf5f8;font-size:23px;font-weight:700}.mark{background:#79efb6;color:#10231c;padding:5px 8px;border-radius:7px;font-family:monospace}.tag{font-size:12px;letter-spacing:2px;color:#97a8b5;font-weight:500;margin-left:10px}.engine{font-size:14px;color:#79efb6}.engine span{color:#8b9daa}main{display:grid;grid-template-columns:280px minmax(0,1fr);max-width:1700px;margin:auto}aside{padding:32px 25px;border-right:1px solid #2b363f;min-height:calc(100vh - 82px);background:#131c23}.section-heading{font-size:12px;font-weight:600;letter-spacing:1.5px;color:#8296a6;display:flex;justify-content:space-between}h2{font-size:20px;margin:18px 0 6px}.muted{font-size:14px;color:#8e9eab;margin:0 0 30px}.schema-table{border-top:1px solid #2b363f;padding:17px 0 8px}.table-button{color:#e1ebf0;background:none;border:0;padding:0;width:100%;text-align:left;display:flex;justify-content:space-between;font-size:16px;font-weight:600}.table-button span{font-size:12px;color:#899ca9;font-weight:400}.column{display:flex;justify-content:space-between;font-family:Consolas,monospace;font-size:14px;padding:7px 0 2px 16px;color:#a7bac7}.column small{color:#748998;font-size:12px}.relation{font-size:12px;line-height:1.8;color:#88a090;margin-top:28px}.relation code{font-size:12px;color:#92a4b0}.reset{width:100%;margin-top:26px;padding:11px;color:#b1c2ce;background:#1b2831;border:1px solid #364651;border-radius:6px;text-align:left}.fine{font-size:12px;color:#8093a2;line-height:1.6}.workspace{padding:34px 38px 20px;min-width:0}.intro{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:29px}.eyebrow{font-size:12px;letter-spacing:1.8px;color:#79efb6;font-weight:600}h1{font-size:clamp(24px,2.6vw,36px);font-weight:600;letter-spacing:-1px;margin:10px 0}p{line-height:1.6}.intro p{color:#95a8b6;margin:0;font-size:16px}.number{font-family:Consolas,monospace;font-size:23px;line-height:1.4;color:#516575;transform:rotate(-5deg)}.modebar{display:flex;gap:22px;border-bottom:1px solid #2b3a45;margin-bottom:22px}.modebar button{border:0;background:none;color:#90a4b4;padding:0 0 15px;font-size:15px}.modebar button.active{color:#79efb6;border-bottom:2px solid #79efb6}.modebar span{font-size:12px;background:#263540;padding:2px 6px;border-radius:4px;margin-left:6px}#challenge{background:#192932;border:1px solid #365349;padding:20px 24px;margin-bottom:20px;border-radius:8px}#challenge h2{margin-top:12px}#challenge p{margin:8px 0 12px}.challenge-top{display:flex;justify-content:space-between;gap:16px;align-items:center}.challenge-top select{max-width:60%;font-size:14px;padding:7px;border:1px solid #49606c;border-radius:4px;background:#132029}.challenge-actions{display:flex;gap:16px;align-items:center;font-size:14px}.challenge-actions button{border:0;background:none;color:#85e7bc;padding:0}.challenge-actions span{margin-left:auto;color:#94a6b1}.editor-panel,.results{border:1px solid #31414d;border-radius:8px;overflow:hidden;background:#111d26}.panel-heading{padding:14px 19px;background:#1b2832;display:flex;justify-content:space-between;gap:10px;font-size:14px;color:#c0cfda}.panel-heading>span:last-child{font-size:12px;letter-spacing:1px;color:#8ba0b0}.file-dot{display:inline-block;width:7px;height:7px;background:#79efb6;border-radius:50%;margin-right:9px}.editor{display:flex;min-height:205px;padding:23px 0;background:#111b23}.line-numbers{width:51px;flex-shrink:0;text-align:right;padding-right:17px;white-space:pre;font:16px/1.8 Consolas,monospace;color:#516574;overflow:hidden}textarea{border:0;resize:vertical;background:transparent;color:#9de8ce;font:16px/1.8 Consolas,monospace;width:calc(100% - 52px);min-height:160px;padding:0 18px 0 0;tab-size:2;outline-offset:-2px!important}.editor-footer{border-top:1px solid #293b47;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.editor-footer>span{font-size:12px;color:#91a5b5}kbd{border:1px solid #415360;padding:2px 4px;border-radius:3px;margin-left:8px}.editor-footer button{padding:10px 16px;border:1px solid #536977;border-radius:5px;background:#243b46;color:#e0eef5;font-size:14px;font-weight:600}.editor-footer .run{background:#79efb6;color:#123324;border-color:#79efb6;margin-left:8px}.results{margin-top:22px;min-height:240px}.results strong{font-weight:500}#count{font-size:12px;color:#9aacb8;margin-left:10px}#feedback{font-size:14px;padding:12px 20px;color:#99b1c0}#feedback.error{color:#ffb5ac;background:#382327}#feedback.success{color:#89ecc0}#feedback:empty{display:none}.table-wrap{overflow:auto;max-height:360px}table{border-collapse:collapse;width:100%;text-align:left;font:14px/1.5 Consolas,monospace}td,th{padding:11px 20px;border-bottom:1px solid #263743;white-space:nowrap}th{color:#90a8b9;background:#16232c;font-weight:400;position:sticky;top:0}td{color:#cfdee7}tr:hover td{background:#1c303b}td:first-child,th:first-child{color:#627d90;width:40px}footer{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#788f9f;margin-top:20px}[hidden]{display:none!important}@media(max-width:950px){main{grid-template-columns:220px minmax(0,1fr)}.workspace{padding:26px 22px}.number{display:none}.tag{display:none}aside{padding:26px 16px}.editor-footer>span{display:none}}@media(max-width:680px){header{padding:18px;height:auto}.engine span{display:none}main{display:flex;flex-direction:column}aside{min-height:auto;border-right:0;border-bottom:1px solid #2b363f;padding:20px}aside h2{margin-top:10px}aside .muted{margin-bottom:15px}#schema{display:flex;gap:12px;overflow:auto}.schema-table{min-width:170px}.column,.relation,aside .fine{display:none}.reset{margin-top:10px;width:auto}.workspace{padding:25px 16px}h1{font-size:27px}footer{flex-direction:column;gap:6px}.challenge-top{align-items:flex-start;flex-direction:column}.challenge-top select{max-width:100%;width:100%}.challenge-actions{flex-wrap:wrap}.challenge-actions span{margin-left:0}}
