.python-libraries-section{width:100%;max-width:var(--wide-width);margin:0 auto var(--space-7);min-height:auto;padding:64px 0 80px;display:block;overflow:visible}.libraries-heading{text-align:center;width:100%;max-width:680px;margin:0 auto 36px}.libraries-eyebrow{color:var(--color-muted);letter-spacing:.18em;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:700;display:block}.python-libraries-section .libraries-heading h2{color:var(--color-text);letter-spacing:-.045em;margin:0 0 12px;font-size:clamp(30px,3vw,42px);line-height:1.1}.python-libraries-section .libraries-heading p{max-width:620px;color:var(--color-muted);margin:0 auto;font-size:14px;line-height:1.6}.library-learning-layout{grid-template-columns:180px minmax(0,1fr) 260px;align-items:stretch;gap:16px;width:100%;display:grid}.library-selector,.library-visual-area,.library-info-panel{min-width:0}.library-selector{flex-direction:column;gap:9px;display:flex}.library-select-button{appearance:none;border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:11px;padding:13px 12px;transition:border-color .18s,background .18s,transform .18s,box-shadow .18s;display:flex}.library-select-button:hover{border-color:color-mix(in srgb, var(--color-accent) 45%, var(--color-border));transform:translate(2px)}.library-select-button.active{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 10%, var(--color-surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-accent) 12%, transparent)}.selector-icon{background:var(--color-surface-soft);width:34px;height:34px;color:var(--color-text);border-radius:8px;flex:0 0 34px;place-items:center;font-size:14px;display:grid}.selector-text{min-width:0;display:block}.selector-text strong{color:var(--color-text);margin:0 0 2px;font-size:12px;line-height:1.2;display:block}.selector-text small{color:var(--color-muted);font-size:9px;line-height:1.3;display:block}.library-visual-area{flex-direction:column;width:100%;display:flex}.workflow-bar{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;grid-template-columns:minmax(70px,1fr) 18px minmax(70px,1fr) 18px minmax(70px,1fr) 18px minmax(70px,1fr);align-items:center;gap:4px;width:100%;min-height:58px;margin:0 0 10px;padding:8px 12px;display:grid}.workflow-bar>div{opacity:.28;justify-content:center;align-items:center;gap:7px;min-width:0;transition:opacity .2s;display:flex}.workflow-bar>div.active{opacity:1}.workflow-bar>div>span{border:1px solid var(--color-border);width:23px;height:23px;color:var(--color-muted);border-radius:50%;flex:0 0 23px;place-items:center;font-size:9px;display:grid}.workflow-bar>div.active>span{border-color:var(--color-accent);color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 10%, transparent)}.workflow-bar p{min-width:0;color:var(--color-text);margin:0;font-size:10px;font-weight:600;line-height:1.2}.workflow-bar small{color:var(--color-muted);white-space:nowrap;margin-top:2px;font-size:7px;font-weight:400;display:block}.workflow-arrow{text-align:center;color:var(--color-muted);opacity:.35;font-size:10px;display:block}.visual-frame{border:1px solid var(--color-border);background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--color-accent) 6%, transparent), transparent 55%), var(--color-surface);border-radius:14px;justify-content:center;align-items:center;width:100%;min-width:0;height:390px;padding:28px;display:flex;overflow:hidden}.visual-content{width:100%;min-width:0;max-width:100%}.visual-caption{max-width:520px;min-height:38px;color:var(--color-muted);text-align:center;margin:10px auto 0;font-size:11px;line-height:1.5}.pandas-visual{grid-template-columns:120px 30px minmax(0,1fr);align-items:center;gap:12px;display:grid}.file-box{border:1px solid var(--color-border);background:var(--color-surface-soft);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:120px;padding:18px 10px;display:flex}.file-icon{color:var(--color-accent);margin-bottom:8px;font-size:28px;line-height:1}.file-box strong{color:var(--color-text);font-size:11px;display:block}.file-box span{color:var(--color-muted);margin-top:3px;font-size:8px;line-height:1.3;display:block}.big-arrow{color:var(--color-muted);opacity:.45;justify-content:center;align-items:center;font-size:20px;display:flex}.dataframe-window{border:1px solid color-mix(in srgb, var(--color-accent) 35%, var(--color-border));background:var(--color-surface);border-radius:11px;width:100%;min-width:0;overflow:hidden}.visual-window-title{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.visual-window-title strong{color:var(--color-text);font-size:10px}.visual-window-title span{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent);border-radius:4px;padding:2px 6px;font-size:7px}.dataframe-window table{border-collapse:collapse;table-layout:fixed;width:100%;color:var(--color-text);font-size:9px}.dataframe-window th,.dataframe-window td{border-bottom:1px solid var(--color-border);text-align:left;text-overflow:ellipsis;white-space:nowrap;padding:7px 6px;overflow:hidden}.dataframe-window th{color:var(--color-muted);font-size:8px;font-weight:600}.dataframe-window tbody tr:last-child td{border-bottom:none}.missing-row td:nth-child(2){color:#e5a33b;background:#e5a33b14}.numpy-visual{flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.visual-label{color:var(--color-muted);font-size:10px}.python-list{border:1px solid var(--color-border);background:var(--color-surface-soft);max-width:100%;color:var(--color-text);border-radius:8px;padding:10px 18px;font-family:SF Mono,Menlo,monospace;font-size:12px}.vertical-arrow{color:var(--color-muted);opacity:.5;font-size:17px}.numpy-transform{text-align:center}.numpy-transform>span{color:var(--color-muted);margin-bottom:9px;font-size:9px;display:block}.matrix{border-left:2px solid var(--color-accent);border-right:2px solid var(--color-accent);align-items:center;gap:6px;padding:11px 12px;display:flex}.matrix span{background:color-mix(in srgb, var(--color-accent) 8%, transparent);width:38px;height:38px;color:var(--color-text);border-radius:7px;place-items:center;font-family:SF Mono,Menlo,monospace;font-size:11px;display:grid}.math-output{justify-content:center;gap:8px;margin-top:7px;display:flex}.math-output div{border:1px solid var(--color-border);background:var(--color-surface);text-align:center;border-radius:8px;min-width:70px;padding:8px 10px}.math-output small{color:var(--color-muted);font-size:7px;display:block}.math-output strong{color:var(--color-text);margin-top:2px;font-size:11px;display:block}.sklearn-visual{grid-template-columns:minmax(90px,1fr) 28px minmax(120px,1.25fr) 28px minmax(90px,1fr);align-items:center;gap:8px;display:grid}.training-data,.model-box,.prediction-box{border:1px solid var(--color-border);background:var(--color-surface-soft);text-align:center;border-radius:11px;min-width:0;padding:16px 10px}.training-data>span,.model-box>span,.prediction-box>span{color:var(--color-muted);margin-bottom:8px;font-size:8px;display:block}.mini-data{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.mini-data div{background:var(--color-surface);color:var(--color-text);border-radius:5px;padding:5px 6px;font-size:8px}.model-box{border-color:color-mix(in srgb, var(--color-accent) 45%, var(--color-border));background:color-mix(in srgb, var(--color-accent) 6%, var(--color-surface))}.model-box strong,.model-box small,.prediction-box strong,.prediction-box small{display:block}.model-box strong{color:var(--color-text);margin-bottom:4px;font-size:15px}.model-box small,.prediction-box small{color:var(--color-muted);font-size:8px}.prediction-box strong{color:var(--color-text);margin-bottom:3px;font-size:12px}.pytorch-visual{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.network-label{color:var(--color-muted);margin-bottom:14px;font-size:9px}.neural-network{justify-content:center;align-items:center;gap:25px;display:flex}.network-column{flex-direction:column;gap:10px;display:flex}.network-column span{border:2px solid var(--color-accent);background:color-mix(in srgb, var(--color-accent) 8%, transparent);border-radius:50%;width:25px;height:25px}.network-column.hidden span{border-color:#9b7cff}.network-column.output span{border-color:#57c99b}.network-lines{color:var(--color-muted);opacity:.45;font-size:15px}.network-result{justify-content:center;align-items:center;gap:18px;margin-top:22px;display:flex}.network-result>div:not(.backprop-arrow){border:1px solid var(--color-border);background:var(--color-surface-soft);border-radius:8px;min-width:85px;padding:8px 12px}.network-result small{color:var(--color-muted);font-size:7px;display:block}.network-result strong{color:var(--color-text);margin-top:2px;font-size:11px;display:block}.backprop-arrow{color:var(--color-muted);font-size:9px}.matplotlib-visual{width:100%;max-width:480px;margin:auto}.chart-title{color:var(--color-text);text-align:center;margin-bottom:12px;font-size:11px;font-weight:600}.fake-chart{width:100%;min-height:200px;display:flex}.y-axis{width:30px;color:var(--color-muted);text-align:right;flex-direction:column;justify-content:space-between;padding:0 7px 20px 0;font-size:8px;display:flex}.chart-area{border-left:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:repeating-linear-gradient(to bottom, transparent, transparent 49px, var(--color-border) 50px);flex:1;min-width:0;position:relative}.chart-area svg{width:calc(100% - 20px);height:calc(100% - 35px);position:absolute;inset:10px 10px 25px}.loss-line{fill:none;stroke:var(--color-accent);stroke-width:3px;vector-effect:non-scaling-stroke}.x-axis{color:var(--color-muted);justify-content:space-around;font-size:7px;display:flex;position:absolute;bottom:3px;left:0;right:0}.chart-caption{color:var(--color-muted);text-align:center;margin-top:8px;font-size:8px}.library-info-panel{border:1px solid var(--color-border);background:var(--color-surface);border-radius:13px;flex-direction:column;width:100%;padding:16px;display:flex;overflow:hidden}.info-title{border-bottom:1px solid var(--color-border);align-items:center;gap:10px;padding-bottom:13px;display:flex}.info-icon{background:color-mix(in srgb, var(--color-accent) 8%, var(--color-surface-soft));width:35px;height:35px;color:var(--color-text);border-radius:8px;flex:0 0 35px;place-items:center;font-size:13px;display:grid}.info-title>div{min-width:0}.info-title h3{color:var(--color-text);margin:0 0 2px;font-size:14px;line-height:1.2}.info-title p{color:var(--color-muted);margin:0;font-size:9px;line-height:1.3}.info-stage{background:var(--color-surface-soft);border-radius:7px;justify-content:space-between;align-items:center;gap:10px;margin:13px 0;padding:8px 9px;display:flex}.info-stage span{color:var(--color-muted);letter-spacing:.06em;font-size:7px}.info-stage strong{color:var(--color-text);text-align:right;font-size:9px}.example-title{color:var(--color-text);margin:2px 0 7px;font-size:9px;font-weight:600}.library-example-code{border:1px solid var(--color-border);background:var(--color-surface-soft);border-radius:8px;width:100%;min-width:0;margin:0;padding:12px;overflow-x:auto}.library-example-code code{width:max-content;min-width:100%;color:var(--color-text);white-space:pre;background:0 0;padding:0;font-family:SF Mono,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:9px;line-height:1.65;display:block}.remember-box{background:#dcaa3c0a;border:1px solid #dcaa3c4d;border-radius:8px;align-items:center;gap:9px;margin-top:13px;padding:10px;display:flex}.remember-box>span{flex-shrink:0;font-size:14px}.remember-box>div{min-width:0}.remember-box small{color:var(--color-muted);margin-bottom:2px;font-size:7px;display:block}.remember-box strong{color:var(--color-text);font-size:9px;line-height:1.3;display:block}.library-quick-reference{border-top:1px solid var(--color-border);width:100%;margin-top:30px;padding-top:20px}.library-quick-reference h3{color:var(--color-text);margin:0 0 12px;font-size:13px}.quick-reference-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.quick-reference-item{border:1px solid var(--color-border);background:var(--color-surface);border-radius:9px;align-items:center;gap:8px;min-width:0;padding:10px;display:flex}.quick-reference-item>span{background:var(--color-surface-soft);border-radius:7px;flex:0 0 29px;place-items:center;width:29px;height:29px;font-size:11px;display:grid}.quick-reference-item>div{min-width:0}.quick-reference-item strong{color:var(--color-text);font-size:9px;display:block}.quick-reference-item p{color:var(--color-muted);margin:2px 0 0;font-size:8px;line-height:1.3}@media (max-width:1050px){.library-learning-layout{grid-template-columns:165px minmax(0,1fr)}.library-info-panel{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:12px;display:grid}.info-title{border-bottom:none}.info-stage{margin:0}.example-title{display:none}.remember-box{margin-top:0}.quick-reference-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.python-libraries-section{padding:48px 0 64px}.libraries-heading{margin-bottom:28px}.library-learning-layout{flex-direction:column;gap:14px;display:flex}.library-selector{grid-template-columns:repeat(5,minmax(120px,1fr));padding-bottom:4px;display:grid;overflow-x:auto}.library-select-button:hover{transform:none}.workflow-bar{grid-template-columns:90px 18px 90px 18px 90px 18px 90px;justify-content:start;overflow-x:auto}.visual-frame{height:auto;min-height:350px;padding:22px}.library-info-panel{display:block}.info-title{border-bottom:1px solid var(--color-border);padding-bottom:12px}.info-stage{margin:12px 0}.example-title{display:block}.remember-box{margin-top:12px}.quick-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.python-libraries-section{padding:40px 0 56px}.python-libraries-section .libraries-heading h2{font-size:30px}.python-libraries-section .libraries-heading p{font-size:12px}.library-selector{grid-template-columns:repeat(5,125px)}.visual-frame{min-height:330px;padding:16px}.pandas-visual{flex-direction:column;gap:12px;display:flex}.file-box{width:140px}.pandas-visual .big-arrow{transform:rotate(90deg)}.dataframe-window{width:100%}.sklearn-visual{flex-direction:column;gap:10px;display:flex}.sklearn-visual .big-arrow{transform:rotate(90deg)}.training-data,.model-box,.prediction-box{width:min(220px,100%)}.matrix{max-width:100%;overflow-x:auto}.matrix span{flex:0 0 32px;width:32px;height:32px}.math-output{flex-wrap:wrap;width:100%}.neural-network{gap:16px}.network-result{flex-wrap:wrap;gap:8px}.quick-reference-grid{grid-template-columns:1fr}}
