.spreadsheet-module{--sheet-good:#e9f4df;--sheet-bad:#f8e5df;--sheet-blue:rgba(91,103,255,.09)}.spreadsheet-module .lesson-section{scroll-margin-top:156px}.sheet-workspace,.quality-lab,.lookup-lab,.pivot-lab,.power-lab,.query-lab,.date-lab,.data-validation-card,.spreadsheet-case-card{border:1px solid var(--line);border-radius:20px;background:#ffffff3d;overflow:hidden}.sheet-workspace{margin-top:28px}.sheet-workspace-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}.sheet-workspace-head div{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sheet-workspace-head span,.sheet-panel-label{font:10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.sheet-workspace-head strong{font-size:14px}.sheet-workspace-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}.sheet-table-wrap{width:100%;overflow:auto}.sheet-table{width:100%;min-width:620px;border-collapse:collapse;background:#fff;color:#171714}.sheet-table.compact{min-width:520px}.sheet-table th,.sheet-table td{border-right:1px solid #deddd7;border-bottom:1px solid #deddd7;padding:10px 11px;text-align:left;font-size:12px;white-space:nowrap}.sheet-table thead th{background:#efeee8;font:10px DM Mono,monospace;text-transform:uppercase;color:#5f5e59}.sheet-table tbody th{width:42px;background:#f4f3ed;font:10px DM Mono,monospace;text-align:center;color:#77746e}.sheet-table .sheet-blank{background:repeating-linear-gradient(135deg,#fff,#fff 5px,#f1f0eb 5px 10px)}.sheet-practice-panel,.lookup-practice,.quality-summary,.pivot-result,.pivot-source,.query-editor-card{padding:20px}.sheet-practice-panel{border-left:1px solid var(--line)}.sheet-challenge-list{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 16px}.sheet-chip,.sheet-action{appearance:none;border:1px solid var(--line);background:transparent;color:inherit;border-radius:999px;padding:9px 12px;font:10px DM Mono,monospace;text-transform:uppercase;cursor:pointer;transition:background .18s,color .18s,border-color .18s}.sheet-chip:hover,.sheet-chip:focus-visible,.sheet-chip.active,.sheet-action:hover,.sheet-action:focus-visible,.sheet-action.active{background:var(--ink);color:var(--bg);outline:none}.sheet-action.primary{background:var(--ink);color:var(--bg)}.sheet-prompt{min-height:46px;font-size:14px;line-height:1.45}.sheet-formula-bar{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin:12px 0}.sheet-formula-bar span{font:12px DM Mono,monospace}.sheet-formula-bar input,.lookup-practice input,.date-controls input,.date-controls select,.pivot-controls select,.data-validation-card select,.query-editor-card textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:11px;background:#ffffffb8;color:var(--ink);padding:11px 12px;font:12px DM Mono,monospace;outline:none}.sheet-formula-bar input:focus,.lookup-practice input:focus,.date-controls input:focus,.date-controls select:focus,.pivot-controls select:focus,.data-validation-card select:focus,.query-editor-card textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #5b67ff1a}.sheet-feedback{padding:14px;border:1px solid var(--line);border-radius:14px}.sheet-feedback small{display:block;font:9px DM Mono,monospace;text-transform:uppercase}.sheet-feedback strong{display:block;margin-top:5px;font-size:21px}.sheet-feedback p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.sheet-feedback.is-correct{background:var(--sheet-good);border-color:#427a344d}.sheet-feedback.is-wrong{background:var(--sheet-bad);border-color:#aa452c4d}.function-map{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.function-map article{padding:16px;border:1px solid var(--line);border-radius:15px}.function-map span{font:9px DM Mono,monospace;text-transform:uppercase;color:var(--muted)}.function-map strong{display:block;margin:7px 0;font-size:14px}.function-map p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.cleaning-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.cleaning-card{padding:17px;border:1px solid var(--line);border-radius:17px;background:#ffffff4d}.cleaning-card>span{font:9px DM Mono,monospace;text-transform:uppercase;color:var(--muted)}.cleaning-row{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin:14px 0}.cleaning-row code{min-width:0;overflow-wrap:anywhere;font:11px/1.45 DM Mono,monospace}.cleaning-row b{color:var(--blue)}.formula-example{padding:10px 11px;border-radius:10px;background:var(--surface)}.formula-example small{display:block;margin-bottom:4px;font:9px DM Mono,monospace;text-transform:uppercase;color:var(--muted)}.formula-example code{font:11px DM Mono,monospace;overflow-wrap:anywhere}.date-lab{display:grid;grid-template-columns:.7fr 1.3fr;gap:20px;padding:20px}.date-lab h3{margin:7px 0;font-size:24px}.date-lab p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.date-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px}.date-controls label,.lookup-practice label,.pivot-controls label,.data-validation-card label{display:grid;gap:6px}.date-controls label span,.lookup-practice label span,.pivot-controls label span,.data-validation-card label span{font:9px DM Mono,monospace;text-transform:uppercase;color:var(--muted)}.date-output{grid-column:1/-1;padding:13px;border-radius:12px;background:var(--ink);color:var(--bg)}.date-output span{font:9px DM Mono,monospace;text-transform:uppercase;color:#f5f3ed99}.date-output strong{display:block;margin-top:5px;font-size:20px}.function-strip{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.function-strip span{padding:8px 10px;border:1px solid var(--line);border-radius:999px;font:9px DM Mono,monospace}.quality-toolbar{display:flex;gap:7px;flex-wrap:wrap;padding:14px;border-bottom:1px solid var(--line)}.quality-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr)}.quality-summary{border-left:1px solid var(--line)}.quality-summary>strong{display:block;margin:10px 0;font-size:24px;line-height:1.05}.quality-summary>p{color:var(--muted);font-size:13px;line-height:1.5}.quality-table td.is-issue,.quality-table td.is-invalid{background:#ffd9cf;outline:1px solid #b84e35;outline-offset:-1px}.quality-table tr.is-duplicate td{background:#fff0c9}.quality-table tr.is-hidden-row{display:none}.data-validation-card{display:grid;grid-template-columns:1fr minmax(250px,.5fr);gap:28px;align-items:center;margin-top:16px;padding:20px}.data-validation-card h3{margin:8px 0;font-size:25px}.data-validation-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.lookup-lab{display:grid;grid-template-columns:1.15fr .85fr}.lookup-practice{border-left:1px solid var(--line)}.lookup-formula{display:block;padding:12px;border-radius:11px;background:var(--surface);font:11px/1.5 DM Mono,monospace;overflow-wrap:anywhere}.lookup-answer{margin-top:12px;padding:14px;border-radius:13px;background:var(--ink);color:var(--bg)}.lookup-answer span{display:block;font:9px DM Mono,monospace;text-transform:uppercase;color:#f5f3ed94}.lookup-answer strong{display:block;margin-top:5px;font-size:23px}.lookup-answer small{display:block;margin-top:4px;color:#f5f3edb8}.lookup-note{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.pivot-controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:16px;border-bottom:1px solid var(--line)}.pivot-body{display:grid;grid-template-columns:1fr 1fr}.pivot-source{border-right:1px solid var(--line)}.pivot-result [data-pivot-output]{margin-top:10px}.power-lab{display:grid;grid-template-columns:280px 1fr}.power-steps{display:grid;align-content:start;border-right:1px solid var(--line);padding:12px}.power-step{appearance:none;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;text-align:left;padding:13px 11px;cursor:pointer;display:grid;grid-template-columns:38px 1fr;gap:8px;align-items:center}.power-step span{font:9px DM Mono,monospace;color:var(--muted)}.power-step strong{font-size:13px}.power-step.active{background:var(--ink);color:var(--bg);border-radius:10px}.power-step.active span{color:#f5f3ed94}.power-preview{padding:18px;min-width:0}.power-preview>p{margin:0 0 14px;padding:12px;border-radius:11px;background:var(--sheet-blue);font-size:13px;line-height:1.5}.query-lab{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr)}.query-editor-card{border-right:1px solid var(--line)}.query-editor-card textarea{min-height:122px;resize:vertical;margin:10px 0}.query-editor-card>p{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.query-result{padding:20px;overflow:auto}.sql-bridge-map{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.sql-bridge-map article{padding:15px;border:1px solid var(--line);border-radius:14px}.sql-bridge-map span{display:block;font:9px DM Mono,monospace;text-transform:uppercase;color:var(--muted)}.sql-bridge-map strong{display:block;margin-top:6px;font-size:17px}.spreadsheet-case-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.spreadsheet-case-card{padding:20px}.spreadsheet-case-card h3{margin:0 0 14px;font-size:25px}.spreadsheet-case-card p{color:var(--muted);font-size:13px;line-height:1.5}.case-checklist{display:grid;gap:8px}.case-checklist label{display:flex;gap:9px;align-items:flex-start;padding:10px 11px;border:1px solid var(--line);border-radius:10px;font-size:13px;cursor:pointer}.case-checklist input{margin-top:2px;accent-color:var(--blue)}.asset-card a{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.asset-card a span{font:10px DM Mono,monospace;text-transform:uppercase}.asset-card a strong{font-size:13px}@media(max-width:980px){.sheet-workspace-grid,.date-lab,.quality-grid,.lookup-lab,.pivot-body,.query-lab{grid-template-columns:1fr}.sheet-practice-panel,.quality-summary,.lookup-practice,.query-editor-card{border-left:0;border-right:0;border-top:1px solid var(--line)}.function-map{grid-template-columns:repeat(2,1fr)}.cleaning-grid{grid-template-columns:1fr}.pivot-controls{grid-template-columns:repeat(2,1fr)}.pivot-source{border-right:0;border-bottom:1px solid var(--line)}.power-lab{grid-template-columns:1fr}.power-steps{grid-template-columns:repeat(5,minmax(130px,1fr));overflow:auto;border-right:0;border-bottom:1px solid var(--line)}.power-step{border-bottom:0;border-right:1px solid var(--line)}.sql-bridge-map{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.spreadsheet-module .lesson-section{scroll-margin-top:138px}.sheet-workspace,.quality-lab,.lookup-lab,.pivot-lab,.power-lab,.query-lab,.date-lab,.data-validation-card,.spreadsheet-case-card{border-radius:15px}.sheet-workspace-head{align-items:flex-start}.sheet-workspace-head div{display:grid;gap:4px}.sheet-table{min-width:560px}.sheet-table th,.sheet-table td{padding:9px;font-size:11px}.sheet-practice-panel,.lookup-practice,.quality-summary,.pivot-result,.pivot-source,.query-editor-card,.query-result{padding:15px}.function-map,.sql-bridge-map,.spreadsheet-case-grid,.data-validation-card{grid-template-columns:1fr}.function-map article{padding:14px}.date-lab{padding:15px}.date-controls{grid-template-columns:1fr}.date-output{grid-column:auto}.pivot-controls{grid-template-columns:1fr;padding:14px}.power-steps{grid-template-columns:repeat(5,150px)}.quality-toolbar{overflow-x:auto;flex-wrap:nowrap}.quality-toolbar .sheet-action{flex:0 0 auto}.sheet-chip,.sheet-action{padding:9px 10px}.spreadsheet-case-card h3,.quality-summary>strong{font-size:21px}}@media(prefers-reduced-motion:reduce){.sheet-chip,.sheet-action{transition:none}}
