.java-lab{padding:24px 0 48px;color:#bcbec4}
.jl-heading{display:flex;align-items:center;gap:12px;margin:0 0 18px}.jl-heading h2{margin:0;font-size:23px;color:#e5e7ed}.jl-heading p{margin:0;color:#8392a5;font-size:12px}.jl-cup{color:#ed8758;font-size:32px}.jl-local{margin-left:auto;font:11px var(--mono);color:#86ba9b}
.jl-ide{--jl-bg:#1e1f22;background:#2b2d30;border:1px solid #393b40;border-radius:13px;overflow:hidden;box-shadow:0 24px 70px #0006;font:13px Inter,Arial,sans-serif}
.jl-ide button,.jl-ide select{font:inherit;color:#bcbec4;background:transparent;border:0;cursor:pointer;border-radius:5px}.jl-ide button:hover{background:#393b40;color:#eee}.jl-ide button:disabled{opacity:.35;cursor:default}
.jl-top{height:48px;display:flex;align-items:center;gap:14px;padding:0 16px;background:linear-gradient(100deg,#394463,#2b2d30 55%)}.jl-project-name{font-weight:600}.jl-project-icon{background:#5966d9;border-radius:5px;padding:4px;color:white;margin-right:7px;font-size:11px}.jl-branch{color:#a8abb5}.jl-spacer{flex:1}.jl-top select{max-width:220px;padding:7px;background:#2b2d30}.jl-top option{background:#2b2d30}.jl-top .jl-run{width:32px;height:32px;display:grid;place-items:center;background:#36543d;border:1px solid #53865b;color:#75c17a}.jl-run svg{width:20px;height:20px;fill:currentColor}.jl-stop{color:#d88080!important;font-size:18px!important}.jl-top button{padding:7px}
.jl-layout{display:grid;grid-template-columns:36px 230px minmax(0,1fr) 34px;min-height:630px;height:calc(100vh - 280px);max-height:950px}
.jl-rail{display:flex;flex-direction:column;align-items:center;gap:12px;padding:12px 3px;background:#2b2d30}.jl-rail button{width:30px;height:30px;font-size:19px}.jl-rail .active{background:#334b7b;color:#bbd3ff}.jl-rail .jl-bottom{margin-top:auto}
.jl-project{background:#1e1f22;border-radius:9px;margin:0 4px 6px 0;overflow:auto;min-width:0}.jl-panel-head{display:flex;align-items:center;gap:6px;padding:13px 10px;font-weight:600}.jl-panel-head button{margin-left:auto;padding:0 7px}.jl-project-tools{display:flex;gap:3px;padding:0 8px 12px}.jl-project-tools button{font-size:11px;padding:5px 7px;border:1px solid #393b40}.jl-tree details{padding-left:12px}.jl-tree summary{padding:6px 0;cursor:pointer;color:#b5b8c1;white-space:nowrap}.jl-tree .jl-folder{color:#75a8eb;margin-right:5px}.jl-tree button{display:flex;width:calc(100% - 8px);gap:8px;align-items:center;text-align:left;white-space:nowrap;padding:6px 8px;overflow:hidden;font-size:12px}.jl-tree button span:last-child{overflow:hidden;text-overflow:ellipsis}.jl-tree button.active{background:#304a78;color:#dce6ff}.jl-class-icon{color:#5797fa;font-size:15px}.jl-project-note{margin:22px 14px;color:#717780;font-size:11px;line-height:1.7}
.jl-center{background:#1e1f22;border-radius:9px;min-width:0;margin-bottom:6px;display:flex;flex-direction:column;overflow:hidden;position:relative}.jl-tabs{display:flex;overflow:auto;min-height:38px;border-bottom:1px solid #303237;flex-shrink:0}.jl-tabs button{white-space:nowrap;padding:9px 14px;border-radius:0;border-right:1px solid #303237;font-size:12px}.jl-tabs button[aria-selected=true]{background:#29364f;color:#c3d5f9;box-shadow:inset 0 -2px #4d83ed}.jl-crumbs{padding:8px 18px;color:#7b808b;font-size:11px;border-bottom:1px solid #292b2f;flex-shrink:0}
.jl-code{display:flex;flex:1;min-height:180px;position:relative;overflow:hidden}.jl-lines{width:52px;flex-shrink:0;padding:16px 12px;text-align:right;overflow:hidden;color:#575c65;font:13px/23px var(--mono);user-select:none;white-space:pre}.jl-edit-wrap{position:relative;flex:1;min-width:0;overflow:hidden}.jl-highlight,.jl-editor{margin:0!important;padding:16px 18px!important;border:0!important;white-space:pre!important;tab-size:4;font:13px/23px var(--mono)!important;letter-spacing:0!important;box-sizing:border-box!important}.jl-highlight{position:absolute;inset:0;pointer-events:none;color:#bcbec4;overflow:hidden}.jl-editor{display:block;position:relative;width:100%;height:100%;resize:none;background:transparent;color:transparent;caret-color:#eee;outline:0}.jl-editor::selection{background:#36588088;color:transparent}.jl-highlight .kw{color:#cf8e6d}.jl-highlight .str{color:#6aab73}.jl-highlight .comment{color:#7a7e85}.jl-highlight .num{color:#2aacb8}.jl-highlight .annotation{color:#b3ae60}
.jl-console{height:180px;min-height:100px;max-height:60vh;resize:vertical;overflow:auto;border-top:1px solid #393b40;background:#1e1f22;flex-shrink:0}.jl-console-head{display:flex;align-items:center;gap:15px;padding:8px 14px;position:sticky;top:0;background:#25272a;font-size:12px;z-index:1}.jl-console-head strong{color:#ddd}.jl-console-head button{margin-left:auto;font-size:11px}.jl-output{padding:12px 18px;color:#bcbec4;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.8 var(--mono)}.jl-output .jl-error{color:#f28b82}.jl-input{border:0!important;background:transparent!important;color:#9cc2ff!important;font:inherit!important;outline:0;padding:0;width:min(400px,80%);caret-color:white}.jl-status{display:flex;align-items:center;gap:16px;padding:8px 12px;color:#858b96;font-size:11px}.jl-status a{color:#8da1bd;text-decoration:none}.jl-status span:last-child{margin-left:auto}
.jl-tour{position:absolute;right:24px;top:12px;width:300px;background:#376ee2;color:white;z-index:3;padding:20px 24px;border-radius:8px;box-shadow:0 10px 40px #0005}.jl-tour:before{content:'';position:absolute;right:32px;top:-10px;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid #376ee2}.jl-tour small{font-size:12px}.jl-tour h3{font-size:19px;line-height:1.5;margin:12px 0 16px}.jl-tour button{border:1px solid #a5bcf4;padding:6px 12px;color:white}.jl-tour button:hover{background:#ffffff20}.jl-help{padding:18px;line-height:1.7;border-top:1px solid #393b40;background:#22252b}.jl-help h3{margin:0}.jl-help p{margin:8px 0}.jl-help a{color:#93b9ff}
.jl-ide.jl-hide-project .jl-layout{grid-template-columns:36px minmax(0,1fr) 34px}.jl-hide-project .jl-project{display:none}.jl-hide-console .jl-console{display:none}.jl-runtime{position:absolute;width:1px;height:1px;border:0;opacity:0;pointer-events:none}
@media(max-width:900px){.java-lab{padding:18px 12px}.jl-layout{grid-template-columns:32px 170px minmax(0,1fr);height:700px}.jl-right-rail{display:none}.jl-branch{display:none}.jl-top{gap:7px;padding:0 10px}.jl-tour{width:240px;right:12px}.jl-ide.jl-hide-project .jl-layout{grid-template-columns:32px minmax(0,1fr)}}
@media(max-width:600px){.jl-layout{grid-template-columns:30px minmax(0,1fr);height:650px}.jl-project{display:none}.jl-ide.jl-show-project .jl-project{display:block;position:absolute;width:220px;height:550px;z-index:5;box-shadow:15px 0 30px #0007}.jl-top .jl-project-name{display:none}.jl-top select{max-width:170px}.jl-tour{width:220px;padding:16px}.jl-tour h3{font-size:16px}.jl-local{display:none}.jl-status{flex-wrap:wrap;gap:8px}.jl-lines{width:34px;padding-left:4px}.jl-editor,.jl-highlight{padding-left:10px!important}.jl-crumbs{padding-left:10px}.jl-help{font-size:12px}}

/* Match the Python Lab's black editing and output surfaces. */
.java-lab .jl-code,.java-lab .jl-console,.java-lab .jl-output{background:#000}
