.practiceBadge{color:#245a9b;width:fit-content;font:600 11px/1.3 var(--font-sans,system-ui, sans-serif);letter-spacing:.01em;white-space:nowrap;vertical-align:middle;background:#edf5ff;border:1px solid #bed5f0;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:5px 10px 5px 8px;display:inline-flex}.practiceBadge>svg{flex-shrink:0;display:block}:root[data-theme=dark] .practiceBadge{color:#b3d9ff;background:#233345;border-color:#425c79}.practiceBadge--pair{color:#176653;background:#edf9f5;border-color:#b1dbd3}:root[data-theme=dark] .practiceBadge--pair{color:#aae3d2;background:#213b35;border-color:#416960}.codingLibrary{margin-top:28px;padding-bottom:64px}.codingLibrary__languages{gap:12px;display:flex}.codingLibrary__languages button{border:1px solid var(--border);min-width:220px;min-height:80px;color:var(--text);background:var(--surface);text-align:left;cursor:pointer;border-radius:14px;grid-template-columns:40px 1fr;align-items:center;gap:2px 12px;padding:16px 20px;display:grid}.codingLibrary__languages button>span{background:var(--bg);color:#60a5fa;border-radius:9px;grid-row:span 2;place-items:center;height:38px;font:700 14px monospace;display:grid}.codingLibrary__languages button[aria-pressed=true]{border-color:#60a5fa;box-shadow:inset 0 0 0 1px #60a5fa}.codingLibrary__languages small,.codingLibrary__intro,.codingLibrary__count{color:var(--text-dim)}.codingLibrary__intro{max-width:780px;margin:22px 0;line-height:1.7}.codingLibrary__styles{border-bottom:1px solid var(--border);gap:8px;margin-top:24px;display:flex}.codingLibrary__styles button{min-height:48px;color:var(--text-dim);font:600 13px var(--font-sans,system-ui);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:10px;padding:12px 18px;display:flex}.codingLibrary__styles button[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent);border-radius:8px 8px 0 0}.codingLibrary__styles small{background:var(--surface);color:var(--text-dim);border-radius:5px;padding:2px 6px;font-size:11px}.codingLibrary__filters{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.codingLibrary__filters label{color:var(--text-dim);gap:8px;font-size:12px;font-weight:600;display:grid}.codingLibrary__filters select,.codingLibrary__filters input{border:1px solid var(--border);min-height:44px;color:var(--text);background:var(--surface);font:inherit;border-radius:9px;padding:10px 12px;font-size:14px}.codingLibrary__select{min-width:0;display:grid;position:relative}.codingLibrary__select select{-webkit-appearance:none;appearance:none;cursor:pointer;width:100%;min-width:0;padding-inline-end:42px;transition:border-color .16s}.codingLibrary__select>svg{inset-inline-end:13px;fill:none;stroke:currentColor;stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px;color:var(--text-dim);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.codingLibrary__select:hover select{border-color:var(--accent)}.codingLibrary__select:focus-within>svg{color:var(--accent)}@media (forced-colors:active){.codingLibrary__select>svg{color:canvastext}}.codingLibrary__search{flex:1;min-width:220px}.codingLibrary__count{margin:24px 0 16px;font-size:12px}.codingLibrary__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.codingLibrary__card{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:15px;flex-direction:column;padding:24px;text-decoration:none;transition:border-color .18s,background .18s;display:flex}.codingLibrary__card:hover{border-color:#60a5fa}.codingLibrary__card:focus-visible{outline-offset:4px;outline:2px solid #60a5fa}.codingLibrary button:focus-visible{outline-offset:4px;outline:2px solid #60a5fa}.codingLibrary input:focus-visible{outline-offset:4px;outline:2px solid #60a5fa}.codingLibrary select:focus-visible{outline-offset:4px;outline:2px solid #60a5fa}.codingLibrary__cardTop{color:var(--text-dim);justify-content:space-between;gap:12px;font-size:11px;display:flex}.codingLibrary__cardTop>small{color:#60a5fa;font-size:11px}.codingLibrary__aiBadge,.codingLibrary__pairBadge{align-self:flex-start;margin-top:18px}.codingLibrary__cardTop .codingLibrary__free{background:color-mix(in srgb,#22c55e 12%,var(--surface));color:#86efac;border-radius:5px;padding:3px 8px;font-weight:650}:root:not([data-theme=dark]) .codingLibrary__cardTop .codingLibrary__free{color:#15803d}.codingLibrary__card h2{letter-spacing:-.02em;margin:18px 0 10px;font-size:18px;line-height:1.4}.codingLibrary__card>p{color:var(--text-dim);margin:0 0 22px;font-size:13px;line-height:1.75}.codingLibrary__tags{min-width:0;max-width:100%;color:var(--text-dim);flex-wrap:nowrap;align-items:center;gap:6px;margin-top:auto;font-size:10px;display:flex}.codingLibrary__tags span{text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--border);border-radius:5px;min-width:0;padding:5px 7px;overflow:hidden}.codingLibrary__open{color:#60a5fa;justify-content:space-between;margin-top:20px;font-size:12px;font-weight:600;display:flex}.codingLibrary__ai,.codingLibrary__empty{border:1px solid var(--border);border-radius:14px;margin-top:28px;padding:24px}.codingLibrary__ai h2,.codingLibrary__empty h2{margin:0 0 10px;font-size:17px}.codingLibrary__ai p,.codingLibrary__empty p{max-width:900px;color:var(--text-dim);margin:0;font-size:13px;line-height:1.8}.mlCodingAssistant{padding:24px;overflow:auto}.mlCodingAssistant>p{color:var(--text-dim);font-size:13px;line-height:1.7}@media (min-width:761px){.mlCodingAssistant .aiBuild__assistant{max-width:780px}}@media (max-width:1100px){.codingLibrary__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.codingLibrary__grid{grid-template-columns:1fr}.codingLibrary__languages button{flex:1;grid-template-columns:30px 1fr;gap:3px 8px;min-width:0;padding:12px}.codingLibrary__languages button>span{height:30px}.codingLibrary__languages strong{font-size:14px}.codingLibrary__languages small{font-size:10px}.codingLibrary__filters label{flex:1;min-width:0}.codingLibrary__filters .codingLibrary__search{flex-basis:100%}.codingLibrary__card{padding:20px}}
