 :root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#e7e7e7;background:#000;line-height:1.5;color-scheme:dark}*{box-sizing:border-box}body{margin:0}main{max-width:1280px;margin:auto;padding:24px 20px}.public{max-width:640px}header{height:64px;display:flex;align-items:center;border-bottom:1px solid #282828;margin-bottom:24px}.brand{font-size:22px;font-weight:600}.brand span{color:#51ff0d}h1{font-size:26px;font-weight:500}h2{font-size:20px;font-weight:500}.card{border:0;border-top:1px solid #282828;border-radius:0;background:#000;box-shadow:none;padding:24px 0;margin:0}.public .card:first-of-type{border:0;padding-top:0}p,.notes{color:#aaa;font-size:14px}.download{display:flex;justify-content:space-between;align-items:center;min-height:48px;border:1px solid #51ff0d;border-radius:4px;padding:12px 14px;color:#51ff0d;text-decoration:none;font-size:14px}.download:hover{background:#51ff0d;color:#000}.release-time{font-size:12px;line-height:1.8}.notes{padding-left:20px}.notes li{margin:8px 0}.checksum{font-size:11px;color:#888;margin-top:24px}.checksum code{display:block;overflow-wrap:anywhere;margin-top:8px}.browser iframe{display:block;width:100%;height:100vh;height:100dvh;border:0;border-radius:0;background:#000}button,input,select{font:inherit;background:#000;color:#e7e7e7;border:1px solid #282828;border-radius:4px}button,a,summary{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #51ff0d;outline-offset:3px}.quiet-button{color:#51ff0d;background:#000;border-color:#282828;border-radius:4px}#download-search,#user-search,#activity-search{background:#000;color:#e7e7e7;border-color:#666;border-radius:4px}.table-scroll,td,th{border-color:#282828}th{background:#111}td small,#users-status,summary{color:#aaa}@media(max-width:600px){main{padding:16px}.users-card{padding:20px 0}}

.download-meta{font-size:12px;white-space:nowrap;margin-left:12px}.download-meta>svg{vertical-align:middle;margin-left:10px}

/* The dedicated web app shares the existing learner storage and renderer. */
.download-home .download+.download{margin-top:16px}
.web-app{overflow:hidden}
.web-simulator{height:100vh;height:100dvh;max-width:none;padding:0}
.web-simulator .browser{display:flex;flex-direction:column;width:100%;height:100%;min-width:0;min-height:0}
.browser-navigation{display:none;position:relative;z-index:1;order:2;align-items:center;justify-content:center;flex:0 0 calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);border-top:1px solid #282828;background:#080808}
.web-back-enabled.browser-playing .browser-navigation{display:flex}
.browser-back{display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:0;border-radius:4px;color:#e7e7e7;background:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}
.browser-back:hover{background:#181818}
.browser-back:active{background:#282828;box-shadow:inset 0 0 0 1px #777}
.browser-screen{position:relative;flex:1;min-width:0;min-height:0}
.browser iframe{width:100%;height:100%;max-width:none;margin:0;border:0;border-radius:0;background:#000}
@media(min-width:960px) and (min-height:600px){
 .web-simulator .browser{flex-direction:row}
 .web-back-enabled .browser-navigation{display:flex;order:0;flex:0 0 56px;height:100%;padding:0;border:0;background:transparent;visibility:hidden}
 .web-back-enabled.browser-playing .browser-navigation{visibility:visible}
 .browser-back{transform:translateX(var(--browser-back-offset,0px))}
 .browser iframe{max-width:var(--browser-width);margin:0 auto}
 .browser iframe.is-landscape{position:absolute;left:50%;top:50%;width:915px;height:412px;max-width:none;transform:translate(-50%,-50%) scale(var(--browser-scale))}
}
