.lab-page{padding-top:24px}.lab-topbar{display:flex;align-items:center;gap:14px;padding-bottom:22px;flex-wrap:wrap}.lab-topbar h1{font-size:24px;letter-spacing:-.02em}.lab-meta{margin-left:auto;display:flex;gap:10px;align-items:center;font:10px var(--mono);color:var(--muted)}.lab-layout{display:grid;grid-template-columns:245px minmax(340px,1fr) minmax(300px,.95fr);gap:16px;align-items:start}.lab-task,.lab-terminal,.lab-preview{border:1px solid var(--line);background:#0e242e;border-radius:15px;overflow:hidden;min-width:0}.lab-task{padding:22px}.lab-task .label{font:10px var(--mono);letter-spacing:.1em;color:var(--muted);margin-bottom:14px}.lab-task h3{font-size:17px;margin:12px 0}.lab-task p{font-size:12px;color:#b6cdd1;line-height:1.95;overflow-wrap:anywhere}.lab-task .hint{margin-top:20px}.lab-task .hint summary{font-size:11px}.lab-task details{padding:12px}.lab-task .task-flow{border-left:1px solid #9cebd633;padding:0 0 0 18px;margin:22px 0;font-size:11px;color:var(--muted)}.task-flow>div{position:relative;padding:7px 0}.task-flow>div:before{content:'';position:absolute;left:-22px;top:14px;width:7px;height:7px;border-radius:50%;background:#173d43;border:1px solid var(--mint)}.terminal-title{padding:13px 17px;display:flex;align-items:center;gap:10px;background:#152d36;border-bottom:1px solid var(--line);font:10px var(--mono);color:#a9c5cc}.terminal-title .window-dots{margin:0}.editor-area{position:relative;background:#07171f;padding:16px 0}.editor-label{color:#74b9ae;font:10px var(--mono);padding:0 20px 5px;display:flex;justify-content:space-between}.sql-editor{display:block;border:0;border-radius:0;background:transparent;color:#d3e9e7;caret-color:var(--mint);font:13px/1.9 var(--mono);min-height:225px;padding:12px 20px;tab-size:2;outline:0;width:100%;resize:vertical;white-space:pre;overflow:auto}.sql-editor:focus-visible{outline:none}.editor-tools{padding:12px 15px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-top:1px solid var(--line);background:#0b202a}.editor-tools .btn{font-size:11px;padding:8px 12px}.terminal-result{padding:18px;min-height:200px;max-height:470px;overflow:auto}.terminal-result .table-wrap{margin:12px 0}.terminal-result table{font:11px/1.65 var(--mono)}.terminal-result th,.terminal-result td{padding:9px}.result-meta{display:flex;align-items:center;gap:7px;font:10px var(--mono);color:var(--mint);margin-bottom:15px;flex-wrap:wrap}.sql-error{padding:14px;border:1px solid #ff9a9a44;border-radius:10px;color:#f3b8b8;font:12px/1.9 var(--mono);background:#ff9a9a08;white-space:pre-wrap;overflow-wrap:anywhere}.execution-pulse{height:2px;background:linear-gradient(90deg,transparent,var(--mint),transparent);animation:shimmer 1.5s linear infinite;background-size:200% 100%}.lab-preview{background:#f3f4ef;color:#18332e;min-height:520px}.preview-toolbar{padding:12px 15px;border-bottom:1px solid #21483f17;display:flex;align-items:center;gap:8px;font:10px var(--mono);background:#e6eee7;color:#526c63}.preview-toolbar .dot{color:#74a68e}.preview-address{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;color:#678276}.preview-body{padding:23px 19px}.preview-brand{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:650;color:#244a3c;margin-bottom:6px}.preview-brand .icon{width:20px;height:20px}.preview-subtitle{font-size:10px;color:#73897e;margin-bottom:22px}.preview-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.goods-card{border:1px solid #c5d6cb;background:#fffdf7;border-radius:12px;overflow:hidden;min-width:0;animation:rise .3s ease}.goods-image{height:100px;background:#eeeae1;display:grid;place-items:center;position:relative;overflow:hidden}.goods-image img{height:100%;width:100%;object-fit:contain;mix-blend-mode:multiply}.goods-card-info{padding:11px 12px}.goods-card-info h4{font-size:12px;font-weight:550;white-space:normal;overflow-wrap:anywhere}.goods-card .price{font:18px/1.3 var(--mono);color:#2a6f57;letter-spacing:-.04em;margin-top:8px}.goods-card .stock{font-size:9px;color:#81948c;margin-top:5px}.goods-card .id{position:absolute;top:7px;left:8px;font:9px var(--mono);color:#87968d}.preview-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:18px 0}.preview-metric{padding:12px 13px;background:#e6ede5;border:1px solid #cbd9cd;border-radius:10px;min-width:0}.preview-metric strong{font:20px var(--mono);color:#2b6453;display:block}.preview-metric span{font-size:9px;line-height:1.55;color:#6e8276;display:block;margin-top:6px}.preview-footnote{font-size:10px;line-height:1.9;color:#7e8d83;border-top:1px solid #cbd8ce;margin-top:15px;padding-top:13px}.industry-item{padding:14px 13px;border:1px solid #cbd8ce;border-radius:11px;background:#fafbf6;display:grid;gap:7px;margin:10px 0}.industry-item .item-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.industry-item h4{font-size:12px}.industry-item .item-data{display:flex;justify-content:space-between;font:11px var(--mono);color:#607b6e}.industry-item .pill{font-size:9px;color:#2d7056;background:#e1f0e3;border-color:#c3dfc7;padding:2px 7px}.industry-item .pill.alert{color:#967448;background:#f2e8cd;border-color:#e7d4a9}.industry-bar{height:5px;border-radius:5px;background:#dce5da;overflow:hidden}.industry-bar i{display:block;height:100%;background:#7aa98e}.lab-history{padding:12px 17px;border-top:1px solid var(--line);font-size:11px}.history-item{display:block;color:#8aacae;font:10px/1.8 var(--mono);padding:6px 0;border:0;background:none;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left}.history-item:hover{color:var(--mint)}.lab-bottom{display:flex;justify-content:space-between;gap:15px;padding:16px 2px;font-size:10px;color:var(--muted)}.lab-checks{padding:20px;border:1px solid var(--line);border-radius:14px;margin-top:16px;background:#10252e}.lab-checks h3{font-size:16px}.lab-checks .result-badge{font-size:34px}.schema-row{font:11px var(--mono);margin-top:10px;display:flex;gap:10px;flex-wrap:wrap}.schema-row button{font:10px var(--mono);color:var(--mint);background:#9cebd608;border:1px solid #9cebd622;border-radius:6px;padding:4px 9px;cursor:pointer}.data-change{animation:flash-change .9s ease}.lab-mobile-tabs{display:none}@keyframes flash-change{0%,100%{box-shadow:none}40%{box-shadow:inset 0 0 0 3px #77bfa3}}
@media(max-width:1250px){.lab-layout{grid-template-columns:220px minmax(0,1fr)}.lab-preview{grid-column:2}.lab-task{grid-row:span 2}.lab-preview{min-height:0}.preview-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.preview-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.lab-meta{font-size:9px}}
@media(max-width:760px){.lab-layout{display:block}.lab-task,.lab-terminal,.lab-preview{margin-bottom:17px}.lab-topbar h1{font-size:20px}.lab-meta{margin-left:0;width:100%;flex-wrap:wrap}.lab-task{padding:18px}.lab-task .task-flow{display:none}.lab-task .hint{margin-top:10px}.preview-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.sql-editor{font-size:12px;min-height:210px}.lab-bottom{display:block}.lab-bottom span{display:block;margin-top:7px}.editor-tools{padding:10px;gap:6px}.editor-tools .btn{font-size:10px;padding:8px 10px}.preview-body{padding:18px}.lab-page{padding-top:22px}}
