:root{color-scheme:dark;font-family:Inter,Noto Sans JP,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:#050505;color:#f2f2f2}body,html{margin:0;padding:0;width:100%;height:100%;background:#050505;color:#f2f2f2}input,textarea,select{font-size:16px!important}h1,h2,p,li,.subtitle,.status{color:#f2f2f2;-webkit-text-fill-color:#f2f2f2}#app{height:100dvh;width:100%;display:grid;grid-template-rows:auto 1fr;padding:0;margin:0;box-sizing:border-box;overflow:hidden}header#main-header{grid-row:1;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;background:#050505;border-bottom:1px solid #1c1c1c;z-index:10;height:64px;box-sizing:border-box}.header-left{display:flex;align-items:center;gap:16px;flex-shrink:0}header#main-header .brand-title{margin:0;font-size:1.35rem;font-weight:600;letter-spacing:.01em;white-space:nowrap}header#main-header .brand-version{font-size:.68em;font-weight:500;opacity:.72}#menu-container{display:flex;align-items:center;justify-content:center;width:32px;height:32px}#search-container-wrapper{flex:1;max-width:400px;display:flex;justify-content:flex-end;position:relative}.status{font-size:.8rem;opacity:.8;white-space:nowrap;flex-shrink:0}@media (max-width: 768px){header#main-header{padding:0 16px;height:56px;gap:8px}.header-left{gap:8px}header .brand-title{font-size:1.1rem;white-space:nowrap}.status{font-size:.7rem;display:none}#search-container-wrapper{flex:0 0 auto}.search-container .search-icon{display:block!important}.search-container .search-input{width:0!important;padding:0!important;opacity:0;pointer-events:none;position:absolute;right:40px;top:50%;transform:translateY(-50%)}.search-container.active .search-input{width:200px!important;padding:8px 12px!important;opacity:1;pointer-events:auto;background:#050505!important;border:1px solid #333!important;z-index:20}}.subtitle{opacity:.8;font-size:.95rem}.viewer{grid-row:2;width:100%;height:100%;min-height:0;border:none;border-top:1px solid #1c1c1c;border-radius:0;overflow:hidden;position:relative}@media (max-width: 768px){header .brand-title{font-size:1.2rem;margin:0}}canvas{width:100%;height:100%;display:block;background:radial-gradient(circle at top,#1c2533,#05060a)}.world-settings-root{position:absolute;top:0;right:0;bottom:0;left:0;z-index:140;pointer-events:none;--world-settings-top: 16px}body.is-native .world-settings-root{--world-settings-top: 72px}.world-settings-controls{position:absolute;top:var(--world-settings-top);right:-10px;display:flex;align-items:center;gap:10px;pointer-events:auto}.world-settings-button{position:relative;width:58px;height:58px;border:1px solid rgba(255,255,255,.2);border-right:none;border-radius:16px 0 0 16px;background-color:#0c0e14eb;background-repeat:no-repeat;background-position:center;background-size:60%;box-shadow:0 10px 24px #00000073;cursor:pointer;pointer-events:auto;transition:transform .18s ease,background-color .18s ease}.sound-toggle-button{width:44px;height:44px;border:none;background-color:transparent;background-repeat:no-repeat;background-position:center;background-size:70%;cursor:pointer;padding:0}.world-settings-button:hover,.world-settings-button.is-open{transform:translate(-6px);background-color:#181c28fa}.world-settings-panel{position:absolute;top:calc(var(--world-settings-top) + 68px);right:16px;width:min(260px,calc(100vw - 32px));padding:14px;border-radius:14px;border:1px solid rgba(255,255,255,.18);background:#ffffff14;color:#f4f6fb;box-shadow:0 18px 44px #00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;transform:translate(calc(100% + 24px));opacity:0;transition:transform .22s ease,opacity .22s ease}.world-settings-panel.is-open{transform:translate(0);opacity:1}.world-settings-title{font-size:14px;font-weight:700;margin-bottom:2px}.world-settings-subtitle{font-size:12px;opacity:.8;margin-bottom:10px}.world-settings-list{display:flex;flex-direction:column;gap:8px}.world-settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:10px;background:#080a1059;border:1px solid rgba(255,255,255,.08);cursor:pointer}.world-settings-row--child{margin-left:14px;padding-left:12px;border-left:2px solid rgba(122,162,255,.45);background:#0c101a6b}.world-settings-row-text{display:flex;flex-direction:column;gap:2px}.world-settings-row-label{font-size:13px;font-weight:600}.world-settings-row-desc{font-size:11px;opacity:.78}.world-settings-toggle{width:18px;height:18px;accent-color:#7aa2ff;cursor:pointer;flex-shrink:0}.world-settings-note{margin-top:10px;font-size:12px;color:#ffd9a0;background:#78460033;border:1px solid rgba(255,190,120,.3);padding:8px 10px;border-radius:10px}@media (max-width: 768px){.world-settings-root{--world-settings-top: 12px}body.is-native .world-settings-root{--world-settings-top: 68px}}.tooltip{color:#fff;border:1px solid rgba(255,255,255,.2);box-shadow:0 6px 20px #00000073;white-space:nowrap}.instructions ul{margin-left:1.2rem}.legal-screen{display:none;height:100%;overflow-y:auto;box-sizing:border-box;padding:24px 20px 60px;background:radial-gradient(circle at top,#121721,#05060a 55%,#050505)}.legal-container{max-width:860px;margin:0 auto;background:#0a0c12eb;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:24px 26px 32px;box-shadow:0 16px 40px #0006}.legal-title{margin:0 0 6px;font-size:1.6rem;letter-spacing:.02em}.legal-updated{font-size:.85rem;color:#9aa0a6;margin-bottom:20px}.legal-paragraph{margin:0 0 16px;line-height:1.7;color:#d6d7db}.legal-section{margin-top:22px}.legal-section h3{margin:0 0 10px;font-size:1.05rem;color:#f2f2f2}.legal-section p{margin:0 0 10px;line-height:1.7;color:#d2d4d8}.legal-section ul{margin:10px 0 0 20px;padding:0;line-height:1.7;color:#d2d4d8}.legal-section li{margin-bottom:6px}.legal-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.legal-link{color:#9ac7ff;text-decoration:none;border-bottom:1px solid rgba(154,199,255,.4);padding-bottom:2px}.legal-link:hover{color:#c2ddff;border-bottom-color:#c2ddffcc}.legal-note{font-size:.85rem;color:#9aa0a6;margin-top:8px}@media (max-width: 768px){.legal-screen{padding:18px 16px 48px}.legal-container{padding:20px 18px 28px}.legal-title{font-size:1.4rem}}body.is-native #search-container-wrapper,body.is-native .search-container,body.is-native #main-header,body.is-native .world-search-wrapper,body.is-native .search-wrapper,body.is-native .world-search-icon{display:none!important}
