.java-course{min-height:100vh;background:light-dark(#f5f7f2,#121c18);color:light-dark(#203b32,#e0ebe3);font:13px/1.6 Inter,ui-sans-serif,system-ui,sans-serif}.java-course a{color:light-dark(#285840,#99d2ac);text-decoration:none}.java-course header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px max(24px,calc((100vw - 1200px) / 2));border-bottom:1px solid light-dark(#dce3d8,#344b3f)}.java-course main{max-width:1200px;margin:auto;padding:60px 24px 80px}.java-course h1{font-size:clamp(36px,4vw,54px);line-height:1.12;letter-spacing:-1.8px;font-weight:750;margin:22px 0}.java-course h2{font-size:28px;line-height:1.3;letter-spacing:-.8px;font-weight:700;margin:40px 0 20px}.java-course h3{font-size:20px;font-weight:650;margin:24px 0 14px}.java-course p{color:light-dark(#586d61,#b1c3b7)}.java-course button{font:inherit;color:inherit;border:0;background:transparent;border-radius:5px;cursor:pointer}.java-course button:hover{background:light-dark(#eaf0e4,#243b2d)}.java-course button:disabled{opacity:.5;cursor:default}.java-course :focus-visible{outline:2px solid #285840;outline-offset:3px}body:has(>.java-notebook-layout){height:100dvh;display:flex;flex-direction:column;overflow:hidden}body:has(>.java-notebook-layout)>.site-nav{flex-shrink:0}.java-notebook-layout{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:light-dark(#fff,#1b2a22)}.java-notebook-layout header{height:38px;min-height:38px;padding:0 14px;gap:20px;flex-shrink:0;font-size:12px;background:light-dark(#f5f7f2,#121c18)}.java-course .java-notebook-title{margin:0;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;line-height:1.4;font-weight:550;letter-spacing:-.2px}.java-course-link{flex-shrink:0;font-weight:650;white-space:nowrap}.java-course-link:hover{text-decoration:underline;text-underline-offset:3px}.java-title-divider{color:light-dark(#7a887d,#9aafa0)}.java-toolbar{height:35px;min-height:35px;padding:0 8px;display:flex;align-items:center;gap:5px;border-bottom:1px solid light-dark(#dce3d8,#344b3f);flex-shrink:0;overflow-x:auto;scrollbar-width:thin;background:light-dark(#fff,#1b2a22)}.java-toolbar>*{flex-shrink:0;white-space:nowrap}.java-toolbar button{padding:5px 9px;font-size:11px}.java-toolbar .java-run-button{background:light-dark(#eaf0e4,#243b2d);color:light-dark(#285840,#99d2ac);font-weight:600}.java-toolbar .java-run-button:hover{background:light-dark(#cedcc7,#3e5545)}.java-toolbar-divider{width:1px;height:17px;background:light-dark(#dce3d8,#344b3f);margin:0 5px}.java-kernel-state{display:flex;align-items:center;gap:7px;font-size:10px;color:light-dark(#63766a,#a5b9ac);max-width:350px;overflow:hidden;text-overflow:ellipsis}.java-status-dot{height:8px;width:8px;border:1.5px solid #71965a;border-radius:50%;background:light-dark(#eaf0e4,#243b2d);flex-shrink:0}.java-status-dot.ready{border-color:#67b988;background:light-dark(#edf3e8,#203329)}.java-course main.java-notebook{min-height:0;max-width:none;width:100%;flex:1;overflow:auto;margin:0;padding:16px;scrollbar-gutter:stable;background:light-dark(#fff,#1b2a22)}.java-cell{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);max-width:833px;margin:5px auto;padding:3px 0 3px 2px;border-left:3px solid transparent}.java-cell.selected{border-left-color:#71965a}.java-cell-content{min-width:0;max-width:780px}.java-cell-prompt{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;text-align:right;padding-top:25px;padding-right:8px;white-space:nowrap;color:light-dark(#63766a,#a5b9ac)}.java-cell.markdown .java-cell-prompt{padding-top:0}.java-editor-wrap{border:1px solid light-dark(#dce3d8,#344b3f);border-radius:5px;background:light-dark(#f5f7f2,#121c18);overflow:hidden}.java-cell.selected .java-editor-wrap,.java-editor-wrap:focus-within{border-color:#71965a;box-shadow:0 0 0 1px light-dark(#eaf0e4,#243b2d)}.java-cell-heading{height:20px;padding:4px 10px 0;font-size:8px;letter-spacing:1.4px;color:light-dark(#63766a,#a5b9ac);display:flex;justify-content:space-between}.java-cell-heading button{font-size:10px;color:light-dark(#285840,#99d2ac);margin-top:-3px;padding:2px 7px}.java-cell textarea{display:block;width:100%;resize:none;background:transparent;border:0;outline:none;min-height:36px;font:13px/1.5 ui-monospace,SFMono-Regular,Cascadia Code,Consolas,monospace;color:light-dark(#203b32,#e0ebe3);padding:6px 10px 8px;tab-size:4}.java-cell textarea:focus-visible{outline:none}.java-cell pre{margin:0;padding:8px 10px 2px;font:12px/1.5 ui-monospace,Consolas,monospace;color:light-dark(#315b43,#99d2ac);white-space:pre-wrap;overflow-wrap:anywhere}.java-cell .java-error{color:light-dark(#9b3026,#ffaaa0)}.java-markdown-preview{padding:3px 2px;max-width:780px}.java-markdown-preview h2{font-size:24px;line-height:1.3;font-weight:550;letter-spacing:-1px;color:light-dark(#203b32,#e0ebe3);margin:12px 0 6px}.java-markdown-preview h3{font-size:17px;font-weight:550;letter-spacing:-.4px;margin:16px 0 10px}.java-markdown-preview h4,.java-markdown-preview h5{font-size:15px;font-weight:650;margin:10px 0 6px}.java-markdown-preview p{font-size:14px;color:light-dark(#586d61,#b1c3b7);line-height:1.75;margin:0 0 10px}.java-cell code{font-family:ui-monospace,monospace;background:light-dark(#edf3e8,#203329);padding:1px 4px;border-radius:3px;color:light-dark(#254f3e,#99d2ac)}.java-markdown-preview ol,.java-markdown-preview ul{padding-left:25px;margin:8px 0;color:light-dark(#586d61,#b1c3b7)}.java-markdown-preview ul{list-style:disc}.java-markdown-preview ol{list-style:decimal}.java-markdown-preview li{font-size:14px;line-height:1.75}.java-markdown-preview blockquote{border-left:3px solid #71965a;padding:8px 12px;margin:10px 0;background:light-dark(#eaf0e4,#243b2d);color:light-dark(#315b43,#99d2ac)}.java-cell .lesson-code{border:1px solid light-dark(#cedcc7,#3e5545);border-left:3px solid #71965a;border-radius:5px;background:light-dark(#eaf0e4,#243b2d);padding:12px;margin:10px 0;overflow:auto;font-size:12px;line-height:1.6}.java-cell .lesson-code code{background:none;padding:0;color:inherit}.java-cell .lesson-table{overflow:auto}.java-cell table{width:100%;border-collapse:collapse;font-size:12px;margin:10px 0}.java-cell td,.java-cell th{border:1px solid light-dark(#dce3d8,#344b3f);text-align:left;padding:8px}.java-cell th{background:light-dark(#edf3e8,#203329)}.java-cell .lesson-solution{margin:12px 0;border:1px solid light-dark(#cedcc7,#3e5545);border-radius:5px;background:light-dark(#f5f7f2,#121c18);padding:12px}.java-cell .lesson-solution summary{cursor:pointer;color:light-dark(#315b43,#99d2ac);font-size:13px;font-weight:650}.java-cell .lesson-solution[open] summary{margin-bottom:12px}.java-cell .quiz-card{max-width:780px;border:1px solid light-dark(#cedcc7,#3e5545);background:light-dark(#f5f7f2,#121c18);border-radius:8px;padding:18px;margin:8px 0}.java-cell .quiz-eyebrow{font-size:10px;font-weight:700;letter-spacing:.7px;color:light-dark(#63766a,#a5b9ac);margin-bottom:10px}.java-cell fieldset{min-width:0;border:0;padding:0;margin:0}.java-cell legend{display:block;width:100%;font-size:15px;line-height:1.6;margin-bottom:12px;color:light-dark(#203b32,#e0ebe3)}.java-cell legend p{margin:0 0 6px;color:inherit}.java-cell .quiz-option{display:flex;align-items:baseline;gap:10px;padding:9px;border:1px solid light-dark(#dce3d8,#344b3f);background:light-dark(#fff,#1b2a22);border-radius:5px;margin:6px 0;cursor:pointer;font-size:14px}.java-cell input{accent-color:#285840}.java-cell .quiz-option input{flex-shrink:0}.java-cell .quiz-text-label{display:block;font-size:12px;color:light-dark(#586d61,#b1c3b7)}.java-cell .quiz-text-label input{display:block;width:100%;max-width:540px;background:light-dark(#fff,#1b2a22);border:1px solid light-dark(#cedcc7,#3e5545);border-radius:5px;padding:10px;font:inherit;font-size:15px;margin-top:5px}.java-cell .quiz-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:14px}.java-cell .quiz-actions>button{background:#285840;color:#fff;padding:8px 14px;border-radius:5px;font-size:13px}.java-cell .quiz-actions>button:hover{background:#1e4531}.java-cell .quiz-actions details{font-size:13px;max-width:540px}.java-cell summary{cursor:pointer}.java-cell .quiz-actions details p{margin-top:8px}.java-cell .quiz-feedback{margin-top:14px;font-size:14px;line-height:1.6;color:light-dark(#586d61,#b1c3b7)}.java-cell .quiz-feedback.correct{color:light-dark(#285840,#99d2ac)}.java-complete{margin:20px auto;width:calc(100% - 51px);padding:18px;max-width:780px;border:1px solid light-dark(#cedcc7,#3e5545);border-radius:8px;background:light-dark(#eaf0e4,#243b2d)}.java-complete h2{font-size:24px;margin:0 0 10px}.java-notebook-footer{height:22px;flex-shrink:0;background:light-dark(#f5f7f2,#121c18);border-top:1px solid light-dark(#dce3d8,#344b3f);padding:0 16px;display:flex;align-items:center;gap:16px;font-size:10px;color:light-dark(#586d61,#b1c3b7)}.java-notebook-footer>span:last-child{margin-left:auto}.java-library-status{font-size:11px;background:light-dark(#eaf0e4,#243b2d);color:light-dark(#315b43,#99d2ac);padding:5px 10px;text-align:right}.java-modal-backdrop{position:fixed;inset:0;background:#203b3245;z-index:100;display:grid;place-items:center;padding:20px}.java-modal{max-width:480px;background:light-dark(#fff,#1b2a22);color:light-dark(#203b32,#e0ebe3);border:1px solid light-dark(#dce3d8,#344b3f);padding:28px;border-radius:12px}.java-modal h2{margin:0}.java-modal label{display:block;margin:20px 0}.java-modal button{padding:8px 14px;margin-right:12px;background:light-dark(#eaf0e4,#243b2d);color:light-dark(#285840,#99d2ac)}@media (max-width:850px){.java-course main.java-notebook{padding:8px}}@media (max-width:600px){.java-course .java-notebook-title{font-size:12px}.java-toolbar{height:auto;flex-wrap:wrap;padding-block:4px;overflow:visible}.java-kernel-state{flex-basis:100%;max-width:none;padding:0 9px}.java-notebook-layout header{gap:10px}.java-notebook-footer>span:nth-child(2){display:none}.java-course header{padding:14px 20px}.java-course main{padding:36px 20px}.java-course.java-notebook-layout header{padding:0 10px}}.java-output{padding:8px 10px 2px}.java-output-label{font-size:8px;letter-spacing:1.4px;color:light-dark(#63766a,#a5b9ac);margin-bottom:3px}.java-output pre{padding:0}.java-cell-timing{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:8px 10px 2px;font-size:12px;color:light-dark(#203b32,#e0ebe3);font-variant-numeric:tabular-nums}.java-cell-timing>span{display:inline-flex;align-items:baseline;gap:5px;font-size:11px;color:light-dark(#586d61,#b1c3b7)}.java-cell-timing>span+span{border-left:1px solid light-dark(#cedcc7,#3e5545);padding-left:14px}.java-cell-timing strong{font-size:12px;font-weight:650;color:light-dark(#203b32,#e0ebe3);white-space:nowrap}.java-cell-timing small{font-size:11px;font-weight:400}.java-cell-timing>span:last-child strong{color:light-dark(#285840,#99d2ac)}.java-toolbar .java-shortcuts-button{margin-left:auto;color:light-dark(#63766a,#a5b9ac)}.java-shortcuts-dialog{position:fixed;inset:0;margin:auto;width:min(540px,calc(100vw - 40px));max-height:calc(100dvh - 40px);overflow:auto;padding:28px;border:1px solid light-dark(#dce3d8,#344b3f);border-radius:12px;background:light-dark(#fff,#1b2a22);color:light-dark(#203b32,#e0ebe3);box-shadow:0 16px 40px #203b3210}.java-shortcuts-dialog::backdrop{background:#203b3245}.java-shortcuts-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.java-shortcuts-heading h2{font-size:24px;margin:0}.java-shortcuts-heading button{padding:0 8px;font-size:24px}.java-shortcuts-list{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px 20px;margin:24px 0 0;font-size:13px}.java-shortcuts-list dt{color:light-dark(#285840,#99d2ac)}.java-shortcuts-list dd{margin:0;color:light-dark(#586d61,#b1c3b7)}.java-shortcuts-list kbd{display:inline-block;padding:1px 5px;border:1px solid light-dark(#cedcc7,#3e5545);border-radius:4px;background:light-dark(#f5f7f2,#121c18);font:12px ui-monospace,monospace}@media (max-width:480px){.java-shortcuts-list{grid-template-columns:1fr;gap:8px}.java-shortcuts-list dd{margin-bottom:10px}}.java-code-input{position:relative}.java-cell .java-diagnostic-overlay{position:absolute;inset:0;pointer-events:none;overflow:hidden;white-space:pre;padding:6px 10px 8px;font:13px/1.5 ui-monospace,SFMono-Regular,Cascadia Code,Consolas,monospace;tab-size:4;color:transparent}.java-diagnostic-mark{text-decoration:underline wavy #b42318;text-decoration-thickness:1.5px;text-underline-offset:3px}.java-course .java-lesson-navigation{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:8px 20px;font-size:13px}